Jspice3
Main Page
Data Structures
Files
File List
Globals
inpdefs.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: 1987 Thomas L. Quarles
5
1992 Stephen R. Whiteley
6
****************************************************************************/
7
8
#ifndef INP
9
#define INP
10
11
/* structure declarations used by either/both input package */
12
13
#include "
ifsim.h
"
14
#include "
gendefs.h
"
15
#include "
inpptree.h
"
16
17
extern
IFsimulator
*
ft_sim
;
18
19
struct
INPtab
{
20
char
*
t_ent
;
21
struct
INPtab
*
t_next
;
22
};
23
24
struct
INPnTab
{
25
char
*
t_ent
;
26
GENERIC
*
t_node
;
27
struct
INPnTab
*
t_next
;
28
};
29
30
typedef
struct
sINPtables
{
31
struct
INPtab
**
INPsymtab
;
32
struct
INPnTab
**
INPtermsymtab
;
33
int
INPsize
;
34
int
INPtermsize
;
35
GENERIC
*
defAmod
;
36
GENERIC
*
defBmod
;
37
GENERIC
*
defCmod
;
38
GENERIC
*
defDmod
;
39
GENERIC
*
defEmod
;
40
GENERIC
*
defFmod
;
41
GENERIC
*
defGmod
;
42
GENERIC
*
defHmod
;
43
GENERIC
*
defImod
;
44
GENERIC
*
defJmod
;
45
GENERIC
*
defKmod
;
46
GENERIC
*
defLmod
;
47
GENERIC
*
defMmod
;
48
GENERIC
*
defNmod
;
49
GENERIC
*
defOmod
;
50
GENERIC
*
defPmod
;
51
GENERIC
*
defQmod
;
52
GENERIC
*
defRmod
;
53
GENERIC
*
defSmod
;
54
GENERIC
*
defTmod
;
55
GENERIC
*
defUmod
;
56
GENERIC
*
defVmod
;
57
GENERIC
*
defWmod
;
58
GENERIC
*
defYmod
;
59
GENERIC
*
defZmod
;
60
}
INPtables
;
61
62
typedef
struct
card
{
63
int
linenum
;
64
char
*
line
;
65
char
*
error
;
66
struct
card
*
nextcard
;
67
struct
card
*
actualLine
;
68
}
card
;
69
70
/* structure used to save models in after they are read during pass 1 */
71
typedef
struct
sINPmodel
{
72
IFuid
INPmodName
;
/* uid of model */
73
int
INPmodType
;
/* type index of device type */
74
struct
sINPmodel
*
INPnextModel
;
/* link to next model */
75
int
INPmodUsed
;
/* flag to indicate it has already been used */
76
card
*
INPmodLine
;
/* pointer to line describing model */
77
GENERIC
*
INPmodfast
;
/* high speed pointer to model for access */
78
}
INPmodel
;
79
80
/* listing types - used for debug listings */
81
#define LOGICAL 1
82
#define PHYSICAL 2
83
84
85
/* from analysis routines */
86
#ifdef __STDC__
87
extern
int
ParseAC
(
GENERIC
*,
char
**,
card
*,
int
,
GENERIC
*,
INPtables
*);
88
extern
int
ParseDC
(
GENERIC
*,
char
**,
card
*,
int
,
GENERIC
*,
INPtables
*,
int
);
89
extern
int
ParseTRAN
(
GENERIC
*,
char
**,
card
*,
int
,
GENERIC
*,
INPtables
*);
90
#else
91
extern
int
ParseAC
();
92
extern
int
ParseDC
();
93
extern
int
ParseTRAN
();
94
#endif
95
96
97
/* inptabpa.c */
98
#ifdef __STDC__
99
extern
char
*
INPtablParse
(
char
**,
GENERIC
*);
100
extern
char
*
INPtablCheck
(
char
*,
GENERIC
*);
101
extern
void
INPtablFix
(
GENERIC
*);
102
extern
int
INPtablFind
(
char
*,
GENERIC
*,
GENERIC
**);
103
extern
double
INPtablEval
(
GENERIC
*,
double
);
104
extern
void
INPtablFree
(
GENERIC
*);
105
#else
106
extern
char
*
INPtablParse
();
107
extern
char
*
INPtablCheck
();
108
extern
void
INPtablFix
();
109
extern
int
INPtablFind
();
110
extern
double
INPtablEval
();
111
extern
void
INPtablFree
();
112
#endif
113
114
115
#ifdef __STDC__
116
extern
int
IFnewUid
(
GENERIC
*,
IFuid
*,
IFuid
,
char
*,
int
,
GENERIC
**);
117
extern
int
INP2dot
(
GENERIC
*,
INPtables
*,
card
*,
GENERIC
*,
GENERIC
*);
118
extern
int
INPaName
(
char
*,
IFvalue
*,
GENERIC
*,
int
*,
char
*,
GENERIC
**,
119
IFsimulator
*,
int
*,
IFvalue
*);
120
extern
int
INPapName
(
GENERIC
*,
int
,
GENERIC
*,
char
*,
IFvalue
*);
121
extern
char
*
INPdevErr
(
char
*);
122
extern
char
*
INPdevParse
(
char
**,
GENERIC
*,
int
,
GENERIC
*,
double
*,
int
*,
123
INPtables
*);
124
extern
char
*
INPdomodel
(
GENERIC
*,
card
*,
INPtables
*);
125
extern
char
*
INPerrCat
(
char
*,
char
*);
126
extern
char
*
INPerror
(
int
);
127
extern
double
INPevaluate
(
char
**,
int
*,
int
);
128
extern
char
*
INPfindLev
(
char
*,
int
*);
129
extern
char
*
INPgetMod
(
GENERIC
*,
char
*,
INPmodel
**,
INPtables
*);
130
extern
int
INPgetTok
(
char
**,
char
**,
int
);
131
extern
void
INPgetTree
(
char
**,
INPparseTree
**,
GENERIC
*,
INPtables
*);
132
extern
IFvalue
*
INPgetValue
(
GENERIC
*,
char
**,
int
,
INPtables
*);
133
extern
int
INPgndInsert
(
GENERIC
*,
char
**,
INPtables
*,
GENERIC
**);
134
extern
int
INPinsert
(
char
**,
INPtables
*);
135
extern
void
INPkillMods
(
void
);
136
extern
int
INPlookMod
(
char
*);
137
extern
int
INPmakeMod
(
char
*,
int
,
card
*);
138
extern
int
INPmkTerm
(
GENERIC
*,
char
**,
INPtables
*,
GENERIC
**);
139
extern
int
INPnumRefs
(
int
,
int
*,
int
*,
int
*,
int
*);
140
extern
int
INPpName
(
char
*,
IFvalue
*,
GENERIC
*,
int
,
GENERIC
*);
141
extern
void
INPpas1
(
GENERIC
*,
card
*,
INPtables
*);
142
extern
void
INPpas2
(
GENERIC
*,
card
*,
INPtables
*,
GENERIC
*);
143
extern
void
INPptPrint
(
char
*,
IFparseTree
*);
144
extern
void
INPtabEnd
(
INPtables
*);
145
extern
INPtables
*
INPtabInit
(
int
);
146
extern
int
INPtermInsert
(
GENERIC
*,
char
**,
INPtables
*,
GENERIC
**);
147
148
#else
/* stdc */
149
150
extern
int
IFnewUid
();
151
extern
int
INP2dot
();
152
extern
int
INPaName
();
153
extern
int
INPapName
();
154
extern
char
*
INPdevErr
();
155
extern
char
*
INPdevParse
();
156
extern
char
*
INPdomodel
();
157
extern
char
*
INPerrCat
();
158
extern
char
*
INPerror
();
159
extern
double
INPevaluate
();
160
extern
char
*
INPfindLev
();
161
extern
char
*
INPgetMod
();
162
extern
int
INPgetTok
();
163
extern
void
INPgetTree
();
164
extern
IFvalue
*
INPgetValue
();
165
extern
int
INPgndInsert
();
166
extern
int
INPinsert
();
167
extern
void
INPkillMods
();
168
extern
int
INPlookMod
();
169
extern
int
INPmakeMod
();
170
extern
int
INPmkTerm
();
171
extern
int
INPnumRefs
();
172
extern
int
INPpName
();
173
extern
void
INPpas1
() ;
174
extern
void
INPpas2
() ;
175
extern
void
INPptPrint
();
176
extern
void
INPtabEnd
();
177
extern
INPtables
*
INPtabInit
();
178
extern
int
INPtermInsert
();
179
180
#endif
/* stdc */
181
182
#endif
/*INP*/
sINPtables::defZmod
GENERIC * defZmod
Definition:
inpdefs.h:59
sINPtables::defMmod
GENERIC * defMmod
Definition:
inpdefs.h:47
INPnTab::t_ent
char * t_ent
Definition:
inpdefs.h:25
sINPtables::defSmod
GENERIC * defSmod
Definition:
inpdefs.h:53
INPerror
char * INPerror()
INPpName
int INPpName()
ParseTRAN
int ParseTRAN()
INPparseTree
Definition:
inpptree.h:30
card::line
char * line
Definition:
inpdefs.h:64
sINPtables::defNmod
GENERIC * defNmod
Definition:
inpdefs.h:48
INPtermInsert
int INPtermInsert()
card::actualLine
struct card * actualLine
Definition:
inpdefs.h:67
INPgetTree
void INPgetTree()
INPgetValue
IFvalue * INPgetValue()
IFnewUid
int IFnewUid()
INPtab::t_ent
char * t_ent
Definition:
inpdefs.h:20
sINPtables::INPtermsize
int INPtermsize
Definition:
inpdefs.h:34
sINPtables::defPmod
GENERIC * defPmod
Definition:
inpdefs.h:50
INPmakeMod
int INPmakeMod()
INPgndInsert
int INPgndInsert()
INPtablCheck
char * INPtablCheck()
INPdevParse
char * INPdevParse()
card
Definition:
inpdefs.h:62
INPevaluate
double INPevaluate()
INPtabInit
INPtables * INPtabInit()
INPpas2
void INPpas2()
INPtablFix
void INPtablFix()
INPtab
Definition:
inpdefs.h:19
sINPtables::defJmod
GENERIC * defJmod
Definition:
inpdefs.h:44
sIFsimulator
Definition:
ifsim.h:356
sINPmodel::INPmodUsed
int INPmodUsed
Definition:
inpdefs.h:75
INPmkTerm
int INPmkTerm()
INPinsert
int INPinsert()
sINPmodel::INPmodType
int INPmodType
Definition:
inpdefs.h:73
sINPtables::defCmod
GENERIC * defCmod
Definition:
inpdefs.h:37
sIFparseTree
Definition:
ifsim.h:158
INPtablFree
void INPtablFree()
sINPtables::defVmod
GENERIC * defVmod
Definition:
inpdefs.h:56
inpptree.h
gendefs.h
IFuid
GENERIC * IFuid
Definition:
ifsim.h:72
card::nextcard
struct card * nextcard
Definition:
inpdefs.h:66
INPtabEnd
void INPtabEnd()
INPtablEval
double INPtablEval()
sINPtables::defEmod
GENERIC * defEmod
Definition:
inpdefs.h:39
INP2dot
int INP2dot()
INPkillMods
void INPkillMods()
Definition:
inpkmods.c:16
INPptPrint
void INPptPrint()
sINPtables::defOmod
GENERIC * defOmod
Definition:
inpdefs.h:49
sINPtables::INPtermsymtab
struct INPnTab ** INPtermsymtab
Definition:
inpdefs.h:32
INPlookMod
int INPlookMod()
INPfindLev
char * INPfindLev()
ParseDC
int ParseDC()
card::error
char * error
Definition:
inpdefs.h:65
sINPtables::defYmod
GENERIC * defYmod
Definition:
inpdefs.h:58
INPtablFind
int INPtablFind()
sINPmodel::INPmodfast
GENERIC * INPmodfast
Definition:
inpdefs.h:77
sINPtables::defQmod
GENERIC * defQmod
Definition:
inpdefs.h:51
sINPtables::defHmod
GENERIC * defHmod
Definition:
inpdefs.h:42
INPtables
struct sINPtables INPtables
INPapName
int INPapName()
sINPtables::defBmod
GENERIC * defBmod
Definition:
inpdefs.h:36
card::linenum
int linenum
Definition:
inpdefs.h:63
sINPmodel::INPmodName
IFuid INPmodName
Definition:
inpdefs.h:72
sINPtables::defWmod
GENERIC * defWmod
Definition:
inpdefs.h:57
sINPtables::defKmod
GENERIC * defKmod
Definition:
inpdefs.h:45
sINPmodel
Definition:
inpdefs.h:71
sINPtables::defAmod
GENERIC * defAmod
Definition:
inpdefs.h:35
INPnTab
Definition:
inpdefs.h:24
sINPtables::defUmod
GENERIC * defUmod
Definition:
inpdefs.h:55
uIFvalue
Definition:
ifsim.h:231
sINPtables::INPsize
int INPsize
Definition:
inpdefs.h:33
INPtablParse
char * INPtablParse()
INPnumRefs
int INPnumRefs()
sINPtables::defTmod
GENERIC * defTmod
Definition:
inpdefs.h:54
INPtab::t_next
struct INPtab * t_next
Definition:
inpdefs.h:21
INPaName
int INPaName()
sINPmodel::INPnextModel
struct sINPmodel * INPnextModel
Definition:
inpdefs.h:74
INPmodel
struct sINPmodel INPmodel
sINPtables::defImod
GENERIC * defImod
Definition:
inpdefs.h:43
sINPtables::defDmod
GENERIC * defDmod
Definition:
inpdefs.h:38
INPdomodel
char * INPdomodel()
ft_sim
IFsimulator * ft_sim
Definition:
main.c:111
ParseAC
int ParseAC()
sINPtables::defRmod
GENERIC * defRmod
Definition:
inpdefs.h:52
sINPtables::defGmod
GENERIC * defGmod
Definition:
inpdefs.h:41
card
struct card card
sINPtables::defLmod
GENERIC * defLmod
Definition:
inpdefs.h:46
INPdevErr
char * INPdevErr()
sINPmodel::INPmodLine
card * INPmodLine
Definition:
inpdefs.h:76
INPpas1
void INPpas1()
sINPtables::INPsymtab
struct INPtab ** INPsymtab
Definition:
inpdefs.h:31
sINPtables
Definition:
inpdefs.h:30
INPnTab::t_next
struct INPnTab * t_next
Definition:
inpdefs.h:27
INPnTab::t_node
GENERIC * t_node
Definition:
inpdefs.h:26
ifsim.h
GENERIC
char GENERIC
Definition:
ifsim.h:27
sINPtables::defFmod
GENERIC * defFmod
Definition:
inpdefs.h:40
INPerrCat
char * INPerrCat()
INPgetTok
int INPgetTok()
INPgetMod
char * INPgetMod()
src
include
inpdefs.h
Generated by
1.8.11