Jspice3
outdata.h
Go to the documentation of this file.
1 /***************************************************************************
2 JSPICE3 adaptation of Spice3e2 - Copyright (c) Stephen R. Whiteley 1992
3 Copyright 1990 Regents of the University of California. All rights reserved.
4 Authors: 1992 Stephen R. Whiteley
5 ****************************************************************************/
6 
7 /*
8  * Data structure passed to the OUT init routines.
9  */
10 
11 struct sOUTdata {
12 
17  int refType;
18  int numNames;
20  int dataType;
22  int numPts;
23  int count;
24  double initValue;
25  double finalValue;
26  double step;
27 };
28 
29 
30 
31 /* This structure allows external control over the outputting of data
32  * for use with operating range analysis, threshold analysis, and
33  * optimization routines.
34  */
35 
36 struct sOUTcontrol {
37  int out_check;
40  double *out_points;
41  int out_index;
42  int out_max;
43  int out_fail;
44  char *out_rundesc;
45 #ifdef __STDC__
46  int (*out_evaluate)(void);
47  void (*out_end)(void);
48  void (*out_destroy)(void);
49 #else
50  int (*out_evaluate)();
51  void (*out_end)();
52  void (*out_destroy)();
53 #endif
54 };
55 
56 
57 /*
58  * int out_check Set when under control of analysis driver by
59  * the driver, evaluate pass/fail for margin analysis.
60  * Keep only the latest output.
61  *
62  * int out_usecurplot Set when under control of analysis driver by
63  * the driver, use current plot rather than starting
64  * a new one during init.
65  *
66  * int out_keepplot Set when under control of analysis driver by
67  * the driver, keep the old plot and rundesc for
68  * reuse.
69  *
70  * double *out_points Pointer to an array of running variable (e.g,
71  * time) points at which the output conditionals
72  * are to be evaluated, loaded by driver. Only
73  * used if out_check is true.
74  *
75  * int out_index The current index into the array, incremented
76  * by simulator when the running variable exceeds
77  * a check point. Only used if out_check is true.
78  *
79  * int out_max The size of the check point array, set by driver.
80  * Only used if out_check is true;
81  *
82  * int out_fail Set if the conditionals failed, in the evaluate
83  * function or globally to stop analysis. Only used if
84  * out_check is true.
85  *
86  * out_evaluate(); Evaluation function, returns true on failure,
87  * supplied by driver. Only used if out_check is true.
88  *
89  * out_end(); Called upon completion of each margin anlysis point,
90  * supplied by driver. Only used if out_check is true.
91  *
92  * out_destroy(); Called when analysis is done, performs cleanup,
93  * supplied by simulator.
94  */
int numPts
Definition: outdata.h:22
double initValue
Definition: outdata.h:24
int out_max
Definition: outdata.h:42
int out_keepplot
Definition: outdata.h:39
int out_index
Definition: outdata.h:41
int out_usecurplot
Definition: outdata.h:38
int refType
Definition: outdata.h:17
IFuid * dataNames
Definition: outdata.h:19
IFuid analName
Definition: outdata.h:15
int numNames
Definition: outdata.h:18
double step
Definition: outdata.h:26
char * out_rundesc
Definition: outdata.h:44
double * out_points
Definition: outdata.h:40
GENERIC * IFuid
Definition: ifsim.h:72
GENERIC * circuitPtr
Definition: outdata.h:13
double finalValue
Definition: outdata.h:25
int count
Definition: outdata.h:23
int out_fail
Definition: outdata.h:43
GENERIC * analysisPtr
Definition: outdata.h:14
static void out_destroy()
Definition: outitf.c:130
int out_check
Definition: outdata.h:37
GENERIC ** plotPtr
Definition: outdata.h:21
IFuid refName
Definition: outdata.h:16
char GENERIC
Definition: ifsim.h:27
int dataType
Definition: outdata.h:20