/*============================================================================ FILE IPCtiein.h MEMBER OF process XSPICE Copyright 1991 Georgia Tech Research Corporation Atlanta, Georgia 30332 All Rights Reserved PROJECT A-8503 AUTHORS 9/12/91 Bill Kuhn MODIFICATIONS SUMMARY Provides a protocol independent interface between the simulator and the IPC method used to interface to CAE packages. INTERFACES REFERENCED FILES None. NON-STANDARD FEATURES None. ============================================================================*/ #ifndef IPC_TIEIN_DEFINED #define IPC_TIEIN_DEFINED #include "ipc.h" #include "ipcproto.h" #define IPC_STDOUT_FILE_NAME "/usr/tmp/atesse_xspice.out" #define IPC_STDERR_FILE_NAME "/usr/tmp/atesse_xspice.err" /* Ipc_Vtrans_t is used by functions that return results to translate voltage source names to the names of the devices they monitor. This table is built from #VTRANS cards in the incoming deck and is provided for ATESSE 1.0 compatibility. */ typedef struct { int size; /* Size of arrays */ char **vsrc_name; /* Array of voltage source name prefixes */ char **device_name; /* Array of device names the vsources map to */ } Ipc_Vtrans_t; /* Ipc_Tiein_t is used by the SPICE mods that take care of interprocess communications activities. */ typedef struct { Ipc_Boolean_t enabled; /* True if we are using IPC */ Ipc_Mode_t mode; /* INTERACTIVE or BATCH mode */ Ipc_Anal_t anal_type; /* DCOP, AC, ... mode */ Ipc_Boolean_t syntax_error; /* True if error occurred during parsing */ Ipc_Boolean_t run_error; /* True if error occurred during simulation */ Ipc_Boolean_t errchk_sent; /* True if #ERRCHK has been sent */ Ipc_Boolean_t returni; /* True if simulator should return currents */ double mintime; /* Minimum time between timepoints returned */ double last_time; /* Last timepoint returned */ double cpu_time; /* CPU time used during simulation */ Ipc_Boolean_t *send; /* Used by OUTinterface to determine what to send */ char *log_file; /* Path to write log file */ Ipc_Vtrans_t vtrans; /* Used by OUTinterface to translate v sources */ Ipc_Boolean_t stop_analysis; /* True if analysis should be terminated */ } Ipc_Tiein_t; extern Ipc_Tiein_t g_ipc; #endif /* IPC_TIEIN_DEFINED */