Browse Source

use the type CKTnode instead of void*

pre-master-46
rlar 16 years ago
parent
commit
44a182c1ba
  1. 62
      ChangeLog
  2. 18
      src/include/cktdefs.h
  3. 18
      src/include/ifsim.h
  4. 14
      src/include/inpdefs.h
  5. 4
      src/include/noisedef.h
  6. 18
      src/spicelib/analysis/ckt.h
  7. 8
      src/spicelib/analysis/cktasknq.c
  8. 4
      src/spicelib/analysis/cktdltn.c
  9. 4
      src/spicelib/analysis/cktfnode.c
  10. 6
      src/spicelib/analysis/cktgrnd.c
  11. 8
      src/spicelib/analysis/cktmapn.c
  12. 2
      src/spicelib/analysis/cktmkcur.c
  13. 2
      src/spicelib/analysis/cktmkvol.c
  14. 4
      src/spicelib/analysis/cktneweq.c
  15. 4
      src/spicelib/analysis/cktnewn.c
  16. 12
      src/spicelib/analysis/cktsetnp.c
  17. 4
      src/spicelib/analysis/noisean.c
  18. 8
      src/spicelib/analysis/pzaskq.c
  19. 8
      src/spicelib/analysis/pzsetp.c
  20. 4
      src/spicelib/analysis/senssetp.c
  21. 4
      src/spicelib/analysis/tfsetp.c
  22. 2
      src/spicelib/devices/asrc/asrcconv.c
  23. 2
      src/spicelib/devices/asrc/asrcload.c
  24. 2
      src/spicelib/devices/asrc/asrcpzld.c
  25. 2
      src/spicelib/devices/asrc/asrcset.c
  26. 4
      src/spicelib/devices/cktbindnode.c
  27. 2
      src/spicelib/devices/ndev/ndevdefs.h
  28. 2
      src/spicelib/devices/ndev/ndevset.c
  29. 8
      src/spicelib/devices/urc/urcsetup.c
  30. 2
      src/spicelib/parser/ifnewuid.c
  31. 12
      src/spicelib/parser/inp.h
  32. 4
      src/spicelib/parser/inp2b.c
  33. 4
      src/spicelib/parser/inp2c.c
  34. 4
      src/spicelib/parser/inp2d.c
  35. 38
      src/spicelib/parser/inp2dot.c
  36. 8
      src/spicelib/parser/inp2e.c
  37. 4
      src/spicelib/parser/inp2f.c
  38. 8
      src/spicelib/parser/inp2g.c
  39. 4
      src/spicelib/parser/inp2h.c
  40. 4
      src/spicelib/parser/inp2i.c
  41. 6
      src/spicelib/parser/inp2j.c
  42. 4
      src/spicelib/parser/inp2l.c
  43. 14
      src/spicelib/parser/inp2m.c
  44. 2
      src/spicelib/parser/inp2n.c
  45. 8
      src/spicelib/parser/inp2o.c
  46. 10
      src/spicelib/parser/inp2p.c
  47. 12
      src/spicelib/parser/inp2q.c
  48. 4
      src/spicelib/parser/inp2r.c
  49. 8
      src/spicelib/parser/inp2s.c
  50. 8
      src/spicelib/parser/inp2t.c
  51. 6
      src/spicelib/parser/inp2u.c
  52. 4
      src/spicelib/parser/inp2v.c
  53. 4
      src/spicelib/parser/inp2w.c
  54. 6
      src/spicelib/parser/inp2y.c
  55. 6
      src/spicelib/parser/inp2z.c
  56. 2
      src/spicelib/parser/inppas2.c
  57. 2
      src/spicelib/parser/inppas3.c
  58. 2
      src/spicelib/parser/inpptree.c
  59. 6
      src/spicelib/parser/inpsymt.c
  60. 6
      src/xspice/mif/mif_inp2.c

62
ChangeLog

@ -1,3 +1,65 @@
2010-08-11 Robert Larice
* src/include/cktdefs.h ,
* src/include/ifsim.h ,
* src/include/inpdefs.h ,
* src/include/noisedef.h ,
* src/spicelib/analysis/ckt.h ,
* src/spicelib/analysis/cktasknq.c ,
* src/spicelib/analysis/cktdltn.c ,
* src/spicelib/analysis/cktfnode.c ,
* src/spicelib/analysis/cktgrnd.c ,
* src/spicelib/analysis/cktmapn.c ,
* src/spicelib/analysis/cktmkcur.c ,
* src/spicelib/analysis/cktmkvol.c ,
* src/spicelib/analysis/cktneweq.c ,
* src/spicelib/analysis/cktnewn.c ,
* src/spicelib/analysis/cktsetnp.c ,
* src/spicelib/analysis/noisean.c ,
* src/spicelib/analysis/pzaskq.c ,
* src/spicelib/analysis/pzsetp.c ,
* src/spicelib/analysis/senssetp.c ,
* src/spicelib/analysis/tfsetp.c ,
* src/spicelib/devices/asrc/asrcconv.c ,
* src/spicelib/devices/asrc/asrcload.c ,
* src/spicelib/devices/asrc/asrcpzld.c ,
* src/spicelib/devices/asrc/asrcset.c ,
* src/spicelib/devices/cktbindnode.c ,
* src/spicelib/devices/ndev/ndevdefs.h ,
* src/spicelib/devices/ndev/ndevset.c ,
* src/spicelib/devices/urc/urcsetup.c ,
* src/spicelib/parser/ifnewuid.c ,
* src/spicelib/parser/inp.h ,
* src/spicelib/parser/inp2b.c ,
* src/spicelib/parser/inp2c.c ,
* src/spicelib/parser/inp2d.c ,
* src/spicelib/parser/inp2dot.c ,
* src/spicelib/parser/inp2e.c ,
* src/spicelib/parser/inp2f.c ,
* src/spicelib/parser/inp2g.c ,
* src/spicelib/parser/inp2h.c ,
* src/spicelib/parser/inp2i.c ,
* src/spicelib/parser/inp2j.c ,
* src/spicelib/parser/inp2l.c ,
* src/spicelib/parser/inp2m.c ,
* src/spicelib/parser/inp2n.c ,
* src/spicelib/parser/inp2o.c ,
* src/spicelib/parser/inp2p.c ,
* src/spicelib/parser/inp2q.c ,
* src/spicelib/parser/inp2r.c ,
* src/spicelib/parser/inp2s.c ,
* src/spicelib/parser/inp2t.c ,
* src/spicelib/parser/inp2u.c ,
* src/spicelib/parser/inp2v.c ,
* src/spicelib/parser/inp2w.c ,
* src/spicelib/parser/inp2y.c ,
* src/spicelib/parser/inp2z.c ,
* src/spicelib/parser/inppas2.c ,
* src/spicelib/parser/inppas3.c ,
* src/spicelib/parser/inpptree.c ,
* src/spicelib/parser/inpsymt.c ,
* src/xspice/mif/mif_inp2.c :
use the type CKTnode instead of void*
2010-08-11 Robert Larice 2010-08-11 Robert Larice
* src/spicelib/devices/cktinit.c , * src/spicelib/devices/cktinit.c ,
* src/spicelib/parser/inp2b.c : * src/spicelib/parser/inp2b.c :

18
src/include/cktdefs.h

@ -277,8 +277,8 @@ extern int CKTaccept(CKTcircuit *);
extern int CKTacct(CKTcircuit *, void *, int , IFvalue *); extern int CKTacct(CKTcircuit *, void *, int , IFvalue *);
extern int CKTask(CKTcircuit *, GENinstance *, int , IFvalue *, IFvalue *); extern int CKTask(CKTcircuit *, GENinstance *, int , IFvalue *, IFvalue *);
extern int CKTaskAnalQ(CKTcircuit *, void *, int , IFvalue *, IFvalue *); extern int CKTaskAnalQ(CKTcircuit *, void *, int , IFvalue *, IFvalue *);
extern int CKTaskNodQst(CKTcircuit *, void *, int , IFvalue *, IFvalue *);
extern int CKTbindNode(CKTcircuit *, GENinstance *, int , void *);
extern int CKTaskNodQst(CKTcircuit *, CKTnode *, int , IFvalue *, IFvalue *);
extern int CKTbindNode(CKTcircuit *, GENinstance *, int , CKTnode *);
extern void CKTbreakDump(CKTcircuit *); extern void CKTbreakDump(CKTcircuit *);
extern int CKTclrBreak(CKTcircuit *); extern int CKTclrBreak(CKTcircuit *);
extern int CKTconvTest(CKTcircuit *); extern int CKTconvTest(CKTcircuit *);
@ -289,7 +289,7 @@ extern int CKTdltAnal(void *, void *, void *);
extern int CKTdltInst(CKTcircuit *, void *); extern int CKTdltInst(CKTcircuit *, void *);
extern int CKTdltMod(CKTcircuit *, GENmodel *); extern int CKTdltMod(CKTcircuit *, GENmodel *);
extern int CKTdltNNum(CKTcircuit *, int); extern int CKTdltNNum(CKTcircuit *, int);
extern int CKTdltNod(CKTcircuit *, void *);
extern int CKTdltNod(CKTcircuit *, CKTnode *);
extern int CKTdoJob(CKTcircuit *, int , void *); extern int CKTdoJob(CKTcircuit *, int , void *);
extern void CKTdump(CKTcircuit *, double, void *); extern void CKTdump(CKTcircuit *, double, void *);
#ifdef CIDER #ifdef CIDER
@ -300,15 +300,15 @@ extern int CKTfndAnal(CKTcircuit *, int *, void **, IFuid , void *, IFuid);
extern int CKTfndBranch(CKTcircuit *, IFuid); extern int CKTfndBranch(CKTcircuit *, IFuid);
extern int CKTfndDev(CKTcircuit *, int *, GENinstance **, IFuid , GENmodel *, IFuid); extern int CKTfndDev(CKTcircuit *, int *, GENinstance **, IFuid , GENmodel *, IFuid);
extern int CKTfndMod(CKTcircuit *, int *, GENmodel **, IFuid); extern int CKTfndMod(CKTcircuit *, int *, GENmodel **, IFuid);
extern int CKTfndNode(CKTcircuit *, void **, IFuid);
extern int CKTfndNode(CKTcircuit *, CKTnode **, IFuid);
extern int CKTfndTask(CKTcircuit *, void **, IFuid ); extern int CKTfndTask(CKTcircuit *, void **, IFuid );
extern int CKTground(CKTcircuit *, void **, IFuid);
extern int CKTground(CKTcircuit *, CKTnode **, IFuid);
extern int CKTic(CKTcircuit *); extern int CKTic(CKTcircuit *);
extern int CKTinit(CKTcircuit **); extern int CKTinit(CKTcircuit **);
extern int CKTinst2Node(CKTcircuit *, void *, int , CKTnode **, IFuid *); extern int CKTinst2Node(CKTcircuit *, void *, int , CKTnode **, IFuid *);
extern int CKTlinkEq(CKTcircuit *, CKTnode *); extern int CKTlinkEq(CKTcircuit *, CKTnode *);
extern int CKTload(CKTcircuit *); extern int CKTload(CKTcircuit *);
extern int CKTmapNode(CKTcircuit *, void **, IFuid);
extern int CKTmapNode(CKTcircuit *, CKTnode **, IFuid);
extern int CKTmkCur(CKTcircuit *, CKTnode **, IFuid , char *); extern int CKTmkCur(CKTcircuit *, CKTnode **, IFuid , char *);
extern int CKTmkNode(CKTcircuit *, CKTnode **); extern int CKTmkNode(CKTcircuit *, CKTnode **);
extern int CKTmkVolt(CKTcircuit *, CKTnode **, IFuid , char *); extern int CKTmkVolt(CKTcircuit *, CKTnode **, IFuid , char *);
@ -317,8 +317,8 @@ extern int CKTmodCrt(CKTcircuit *, int , GENmodel **, IFuid);
extern int CKTmodParam(CKTcircuit *, GENmodel *, int , IFvalue *, IFvalue *); extern int CKTmodParam(CKTcircuit *, GENmodel *, int , IFvalue *, IFvalue *);
extern int CKTnames(CKTcircuit *, int *, IFuid **); extern int CKTnames(CKTcircuit *, int *, IFuid **);
extern int CKTnewAnal(CKTcircuit *, int , IFuid , void **, void *); extern int CKTnewAnal(CKTcircuit *, int , IFuid , void **, void *);
extern int CKTnewEq(CKTcircuit *, void **, IFuid);
extern int CKTnewNode(CKTcircuit *, void **, IFuid);
extern int CKTnewEq(CKTcircuit *, CKTnode **, IFuid);
extern int CKTnewNode(CKTcircuit *, CKTnode **, IFuid);
extern int CKTnewTask(CKTcircuit *, void **, IFuid, void **); extern int CKTnewTask(CKTcircuit *, void **, IFuid, void **);
extern int CKTnoise (CKTcircuit *ckt, int mode, int operation, Ndata *data); extern int CKTnoise (CKTcircuit *ckt, int mode, int operation, Ndata *data);
extern IFuid CKTnodName(CKTcircuit *, int); extern IFuid CKTnodName(CKTcircuit *, int);
@ -341,7 +341,7 @@ extern int CKTsenSetup(CKTcircuit *);
extern int CKTsenUpdate(CKTcircuit *); extern int CKTsenUpdate(CKTcircuit *);
extern int CKTsetAnalPm(CKTcircuit *, void *, int , IFvalue *, IFvalue *); extern int CKTsetAnalPm(CKTcircuit *, void *, int , IFvalue *, IFvalue *);
extern int CKTsetBreak(CKTcircuit *, double); extern int CKTsetBreak(CKTcircuit *, double);
extern int CKTsetNodPm(CKTcircuit *, void *, int , IFvalue *, IFvalue *);
extern int CKTsetNodPm(CKTcircuit *, CKTnode *, int , IFvalue *, IFvalue *);
extern int CKTsetOpt(CKTcircuit *, void *, int , IFvalue *); extern int CKTsetOpt(CKTcircuit *, void *, int , IFvalue *);
extern int CKTsetup(CKTcircuit *); extern int CKTsetup(CKTcircuit *);
extern int CKTunsetup(CKTcircuit *); extern int CKTunsetup(CKTcircuit *);

18
src/include/ifsim.h

@ -236,7 +236,7 @@ union IFvalue {
IFcomplex cValue; /* complex valued data */ IFcomplex cValue; /* complex valued data */
char *sValue; /* string valued data */ char *sValue; /* string valued data */
IFuid uValue; /* UID valued data */ IFuid uValue; /* UID valued data */
IFnode nValue; /* node valued data */
CKTnode *nValue; /* node valued data */
IFparseTree *tValue; /* parse tree */ IFparseTree *tValue; /* parse tree */
struct { struct {
int numValue; /* length of vector */ int numValue; /* length of vector */
@ -347,21 +347,21 @@ struct IFsimulator {
int (*deleteCircuit) (CKTcircuit *); int (*deleteCircuit) (CKTcircuit *);
/* destroy old circuit's data structures*/ /* destroy old circuit's data structures*/
int (*newNode) (CKTcircuit *, void **, IFuid);
int (*newNode) (CKTcircuit *, CKTnode **, IFuid);
/* create new node */ /* create new node */
int (*groundNode) (CKTcircuit *, void **, IFuid);
int (*groundNode) (CKTcircuit *, CKTnode **, IFuid);
/* create ground node */ /* create ground node */
int (*bindNode) (CKTcircuit *, GENinstance *, int, void *);
int (*bindNode) (CKTcircuit *, GENinstance *, int, CKTnode *);
/* bind a node to a terminal */ /* bind a node to a terminal */
int (*findNode) (CKTcircuit *, void **, IFuid);
int (*findNode) (CKTcircuit *, CKTnode **, IFuid);
/* find a node by name */ /* find a node by name */
int (*instToNode) (CKTcircuit *, void *, int, void **, IFuid *); int (*instToNode) (CKTcircuit *, void *, int, void **, IFuid *);
/* find the node attached to a terminal */ /* find the node attached to a terminal */
int (*setNodeParm) (CKTcircuit *, void *, int, IFvalue *, IFvalue *);
int (*setNodeParm) (CKTcircuit *, CKTnode *, int, IFvalue *, IFvalue *);
/* set a parameter on a node */ /* set a parameter on a node */
int (*askNodeQuest) (CKTcircuit *, void *, int, IFvalue *, IFvalue *);
int (*askNodeQuest) (CKTcircuit *, CKTnode *, int, IFvalue *, IFvalue *);
/* ask a question about a node */ /* ask a question about a node */
int (*deleteNode) (CKTcircuit *, void *);
int (*deleteNode) (CKTcircuit *, CKTnode *);
/* delete a node from the circuit */ /* delete a node from the circuit */
int (*newInstance) (CKTcircuit *, GENmodel *, GENinstance **, IFuid); int (*newInstance) (CKTcircuit *, GENmodel *, GENinstance **, IFuid);
@ -429,7 +429,7 @@ struct IFsimulator {
*/ */
struct IFfrontEnd { struct IFfrontEnd {
int (*IFnewUid) (CKTcircuit *, IFuid *, IFuid, char *, int, void **);
int (*IFnewUid) (CKTcircuit *, IFuid *, IFuid, char *, int, CKTnode **);
/* create a new UID in the circuit */ /* create a new UID in the circuit */
int (*IFdelUid) (CKTcircuit *, IFuid, int); int (*IFdelUid) (CKTcircuit *, IFuid, int);
/* create a new UID in the circuit */ /* create a new UID in the circuit */

14
src/include/inpdefs.h

@ -25,7 +25,7 @@ struct INPtab {
struct INPnTab { struct INPnTab {
char *t_ent; char *t_ent;
void *t_node;
CKTnode *t_node;
struct INPnTab *t_next; struct INPnTab *t_next;
}; };
@ -86,7 +86,7 @@ struct INPmodel{
#define LOGICAL 1 #define LOGICAL 1
#define PHYSICAL 2 #define PHYSICAL 2
int IFnewUid(CKTcircuit *, IFuid *, IFuid, char *, int, void **);
int IFnewUid(CKTcircuit *, IFuid *, IFuid, char *, int, CKTnode **);
int IFdelUid(CKTcircuit *, IFuid, int); int IFdelUid(CKTcircuit *, IFuid, int);
int INPaName(char *, IFvalue *, CKTcircuit *, int *, char *, GENinstance **, IFsimulator *, int *, int INPaName(char *, IFvalue *, CKTcircuit *, int *, char *, GENinstance **, IFsimulator *, int *,
IFvalue *); IFvalue *);
@ -105,7 +105,7 @@ int INPgetTok(char **, char **, int);
int INPgetNetTok(char **, char **, int); int INPgetNetTok(char **, char **, int);
void INPgetTree(char **, INPparseTree **, CKTcircuit *, INPtables *); void INPgetTree(char **, INPparseTree **, CKTcircuit *, INPtables *);
IFvalue *INPgetValue(CKTcircuit *, char **, int, INPtables *); IFvalue *INPgetValue(CKTcircuit *, char **, int, INPtables *);
int INPgndInsert(CKTcircuit *, char **, INPtables *, void **);
int INPgndInsert(CKTcircuit *, char **, INPtables *, CKTnode **);
int INPinsertNofree(char **token, INPtables *tab); int INPinsertNofree(char **token, INPtables *tab);
int INPinsert(char **, INPtables *); int INPinsert(char **, INPtables *);
int INPretrieve(char **, INPtables *); int INPretrieve(char **, INPtables *);
@ -117,8 +117,8 @@ void INPpas1(CKTcircuit *, card *, INPtables *);
void INPpas2(CKTcircuit *, card *, INPtables *, void *); void INPpas2(CKTcircuit *, card *, INPtables *, void *);
void INPpas3(CKTcircuit *, card *, INPtables *, void *, IFparm *, int); void INPpas3(CKTcircuit *, card *, INPtables *, void *, IFparm *, int);
int INPpName(char *, IFvalue *, CKTcircuit *, int, GENinstance *); int INPpName(char *, IFvalue *, CKTcircuit *, int, GENinstance *);
int INPtermInsert(CKTcircuit *, char **, INPtables *, void **);
int INPmkTerm(CKTcircuit *, char **, INPtables *, void **);
int INPtermInsert(CKTcircuit *, char **, INPtables *, CKTnode **);
int INPmkTerm(CKTcircuit *, char **, INPtables *, CKTnode **);
int INPtypelook(char *); int INPtypelook(char *);
void INP2B(CKTcircuit *, INPtables *, card *); void INP2B(CKTcircuit *, INPtables *, card *);
void INP2C(CKTcircuit *, INPtables *, card *); void INP2C(CKTcircuit *, INPtables *, card *);
@ -135,7 +135,7 @@ void INP2M(CKTcircuit *, INPtables *, card *);
void INP2N(CKTcircuit *, INPtables *, card *); void INP2N(CKTcircuit *, INPtables *, card *);
void INP2O(CKTcircuit *, INPtables *, card *); void INP2O(CKTcircuit *, INPtables *, card *);
void INP2P(CKTcircuit *, INPtables *, card *); void INP2P(CKTcircuit *, INPtables *, card *);
void INP2Q(CKTcircuit *, INPtables *, card *, void *);
void INP2Q(CKTcircuit *, INPtables *, card *, CKTnode *);
void INP2R(CKTcircuit *, INPtables *, card *); void INP2R(CKTcircuit *, INPtables *, card *);
void INP2S(CKTcircuit *, INPtables *, card *); void INP2S(CKTcircuit *, INPtables *, card *);
void INP2T(CKTcircuit *, INPtables *, card *); void INP2T(CKTcircuit *, INPtables *, card *);
@ -144,7 +144,7 @@ void INP2V(CKTcircuit *, INPtables *, card *);
void INP2W(CKTcircuit *, INPtables *, card *); void INP2W(CKTcircuit *, INPtables *, card *);
void INP2Y(CKTcircuit *, INPtables *, card *); void INP2Y(CKTcircuit *, INPtables *, card *);
void INP2Z(CKTcircuit *, INPtables *, card *); void INP2Z(CKTcircuit *, INPtables *, card *);
int INP2dot(CKTcircuit *, INPtables *, card *, void *, void *);
int INP2dot(CKTcircuit *, INPtables *, card *, void *, CKTnode *);
INPtables *INPtabInit(int); INPtables *INPtabInit(int);
void INPkillMods(void); void INPkillMods(void);
void INPtabEnd(INPtables *); void INPtabEnd(INPtables *);

4
src/include/noisedef.h

@ -14,8 +14,8 @@ typedef struct {
int JOBtype; int JOBtype;
JOB *JOBnextJob; /* pointer to next thing to do */ JOB *JOBnextJob; /* pointer to next thing to do */
char *JOBname; /* name of this job */ char *JOBname; /* name of this job */
IFnode output; /* noise output summation node */
IFnode outputRef; /* noise output reference node */
CKTnode *output; /* noise output summation node */
CKTnode *outputRef; /* noise output reference node */
IFuid input; /* name of the AC source used as input reference */ IFuid input; /* name of the AC source used as input reference */
double NstartFreq; double NstartFreq;
double NstopFreq; double NstopFreq;

18
src/spicelib/analysis/ckt.h

@ -20,8 +20,8 @@ int CKTaccept( CKTcircuit *);
int CKTacct( CKTcircuit *, void *, int , IFvalue *); int CKTacct( CKTcircuit *, void *, int , IFvalue *);
int CKTask( CKTcircuit *, GENinstance *, int , IFvalue *, IFvalue *); int CKTask( CKTcircuit *, GENinstance *, int , IFvalue *, IFvalue *);
int CKTaskAnalQ( CKTcircuit *, void *, int , IFvalue *, IFvalue *); int CKTaskAnalQ( CKTcircuit *, void *, int , IFvalue *, IFvalue *);
int CKTaskNodQst( CKTcircuit *, void *, int , IFvalue *, IFvalue *);
int CKTbindNode( CKTcircuit *, GENinstance *, int , void *);
int CKTaskNodQst( CKTcircuit *, CKTnode *, int , IFvalue *, IFvalue *);
int CKTbindNode( CKTcircuit *, GENinstance *, int , CKTnode *);
void CKTbreakDump( CKTcircuit *); void CKTbreakDump( CKTcircuit *);
int CKTclrBreak( CKTcircuit *); int CKTclrBreak( CKTcircuit *);
int CKTconvTest( CKTcircuit *); int CKTconvTest( CKTcircuit *);
@ -31,22 +31,22 @@ int CKTdestroy( CKTcircuit *);
int CKTdltAnal( void *, void *, void *); int CKTdltAnal( void *, void *, void *);
int CKTdltInst( CKTcircuit *, void *); int CKTdltInst( CKTcircuit *, void *);
int CKTdltMod( CKTcircuit *, GENmodel *); int CKTdltMod( CKTcircuit *, GENmodel *);
int CKTdltNod( CKTcircuit *, void *);
int CKTdltNod( CKTcircuit *, CKTnode *);
int CKTdoJob( CKTcircuit *, int , void *); int CKTdoJob( CKTcircuit *, int , void *);
void CKTdump( CKTcircuit *, double, void *); void CKTdump( CKTcircuit *, double, void *);
int CKTfndAnal( CKTcircuit *, int *, void **, IFuid , void *, IFuid ); int CKTfndAnal( CKTcircuit *, int *, void **, IFuid , void *, IFuid );
int CKTfndBranch( CKTcircuit *, IFuid); int CKTfndBranch( CKTcircuit *, IFuid);
int CKTfndDev( CKTcircuit *, int *, GENinstance **, IFuid , GENmodel *, IFuid ); int CKTfndDev( CKTcircuit *, int *, GENinstance **, IFuid , GENmodel *, IFuid );
int CKTfndMod( CKTcircuit *, int *, GENmodel **, IFuid ); int CKTfndMod( CKTcircuit *, int *, GENmodel **, IFuid );
int CKTfndNode( CKTcircuit *, void **, IFuid );
int CKTfndNode( CKTcircuit *, CKTnode **, IFuid );
int CKTfndTask( CKTcircuit *, void **, IFuid ); int CKTfndTask( CKTcircuit *, void **, IFuid );
int CKTground( CKTcircuit *, void **, IFuid );
int CKTground( CKTcircuit *, CKTnode **, IFuid );
int CKTic( CKTcircuit *); int CKTic( CKTcircuit *);
int CKTinit( CKTcircuit **); int CKTinit( CKTcircuit **);
int CKTinst2Node( CKTcircuit *, void *, int , CKTnode **, IFuid *); int CKTinst2Node( CKTcircuit *, void *, int , CKTnode **, IFuid *);
int CKTlinkEq(CKTcircuit*,CKTnode*); int CKTlinkEq(CKTcircuit*,CKTnode*);
int CKTload( CKTcircuit *); int CKTload( CKTcircuit *);
int CKTmapNode( CKTcircuit *, void **, IFuid );
int CKTmapNode( CKTcircuit *, CKTnode **, IFuid );
int CKTmkCur( CKTcircuit *, CKTnode **, IFuid , char *); int CKTmkCur( CKTcircuit *, CKTnode **, IFuid , char *);
int CKTmkNode(CKTcircuit*,CKTnode**); int CKTmkNode(CKTcircuit*,CKTnode**);
int CKTmkVolt( CKTcircuit *, CKTnode **, IFuid , char *); int CKTmkVolt( CKTcircuit *, CKTnode **, IFuid , char *);
@ -55,8 +55,8 @@ int CKTmodCrt( CKTcircuit *, int , GENmodel **, IFuid );
int CKTmodParam( CKTcircuit *, GENmodel *, int , IFvalue *, IFvalue *); int CKTmodParam( CKTcircuit *, GENmodel *, int , IFvalue *, IFvalue *);
int CKTnames(CKTcircuit *, int *, IFuid **); int CKTnames(CKTcircuit *, int *, IFuid **);
int CKTnewAnal( CKTcircuit *, int , IFuid , void **, void *); int CKTnewAnal( CKTcircuit *, int , IFuid , void **, void *);
int CKTnewEq( CKTcircuit *, void **, IFuid );
int CKTnewNode( CKTcircuit *, void **, IFuid );
int CKTnewEq( CKTcircuit *, CKTnode **, IFuid );
int CKTnewNode( CKTcircuit *, CKTnode **, IFuid );
int CKTnewTask( CKTcircuit *, void **, IFuid ); int CKTnewTask( CKTcircuit *, void **, IFuid );
IFuid CKTnodName( CKTcircuit *, int ); IFuid CKTnodName( CKTcircuit *, int );
void CKTnodOut( CKTcircuit *); void CKTnodOut( CKTcircuit *);
@ -77,7 +77,7 @@ int CKTsenSetup( CKTcircuit *);
int CKTsenUpdate( CKTcircuit *); int CKTsenUpdate( CKTcircuit *);
int CKTsetAnalPm( CKTcircuit *, void *, int , IFvalue *, IFvalue *); int CKTsetAnalPm( CKTcircuit *, void *, int , IFvalue *, IFvalue *);
int CKTsetBreak( CKTcircuit *, double ); int CKTsetBreak( CKTcircuit *, double );
int CKTsetNodPm( CKTcircuit *, void *, int , IFvalue *, IFvalue *);
int CKTsetNodPm( CKTcircuit *, CKTnode *, int , IFvalue *, IFvalue *);
int CKTsetOpt( CKTcircuit *, void *, int , IFvalue *); int CKTsetOpt( CKTcircuit *, void *, int , IFvalue *);
int CKTsetup( CKTcircuit *); int CKTsetup( CKTcircuit *);
int CKTunsetup(CKTcircuit *ckt); int CKTunsetup(CKTcircuit *ckt);

8
src/spicelib/analysis/cktasknq.c

@ -19,21 +19,21 @@ Author: 1985 Thomas L. Quarles
/* ARGSUSED */ /* ARGSUSED */
int int
CKTaskNodQst(CKTcircuit *ckt, void *node, int parm, IFvalue *value, IFvalue *selector)
CKTaskNodQst(CKTcircuit *ckt, CKTnode *node, int parm, IFvalue *value, IFvalue *selector)
{ {
if(!node) return(E_BADPARM); if(!node) return(E_BADPARM);
switch(parm) { switch(parm) {
case PARM_NS: case PARM_NS:
value->rValue = ((CKTnode *)node)->nodeset;
value->rValue = node->nodeset;
break; break;
case PARM_IC: case PARM_IC:
value->rValue = ((CKTnode *)node)->ic;
value->rValue = node->ic;
break; break;
case PARM_NODETYPE: case PARM_NODETYPE:
value->iValue = ((CKTnode *)node)->type;
value->iValue = node->type;
break; break;
default: default:

4
src/spicelib/analysis/cktdltn.c

@ -14,9 +14,9 @@ int CKTdltNNum(CKTcircuit *cktp, int num);
/* ARGSUSED */ /* ARGSUSED */
int int
CKTdltNod(CKTcircuit *ckt, void *node)
CKTdltNod(CKTcircuit *ckt, CKTnode *node)
{ {
return CKTdltNNum(ckt, ((CKTnode *) node)->number);
return CKTdltNNum(ckt, node->number);
} }
int int

4
src/spicelib/analysis/cktfnode.c

@ -18,13 +18,13 @@ Author: 1985 Thomas L. Quarles
/* ARGSUSED */ /* ARGSUSED */
int int
CKTfndNode(CKTcircuit *ckt, void **node, IFuid name)
CKTfndNode(CKTcircuit *ckt, CKTnode **node, IFuid name)
{ {
CKTnode *here; CKTnode *here;
for (here = ckt->CKTnodes; here; here = here->next) { for (here = ckt->CKTnodes; here; here = here->next) {
if(here->name == name) { if(here->name == name) {
if(node) *node = (char *)here;
if(node) *node = here;
return(OK); return(OK);
} }
} }

6
src/spicelib/analysis/cktgrnd.c

@ -17,14 +17,14 @@ Author: 1985 Thomas L. Quarles
int int
CKTground(CKTcircuit *inCkt, void **node, IFuid name)
CKTground(CKTcircuit *inCkt, CKTnode **node, IFuid name)
{ {
CKTcircuit *ckt = /* fixme, drop that */ inCkt; CKTcircuit *ckt = /* fixme, drop that */ inCkt;
if(ckt->CKTnodes) { if(ckt->CKTnodes) {
if(ckt->CKTnodes->name) { if(ckt->CKTnodes->name) {
/*already exists - keep old name, but return it */ /*already exists - keep old name, but return it */
if(node)*node = (char *)ckt->CKTnodes;
if(node) *node = ckt->CKTnodes;
return(E_EXISTS); return(E_EXISTS);
} }
ckt->CKTnodes->name = name; ckt->CKTnodes->name = name;
@ -39,7 +39,7 @@ CKTground(CKTcircuit *inCkt, void **node, IFuid name)
ckt->CKTnodes->next = (CKTnode *)NULL; ckt->CKTnodes->next = (CKTnode *)NULL;
ckt->CKTlastNode = ckt->CKTnodes; ckt->CKTlastNode = ckt->CKTnodes;
} }
if(node)*node = (char *)ckt->CKTnodes;
if(node) *node = ckt->CKTnodes;
return(OK); return(OK);
} }

8
src/spicelib/analysis/cktmapn.c

@ -19,7 +19,7 @@ Author: 1985 Thomas L. Quarles
/* ARGSUSED *//* fixme abandoned */ /* ARGSUSED *//* fixme abandoned */
int int
CKTmapNode(CKTcircuit *ckt, void **node, IFuid name)
CKTmapNode(CKTcircuit *ckt, CKTnode **node, IFuid name)
{ {
CKTnode *here; CKTnode *here;
int error; int error;
@ -28,7 +28,7 @@ CKTmapNode(CKTcircuit *ckt, void **node, IFuid name)
for (here = ckt->CKTnodes; here; here = here->next) { for (here = ckt->CKTnodes; here; here = here->next) {
if(here->name == name) { if(here->name == name) {
if(node) *node = (char *)here;
if(node) *node = here;
return(E_EXISTS); return(E_EXISTS);
} }
} }
@ -40,11 +40,11 @@ CKTmapNode(CKTcircuit *ckt, void **node, IFuid name)
(IFuid) NULL, (IFuid) NULL,
name, name,
UID_SIGNAL, UID_SIGNAL,
(void**)&mynode); /* get a uid for it */
&mynode); /* get a uid for it */
if(error) return(error); if(error) return(error);
mynode->name = uid; /* set the info we have */ mynode->name = uid; /* set the info we have */
mynode->type = SP_VOLTAGE; mynode->type = SP_VOLTAGE;
error = CKTlinkEq(ckt,mynode); /* and link it in */ error = CKTlinkEq(ckt,mynode); /* and link it in */
if(node) *node = (void *)mynode; /* and finally, return it */
if(node) *node = mynode; /* and finally, return it */
return(OK); return(OK);
} }

2
src/spicelib/analysis/cktmkcur.c

@ -30,7 +30,7 @@ CKTmkCur(CKTcircuit *ckt, CKTnode **node, IFuid basename, char *suffix)
if(error) return(error); if(error) return(error);
checknode = mynode; checknode = mynode;
error = (*(SPfrontEnd->IFnewUid))(ckt,&uid,basename, error = (*(SPfrontEnd->IFnewUid))(ckt,&uid,basename,
suffix,UID_SIGNAL,(void**)&checknode);
suffix, UID_SIGNAL, &checknode);
if(error) { if(error) {
FREE(mynode); FREE(mynode);
if(node) *node = checknode; if(node) *node = checknode;

2
src/spicelib/analysis/cktmkvol.c

@ -28,7 +28,7 @@ CKTmkVolt(CKTcircuit *ckt, CKTnode **node, IFuid basename, char *suffix)
if(error) return(error); if(error) return(error);
checknode = mynode; checknode = mynode;
error = (*(SPfrontEnd->IFnewUid))(ckt,&uid,basename, error = (*(SPfrontEnd->IFnewUid))(ckt,&uid,basename,
suffix,UID_SIGNAL,(void**)&checknode);
suffix, UID_SIGNAL, &checknode);
if(error) { if(error) {
FREE(mynode); FREE(mynode);
if(node) *node = checknode; if(node) *node = checknode;

4
src/spicelib/analysis/cktneweq.c

@ -19,7 +19,7 @@ Author: 1985 Thomas L. Quarles
int int
CKTnewEq(CKTcircuit *inCkt, void **node, IFuid name)
CKTnewEq(CKTcircuit *inCkt, CKTnode **node, IFuid name)
{ {
CKTnode *mynode; CKTnode *mynode;
CKTcircuit *ckt = /* fixme, drop that */ inCkt; CKTcircuit *ckt = /* fixme, drop that */ inCkt;
@ -28,7 +28,7 @@ CKTnewEq(CKTcircuit *inCkt, void **node, IFuid name)
error = CKTmkNode(ckt,&mynode); error = CKTmkNode(ckt,&mynode);
if(error) return(error); if(error) return(error);
if(node) *node = (void *)mynode;
if(node) *node = mynode;
mynode->name = name; mynode->name = name;
error = CKTlinkEq(ckt,mynode); error = CKTlinkEq(ckt,mynode);

4
src/spicelib/analysis/cktnewn.c

@ -20,7 +20,7 @@ Author: 1985 Thomas L. Quarles
/* should just call CKTnewEQ and set node type afterwards */ /* should just call CKTnewEQ and set node type afterwards */
int int
CKTnewNode(CKTcircuit *inCkt, void **node, IFuid name)
CKTnewNode(CKTcircuit *inCkt, CKTnode **node, IFuid name)
{ {
CKTcircuit *ckt = /* fixme, drop that */ inCkt; CKTcircuit *ckt = /* fixme, drop that */ inCkt;
if(!(ckt->CKTnodes)) { /* starting the list - allocate both ground and 1 */ if(!(ckt->CKTnodes)) { /* starting the list - allocate both ground and 1 */
@ -39,6 +39,6 @@ CKTnewNode(CKTcircuit *inCkt, void **node, IFuid name)
ckt->CKTlastNode->type = SP_VOLTAGE; ckt->CKTlastNode->type = SP_VOLTAGE;
ckt->CKTlastNode->next = (CKTnode *)NULL; ckt->CKTlastNode->next = (CKTnode *)NULL;
if(node) *node = (void *)ckt->CKTlastNode;
if(node) *node = ckt->CKTlastNode;
return(OK); return(OK);
} }

12
src/spicelib/analysis/cktsetnp.c

@ -18,23 +18,23 @@ Author: 1985 Thomas L. Quarles
/* ARGSUSED */ /* ARGSUSED */
int int
CKTsetNodPm(CKTcircuit *ckt, void *node, int parm, IFvalue *value, IFvalue *selector)
CKTsetNodPm(CKTcircuit *ckt, CKTnode *node, int parm, IFvalue *value, IFvalue *selector)
{ {
if(!node) return(E_BADPARM); if(!node) return(E_BADPARM);
switch(parm) { switch(parm) {
case PARM_NS: case PARM_NS:
((CKTnode *)node)->nodeset = value->rValue;
((CKTnode *)node)->nsGiven = 1;
node->nodeset = value->rValue;
node->nsGiven = 1;
break; break;
case PARM_IC: case PARM_IC:
((CKTnode *)node)->ic = value->rValue;
((CKTnode *)node)->icGiven = 1;
node->ic = value->rValue;
node->icGiven = 1;
break; break;
case PARM_NODETYPE: case PARM_NODETYPE:
((CKTnode *)node)->type = value->iValue;
node->type = value->iValue;
break; break;
default: default:

4
src/spicelib/analysis/noisean.c

@ -43,8 +43,8 @@ NOISEan (CKTcircuit *ckt, int restart)
NOISEAN *job = (NOISEAN*) (ckt->CKTcurJob); NOISEAN *job = (NOISEAN*) (ckt->CKTcurJob);
static char *noacinput = "noise input source has no AC value"; static char *noacinput = "noise input source has no AC value";
posOutNode = ((CKTnode*) (job->output))->number;
negOutNode = ((CKTnode*) (job->outputRef))->number;
posOutNode = (job->output) -> number;
negOutNode = (job->outputRef) -> number;
/* see if the source specified is AC */ /* see if the source specified is AC */
inst = NULL; inst = NULL;

8
src/spicelib/analysis/pzaskq.c

@ -18,19 +18,19 @@ PZaskQuest(CKTcircuit *ckt, void *anal, int which, IFvalue *value)
switch(which) { switch(which) {
case PZ_NODEI: case PZ_NODEI:
value->nValue = (IFnode)CKTnum2nod(ckt,((PZAN*)anal)->PZin_pos);
value->nValue = CKTnum2nod(ckt, ((PZAN*)anal)->PZin_pos);
break; break;
case PZ_NODEG: case PZ_NODEG:
value->nValue = (IFnode)CKTnum2nod(ckt,((PZAN*)anal)->PZin_neg);
value->nValue = CKTnum2nod(ckt, ((PZAN*)anal)->PZin_neg);
break; break;
case PZ_NODEJ: case PZ_NODEJ:
value->nValue = (IFnode)CKTnum2nod(ckt,((PZAN*)anal)->PZout_pos);
value->nValue = CKTnum2nod(ckt, ((PZAN*)anal)->PZout_pos);
break; break;
case PZ_NODEK: case PZ_NODEK:
value->nValue = (IFnode)CKTnum2nod(ckt,((PZAN*)anal)->PZout_neg);
value->nValue = CKTnum2nod(ckt, ((PZAN*)anal)->PZout_neg);
break; break;
case PZ_V: case PZ_V:

8
src/spicelib/analysis/pzsetp.c

@ -19,19 +19,19 @@ PZsetParm(CKTcircuit *ckt, void *anal, int which, IFvalue *value)
switch(which) { switch(which) {
case PZ_NODEI: case PZ_NODEI:
((PZAN*)anal)->PZin_pos = ((CKTnode*)value->nValue)->number;
((PZAN*)anal)->PZin_pos = (value->nValue)->number;
break; break;
case PZ_NODEG: case PZ_NODEG:
((PZAN*)anal)->PZin_neg = ((CKTnode*)value->nValue)->number;
((PZAN*)anal)->PZin_neg = (value->nValue)->number;
break; break;
case PZ_NODEJ: case PZ_NODEJ:
((PZAN*)anal)->PZout_pos = ((CKTnode*)value->nValue)->number;
((PZAN*)anal)->PZout_pos = (value->nValue)->number;
break; break;
case PZ_NODEK: case PZ_NODEK:
((PZAN*)anal)->PZout_neg = ((CKTnode*)value->nValue)->number;
((PZAN*)anal)->PZout_neg = (value->nValue)->number;
break; break;
case PZ_V: case PZ_V:

4
src/spicelib/analysis/senssetp.c

@ -19,14 +19,14 @@ SENSsetParam(CKTcircuit *ckt, void *anal, int which, IFvalue *value)
switch(which) { switch(which) {
case SENS_POS: case SENS_POS:
sinfo->output_pos = (CKTnode *) value->nValue;
sinfo->output_pos = value->nValue;
sinfo->output_neg = NULL; sinfo->output_neg = NULL;
sinfo->output_volt = 1; sinfo->output_volt = 1;
sinfo->step_type = SENS_DC; sinfo->step_type = SENS_DC;
break; break;
case SENS_NEG: case SENS_NEG:
sinfo->output_neg = (CKTnode *) value->nValue;
sinfo->output_neg = value->nValue;
break; break;
case SENS_SRC: case SENS_SRC:

4
src/spicelib/analysis/tfsetp.c

@ -18,12 +18,12 @@ TFsetParm(CKTcircuit *ckt, void *anal, int which, IFvalue *value)
switch(which) { switch(which) {
case TF_OUTPOS: case TF_OUTPOS:
((TFan *)anal)->TFoutPos = (CKTnode *)value->nValue;
((TFan *)anal)->TFoutPos = value->nValue;
((TFan *)anal)->TFoutIsV = TRUE; ((TFan *)anal)->TFoutIsV = TRUE;
((TFan *)anal)->TFoutIsI = FALSE; ((TFan *)anal)->TFoutIsI = FALSE;
break; break;
case TF_OUTNEG: case TF_OUTNEG:
((TFan *)anal)->TFoutNeg = (CKTnode *)value->nValue;
((TFan *)anal)->TFoutNeg = value->nValue;
((TFan *)anal)->TFoutIsV = TRUE; ((TFan *)anal)->TFoutIsV = TRUE;
((TFan *)anal)->TFoutIsI = FALSE; ((TFan *)anal)->TFoutIsI = FALSE;
break; break;

2
src/spicelib/devices/asrc/asrcconv.c

@ -41,7 +41,7 @@ ASRCconvTest(GENmodel *inModel, CKTcircuit *ckt)
branch = CKTfndBranch(ckt,here->ASRCtree->vars[i].uValue); branch = CKTfndBranch(ckt,here->ASRCtree->vars[i].uValue);
asrc_vals[i] = *(ckt->CKTrhsOld+branch); asrc_vals[i] = *(ckt->CKTrhsOld+branch);
} else { } else {
node_num = ((CKTnode *)(here->ASRCtree->vars[i].nValue))
node_num = (here->ASRCtree->vars[i].nValue)
->number; ->number;
asrc_vals[i] = *(ckt->CKTrhsOld+node_num); asrc_vals[i] = *(ckt->CKTrhsOld+node_num);
} }

2
src/spicelib/devices/asrc/asrcload.c

@ -63,7 +63,7 @@ ASRCload(GENmodel *inModel, CKTcircuit *ckt)
int branch = CKTfndBranch(ckt, here->ASRCtree->vars[i].uValue); int branch = CKTfndBranch(ckt, here->ASRCtree->vars[i].uValue);
asrc_vals[i] = *(ckt->CKTrhsOld + branch); asrc_vals[i] = *(ckt->CKTrhsOld + branch);
} else { } else {
int node_num = ((CKTnode *)(here->ASRCtree->vars[i]. nValue))->number;
int node_num = (here->ASRCtree->vars[i].nValue) -> number;
asrc_vals[i] = *(ckt->CKTrhsOld + node_num); asrc_vals[i] = *(ckt->CKTrhsOld + node_num);
} }

2
src/spicelib/devices/asrc/asrcpzld.c

@ -53,7 +53,7 @@ ASRCpzLoad(GENmodel *inModel, CKTcircuit *ckt, SPcomplex *s)
int branch = CKTfndBranch(ckt,here->ASRCtree->vars[i].uValue); int branch = CKTfndBranch(ckt,here->ASRCtree->vars[i].uValue);
asrc_vals[i] = *(ckt->CKTrhsOld + branch); asrc_vals[i] = *(ckt->CKTrhsOld + branch);
} else { } else {
int node_num = ((CKTnode *)(here->ASRCtree->vars[i].nValue)) -> number;
int node_num = (here->ASRCtree->vars[i].nValue) -> number;
asrc_vals[i] = *(ckt->CKTrhsOld + node_num); asrc_vals[i] = *(ckt->CKTrhsOld + node_num);
} }
} }

2
src/spicelib/devices/asrc/asrcset.c

@ -53,7 +53,7 @@ if((here->ptr = SMPmakeElt(matrix,here->first,here->second))==(double *)NULL){\
} }
#define MY_TSTALLOC(ptr,first,second) \ #define MY_TSTALLOC(ptr,first,second) \
if((here->ptr = SMPmakeElt(matrix,here->first,((CKTnode*)(second))->number))\
if((here->ptr = SMPmakeElt(matrix, here->first, (second)->number))\
==(double *)NULL){\ ==(double *)NULL){\
return(E_NOMEM);\ return(E_NOMEM);\
} }

4
src/spicelib/devices/cktbindnode.c

@ -16,7 +16,7 @@ Author: 1985 Thomas L. Quarles
#include "dev.h" #include "dev.h"
int int
CKTbindNode(CKTcircuit *ckt, GENinstance *fast, int term, void *node)
CKTbindNode(CKTcircuit *ckt, GENinstance *fast, int term, CKTnode *node)
{ {
int mappednode; int mappednode;
SPICEdev **devs; SPICEdev **devs;
@ -24,7 +24,7 @@ CKTbindNode(CKTcircuit *ckt, GENinstance *fast, int term, void *node)
int type = instance->GENmodPtr->GENmodType; int type = instance->GENmodPtr->GENmodType;
devs = devices(); devs = devices();
mappednode = ((CKTnode *)node)->number;
mappednode = node->number;
if (*((*devs[type]).DEVpublic.terms) >= term && term >0 ) { if (*((*devs[type]).DEVpublic.terms) >= term && term >0 ) {
switch(term) { switch(term) {

2
src/spicelib/devices/ndev/ndevdefs.h

@ -33,7 +33,7 @@ typedef struct sNDEVinstance {
int NDEVstate; /* pointer to start of state vector for diode */ int NDEVstate; /* pointer to start of state vector for diode */
int pin[7]; /* max 7 terminals are allowed */ int pin[7]; /* max 7 terminals are allowed */
int term; /* the real number of terminals */ int term; /* the real number of terminals */
void *node[7]; /* the array of CKT node's node pointer */
CKTnode *node[7]; /* the array of CKT node's node pointer */
char *bname[7]; /* the electrode boundary label for numerical solver */ char *bname[7]; /* the electrode boundary label for numerical solver */
sCKTinfo CKTInfo; sCKTinfo CKTInfo;
sDeviceinfo Ndevinfo; sDeviceinfo Ndevinfo;

2
src/spicelib/devices/ndev/ndevset.c

@ -60,7 +60,7 @@ if((here->ptr = SMPmakeElt(matrix,here->first,here->second))==(double *)NULL){\
for(i=0;i<here->term;i++) for(i=0;i<here->term;i++)
{ {
node = (CKTnode *)here->node[i];
node = here->node[i];
here->PINinfos[i].pin=node->number; here->PINinfos[i].pin=node->number;
strncpy(here->PINinfos[i].name,here->bname[i],32); strncpy(here->PINinfos[i].name,here->bname[i],32);
here->PINinfos[i].V = 0.0; here->PINinfos[i].V = 0.0;

8
src/spicelib/devices/urc/urcsetup.c

@ -193,7 +193,7 @@ URCsetup(SMPmatrix *matrix, GENmodel *inModel, CKTcircuit *ckt, int *state)
error = CKTbindNode(ckt,fast,1,lowr); error = CKTbindNode(ckt,fast,1,lowr);
if(error) return(error); if(error) return(error);
error = CKTbindNode(ckt,fast,2, error = CKTbindNode(ckt,fast,2,
(void *)CKTnum2nod(ckt, here->URCgndNode));
CKTnum2nod(ckt, here->URCgndNode));
if(error) return(error); if(error) return(error);
ptemp.rValue = prop; ptemp.rValue = prop;
error = CKTpName("area",&ptemp,ckt,dtype,nameelt,&fast); error = CKTpName("area",&ptemp,ckt,dtype,nameelt,&fast);
@ -212,7 +212,7 @@ URCsetup(SMPmatrix *matrix, GENmodel *inModel, CKTcircuit *ckt, int *state)
error = CKTbindNode(ckt,fast,1,lowr); error = CKTbindNode(ckt,fast,1,lowr);
if(error) return(error); if(error) return(error);
error = CKTbindNode(ckt,fast,2, error = CKTbindNode(ckt,fast,2,
(void *)CKTnum2nod(ckt, here->URCgndNode));
CKTnum2nod(ckt, here->URCgndNode));
if(error) return(error); if(error) return(error);
ptemp.rValue = c; ptemp.rValue = c;
error = CKTpName("capacitance",&ptemp,ckt,ctype,nameelt, error = CKTpName("capacitance",&ptemp,ckt,ctype,nameelt,
@ -236,7 +236,7 @@ URCsetup(SMPmatrix *matrix, GENmodel *inModel, CKTcircuit *ckt, int *state)
error = CKTbindNode(ckt,fast,1,hil); error = CKTbindNode(ckt,fast,1,hil);
if(error) return(error); if(error) return(error);
error = CKTbindNode(ckt,fast,2, error = CKTbindNode(ckt,fast,2,
(void *)CKTnum2nod(ckt, here->URCgndNode));
CKTnum2nod(ckt, here->URCgndNode));
if(error) return(error); if(error) return(error);
ptemp.rValue = prop; ptemp.rValue = prop;
error=CKTpName("area",&ptemp,ckt,dtype,nameelt,&fast); error=CKTpName("area",&ptemp,ckt,dtype,nameelt,&fast);
@ -256,7 +256,7 @@ URCsetup(SMPmatrix *matrix, GENmodel *inModel, CKTcircuit *ckt, int *state)
error = CKTbindNode(ckt,fast,1,hil); error = CKTbindNode(ckt,fast,1,hil);
if(error) return(error); if(error) return(error);
error = CKTbindNode(ckt,fast,2, error = CKTbindNode(ckt,fast,2,
(void *)CKTnum2nod(ckt, here->URCgndNode));
CKTnum2nod(ckt, here->URCgndNode));
if(error) return(error); if(error) return(error);
ptemp.rValue = c; ptemp.rValue = c;
error =CKTpName("capacitance",&ptemp,ckt,ctype,nameelt, error =CKTpName("capacitance",&ptemp,ckt,ctype,nameelt,

2
src/spicelib/parser/ifnewuid.c

@ -25,7 +25,7 @@ Author: 1988 Thomas L. Quarles
/* va: we should use tmalloc, whith also makes failure test */ /* va: we should use tmalloc, whith also makes failure test */
int int
IFnewUid(CKTcircuit *ckt, IFuid * newuid, IFuid olduid, char *suffix, int type, IFnewUid(CKTcircuit *ckt, IFuid * newuid, IFuid olduid, char *suffix, int type,
void **nodedata)
CKTnode **nodedata)
{ {
char *newname; char *newname;
int error; int error;

12
src/spicelib/parser/inp.h

@ -14,7 +14,7 @@ int IFeval(IFparseTree *tree, double gmin, double *result, double *vals,
/* ifnewuid.c */ /* ifnewuid.c */
int IFnewUid(CKTcircuit *ckt, IFuid *newuid, IFuid olduid, char *suffix, int type, int IFnewUid(CKTcircuit *ckt, IFuid *newuid, IFuid olduid, char *suffix, int type,
void **nodedata);
CKTnode **nodedata);
int IFdelUid(CKTcircuit *ckt, IFuid uid, int type); int IFdelUid(CKTcircuit *ckt, IFuid uid, int type);
/* inp2xx.c */ /* inp2xx.c */
@ -33,7 +33,7 @@ void INP2L(CKTcircuit *ckt, INPtables *tab, card *current);
void INP2M(CKTcircuit *ckt, INPtables *tab, card *current); void INP2M(CKTcircuit *ckt, INPtables *tab, card *current);
void INP2O(CKTcircuit *ckt, INPtables *tab, card *current); void INP2O(CKTcircuit *ckt, INPtables *tab, card *current);
void INP2P(CKTcircuit *ckt, INPtables *tab, card *current); void INP2P(CKTcircuit *ckt, INPtables *tab, card *current);
void INP2Q(CKTcircuit *ckt, INPtables *tab, card *current, void *gnode);
void INP2Q(CKTcircuit *ckt, INPtables *tab, card *current, CKTnode *gnode);
void INP2R(CKTcircuit *ckt, INPtables *tab, card *current); void INP2R(CKTcircuit *ckt, INPtables *tab, card *current);
void INP2S(CKTcircuit *ckt, INPtables *tab, card *current); void INP2S(CKTcircuit *ckt, INPtables *tab, card *current);
void INP2T(CKTcircuit *ckt, INPtables *tab, card *current); void INP2T(CKTcircuit *ckt, INPtables *tab, card *current);
@ -42,7 +42,7 @@ void INP2V(CKTcircuit *ckt, INPtables *tab, card *current);
void INP2W(CKTcircuit *ckt, INPtables *tab, card *current); void INP2W(CKTcircuit *ckt, INPtables *tab, card *current);
void INP2Y(CKTcircuit *ckt, INPtables *tab, card *current); void INP2Y(CKTcircuit *ckt, INPtables *tab, card *current);
void INP2Z(CKTcircuit *ckt, INPtables *tab, card *current); void INP2Z(CKTcircuit *ckt, INPtables *tab, card *current);
int INP2dot(CKTcircuit *ckt, INPtables *tab, card *current, void *task, void *gnode);
int INP2dot(CKTcircuit *ckt, INPtables *tab, card *current, void *task, CKTnode *gnode);
/* inpxxxx.c */ /* inpxxxx.c */
@ -82,9 +82,9 @@ void INPgetTree(char **line, INPparseTree **pt, CKTcircuit *ckt, INPtables *tab)
/* inpsymt.c */ /* inpsymt.c */
INPtables * INPtabInit(int numlines); INPtables * INPtabInit(int numlines);
int INPtermInsert(CKTcircuit *ckt, char **token, INPtables *tab, void **node);
int INPmkTerm(CKTcircuit *ckt, char **token, INPtables *tab, void **node);
int INPgndInsert(CKTcircuit *ckt, char **token, INPtables *tab, void **node);
int INPtermInsert(CKTcircuit *ckt, char **token, INPtables *tab, CKTnode **node);
int INPmkTerm(CKTcircuit *ckt, char **token, INPtables *tab, CKTnode **node);
int INPgndInsert(CKTcircuit *ckt, char **token, INPtables *tab, CKTnode **node);
int INPretrieve(char **token, INPtables *tab); int INPretrieve(char **token, INPtables *tab);
int INPinsert(char **token, INPtables *tab); int INPinsert(char **token, INPtables *tab);
int INPinsertNofree(char **token, INPtables *tab); int INPinsertNofree(char **token, INPtables *tab);

4
src/spicelib/parser/inp2b.c

@ -22,8 +22,8 @@ void INP2B(CKTcircuit *ckt, INPtables * tab, card * current)
char *name; /* the resistor's name */ char *name; /* the resistor's name */
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */
int waslead; /* flag to indicate that funny unlabeled number was found */ int waslead; /* flag to indicate that funny unlabeled number was found */

4
src/spicelib/parser/inp2c.c

@ -24,8 +24,8 @@ void INP2C(CKTcircuit *ckt, INPtables * tab, card * current)
char *model; /* the name of the capacitor's model */ char *model; /* the name of the capacitor's model */
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
double val; /* temp to held resistance */ double val; /* temp to held resistance */
int error; /* error code temporary */ int error; /* error code temporary */
int error1; /* secondary error code temporary */ int error1; /* secondary error code temporary */

4
src/spicelib/parser/inp2d.c

@ -23,8 +23,8 @@ void INP2D(CKTcircuit *ckt, INPtables * tab, card * current)
char *name; /* the resistor's name */ char *name; /* the resistor's name */
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */
IFvalue ptemp; /* a value structure to package resistance into */ IFvalue ptemp; /* a value structure to package resistance into */

38
src/spicelib/parser/inp2dot.c

@ -16,7 +16,7 @@ Modified: 2000 AlansFixes
static int static int
dot_noise(char *line, CKTcircuit *ckt, INPtables *tab, card *current, dot_noise(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
void *task, void *gnode, void *foo)
void *task, CKTnode *gnode, void *foo)
{ {
int which; /* which analysis we are performing */ int which; /* which analysis we are performing */
int i; /* generic loop variable */ int i; /* generic loop variable */
@ -24,8 +24,8 @@ dot_noise(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
char *name; /* the resistor's name */ char *name; /* the resistor's name */
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
IFvalue ptemp; /* a value structure to package resistance into */ IFvalue ptemp; /* a value structure to package resistance into */
IFvalue *parm; /* a pointer to a value struct for function returns */ IFvalue *parm; /* a pointer to a value struct for function returns */
char *steptype; /* ac analysis, type of stepping function */ char *steptype; /* ac analysis, type of stepping function */
@ -59,15 +59,15 @@ dot_noise(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
INPgetNetTok(&line, &nname1, 0); INPgetNetTok(&line, &nname1, 0);
INPtermInsert(ckt, &nname1, tab, &node1); INPtermInsert(ckt, &nname1, tab, &node1);
ptemp.nValue = (IFnode) node1;
ptemp.nValue = node1;
GCA(INPapName, (ckt, which, foo, "output", &ptemp)) GCA(INPapName, (ckt, which, foo, "output", &ptemp))
if (*line != ')') { if (*line != ')') {
INPgetNetTok(&line, &nname2, 1); INPgetNetTok(&line, &nname2, 1);
INPtermInsert(ckt, &nname2, tab, &node2); INPtermInsert(ckt, &nname2, tab, &node2);
ptemp.nValue = (IFnode) node2;
ptemp.nValue = node2;
} else { } else {
ptemp.nValue = (IFnode) gnode;
ptemp.nValue = gnode;
} }
GCA(INPapName, (ckt, which, foo, "outputref", &ptemp)) GCA(INPapName, (ckt, which, foo, "outputref", &ptemp))
@ -320,7 +320,7 @@ dot_dc(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
static int static int
dot_tf(char *line, CKTcircuit *ckt, INPtables *tab, card *current, dot_tf(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
void *task, void *gnode, void *foo)
void *task, CKTnode *gnode, void *foo)
{ {
char *name; /* the resistor's name */ char *name; /* the resistor's name */
int error; /* error code temporary */ int error; /* error code temporary */
@ -329,8 +329,8 @@ dot_tf(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
int i; /* generic loop variable */ int i; /* generic loop variable */
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
/* .tf v( node1, node2 ) src */ /* .tf v( node1, node2 ) src */
/* .tf vsrc2 src */ /* .tf vsrc2 src */
@ -354,12 +354,12 @@ dot_tf(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
} }
INPgetNetTok(&line, &nname1, 0); INPgetNetTok(&line, &nname1, 0);
INPtermInsert(ckt, &nname1, tab, &node1); INPtermInsert(ckt, &nname1, tab, &node1);
ptemp.nValue = (IFnode) node1;
ptemp.nValue = node1;
GCA(INPapName, (ckt, which, foo, "outpos", &ptemp)); GCA(INPapName, (ckt, which, foo, "outpos", &ptemp));
if (*line != ')') { if (*line != ')') {
INPgetNetTok(&line, &nname2, 1); INPgetNetTok(&line, &nname2, 1);
INPtermInsert(ckt, &nname2, tab, &node2); INPtermInsert(ckt, &nname2, tab, &node2);
ptemp.nValue = (IFnode) node2;
ptemp.nValue = node2;
GCA(INPapName, (ckt, which, foo, "outneg", &ptemp)); GCA(INPapName, (ckt, which, foo, "outneg", &ptemp));
ptemp.sValue = ptemp.sValue =
(char *) MALLOC(sizeof(char) * (char *) MALLOC(sizeof(char) *
@ -367,7 +367,7 @@ dot_tf(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
(void) sprintf(ptemp.sValue, "V(%s,%s)", nname1, nname2); (void) sprintf(ptemp.sValue, "V(%s,%s)", nname1, nname2);
GCA(INPapName, (ckt, which, foo, "outname", &ptemp)); GCA(INPapName, (ckt, which, foo, "outname", &ptemp));
} else { } else {
ptemp.nValue = (IFnode) gnode;
ptemp.nValue = gnode;
GCA(INPapName, (ckt, which, foo, "outneg", &ptemp)); GCA(INPapName, (ckt, which, foo, "outneg", &ptemp));
ptemp.sValue = ptemp.sValue =
(char *) MALLOC(sizeof(char) * (4 + strlen(nname1))); (char *) MALLOC(sizeof(char) * (4 + strlen(nname1)));
@ -447,7 +447,7 @@ dot_tran(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
static int static int
dot_sens(char *line, CKTcircuit *ckt, INPtables *tab, card *current, dot_sens(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
void *task, void *gnode, void *foo)
void *task, CKTnode *gnode, void *foo)
{ {
char *name; /* the resistor's name */ char *name; /* the resistor's name */
int error; /* error code temporary */ int error; /* error code temporary */
@ -457,8 +457,8 @@ dot_sens(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
int i; /* generic loop variable */ int i; /* generic loop variable */
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
char *steptype; /* ac analysis, type of stepping function */ char *steptype; /* ac analysis, type of stepping function */
which = -1; /* Bug fix from Glao Dezai */ which = -1; /* Bug fix from Glao Dezai */
@ -489,13 +489,13 @@ dot_sens(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
} }
INPgetNetTok(&line, &nname1, 0); INPgetNetTok(&line, &nname1, 0);
INPtermInsert(ckt, &nname1, tab, &node1); INPtermInsert(ckt, &nname1, tab, &node1);
ptemp.nValue = (IFnode) node1;
ptemp.nValue = node1;
GCA(INPapName, (ckt, which, foo, "outpos", &ptemp)) GCA(INPapName, (ckt, which, foo, "outpos", &ptemp))
if (*line != ')') { if (*line != ')') {
INPgetNetTok(&line, &nname2, 1); INPgetNetTok(&line, &nname2, 1);
INPtermInsert(ckt, &nname2, tab, &node2); INPtermInsert(ckt, &nname2, tab, &node2);
ptemp.nValue = (IFnode) node2;
ptemp.nValue = node2;
GCA(INPapName, (ckt, which, foo, "outneg", &ptemp)); GCA(INPapName, (ckt, which, foo, "outneg", &ptemp));
ptemp.sValue = (char *) ptemp.sValue = (char *)
MALLOC(sizeof(char) * MALLOC(sizeof(char) *
@ -503,7 +503,7 @@ dot_sens(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
(void) sprintf(ptemp.sValue, "V(%s,%s)", nname1, nname2); (void) sprintf(ptemp.sValue, "V(%s,%s)", nname1, nname2);
GCA(INPapName, (ckt, which, foo, "outname", &ptemp)); GCA(INPapName, (ckt, which, foo, "outname", &ptemp));
} else { } else {
ptemp.nValue = (IFnode) gnode;
ptemp.nValue = gnode;
GCA(INPapName, (ckt, which, foo, "outneg", &ptemp)); GCA(INPapName, (ckt, which, foo, "outneg", &ptemp));
ptemp.sValue = ptemp.sValue =
(char *) MALLOC(sizeof(char) * (4 + strlen(nname1))); (char *) MALLOC(sizeof(char) * (4 + strlen(nname1)));
@ -633,7 +633,7 @@ dot_options(char *line, CKTcircuit *ckt, INPtables *tab, card *current,
int int
INP2dot(CKTcircuit *ckt, INPtables *tab, card *current, void *task, void *gnode)
INP2dot(CKTcircuit *ckt, INPtables *tab, card *current, void *task, CKTnode *gnode)
{ {
/* .<something> Many possibilities */ /* .<something> Many possibilities */

8
src/spicelib/parser/inp2e.c

@ -23,10 +23,10 @@ void INP2E(CKTcircuit *ckt, INPtables * tab, card * current)
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
char *nname3; /* the third node's name */ char *nname3; /* the third node's name */
char *nname4; /* the fourth node's name */ char *nname4; /* the fourth node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
void *node3; /* the third node's node pointer */
void *node4; /* the fourth node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
CKTnode *node3; /* the third node's node pointer */
CKTnode *node4; /* the fourth node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */
IFvalue ptemp; /* a value structure to package resistance into */ IFvalue ptemp; /* a value structure to package resistance into */

4
src/spicelib/parser/inp2f.c

@ -21,8 +21,8 @@ void INP2F(CKTcircuit *ckt, INPtables * tab, card * current)
char *name; /* the resistor's name */ char *name; /* the resistor's name */
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */
IFvalue ptemp; /* a value structure to package resistance into */ IFvalue ptemp; /* a value structure to package resistance into */

8
src/spicelib/parser/inp2g.c

@ -23,10 +23,10 @@ void INP2G(CKTcircuit *ckt, INPtables * tab, card * current)
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
char *nname3; /* the third node's name */ char *nname3; /* the third node's name */
char *nname4; /* the fourth node's name */ char *nname4; /* the fourth node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
void *node3; /* the third node's node pointer */
void *node4; /* the fourth node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
CKTnode *node3; /* the third node's node pointer */
CKTnode *node4; /* the fourth node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */
IFvalue ptemp; /* a value structure to package resistance into */ IFvalue ptemp; /* a value structure to package resistance into */

4
src/spicelib/parser/inp2h.c

@ -21,8 +21,8 @@ void INP2H(CKTcircuit *ckt, INPtables * tab, card * current)
char *name; /* the resistor's name */ char *name; /* the resistor's name */
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */
IFvalue ptemp; /* a value structure to package resistance into */ IFvalue ptemp; /* a value structure to package resistance into */

4
src/spicelib/parser/inp2i.c

@ -22,8 +22,8 @@ void INP2I(CKTcircuit *ckt, INPtables * tab, card * current)
char *name; /* the resistor's name */ char *name; /* the resistor's name */
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */
IFvalue ptemp; /* a value structure to package resistance into */ IFvalue ptemp; /* a value structure to package resistance into */

6
src/spicelib/parser/inp2j.c

@ -22,9 +22,9 @@ void INP2J(CKTcircuit *ckt, INPtables * tab, card * current)
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
char *nname3; /* the third node's name */ char *nname3; /* the third node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
void *node3; /* the third node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
CKTnode *node3; /* the third node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */
IFvalue ptemp; /* a value structure to package resistance into */ IFvalue ptemp; /* a value structure to package resistance into */

4
src/spicelib/parser/inp2l.c

@ -24,8 +24,8 @@ void INP2L(CKTcircuit *ckt, INPtables * tab, card * current)
char *model; /* the name of the inductor's model */ char *model; /* the name of the inductor's model */
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
double val; /* temp to held inductance */ double val; /* temp to held inductance */
int error; /* error code temporary */ int error; /* error code temporary */
int error1; /* secondary error code temporary */ int error1; /* secondary error code temporary */

14
src/spicelib/parser/inp2m.c

@ -34,13 +34,13 @@ INP2M (CKTcircuit *ckt, INPtables * tab, card * current)
char *nname7; /* the seventh node's name */ char *nname7; /* the seventh node's name */
char *save; /* saj - used to save the posn of the start of char *save; /* saj - used to save the posn of the start of
the parameters if the model is a mosfet*/ the parameters if the model is a mosfet*/
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
void *node3; /* the third node's node pointer */
void *node4; /* the fourth node's node pointer */
void *node5; /* the fifth node's node pointer */
void *node6; /* the sixth node's node pointer */
void *node7; /* the seventh node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
CKTnode *node3; /* the third node's node pointer */
CKTnode *node4; /* the fourth node's node pointer */
CKTnode *node5; /* the fifth node's node pointer */
CKTnode *node6; /* the sixth node's node pointer */
CKTnode *node7; /* the seventh node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
int nodeflag; /* flag indicating 4 or 5 (or 6 or 7) nodes */ int nodeflag; /* flag indicating 4 or 5 (or 6 or 7) nodes */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */

2
src/spicelib/parser/inp2n.c

@ -34,7 +34,7 @@ void INP2N(CKTcircuit *ckt, INPtables * tab, card * current)
char *nnamex; /* serve as a temporary name */ char *nnamex; /* serve as a temporary name */
char *nname[7]; /* the array of CKT node's name */ char *nname[7]; /* the array of CKT node's name */
char *bname[7]; /* the array of NDEV electrode's name */ char *bname[7]; /* the array of NDEV electrode's name */
void *node[7]; /* the array of CKT node's node pointer */
CKTnode *node[7]; /* the array of CKT node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
int i; int i;

8
src/spicelib/parser/inp2o.c

@ -24,10 +24,10 @@ void INP2O(CKTcircuit *ckt, INPtables * tab, card * current)
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
char *nname3; /* the third node's name */ char *nname3; /* the third node's name */
char *nname4; /* the fourth node's name */ char *nname4; /* the fourth node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
void *node3; /* the third node's node pointer */
void *node4; /* the fourth node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
CKTnode *node3; /* the third node's node pointer */
CKTnode *node4; /* the fourth node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */
int waslead; /* flag to indicate that funny unlabeled number was found */ int waslead; /* flag to indicate that funny unlabeled number was found */

10
src/spicelib/parser/inp2p.c

@ -27,9 +27,9 @@ char *model; /* the name of the cpl's model */
char **nname1; /* the first node's name */ char **nname1; /* the first node's name */
char **nname2; /* the second node's name */ char **nname2; /* the second node's name */
char *ground; char *ground;
void **node1; /* the first node's node pointer */
void **node2; /* the second node's node pointer */
void *groundnode;
CKTnode **node1; /* the first node's node pointer */
CKTnode **node2; /* the second node's node pointer */
CKTnode *groundnode;
int error; /* error code temporary */ int error; /* error code temporary */
int error1=0; /* secondary error code temporary */ int error1=0; /* secondary error code temporary */
INPmodel *thismodel; /* pointer to model structure describing our model */ INPmodel *thismodel; /* pointer to model structure describing our model */
@ -64,8 +64,8 @@ int num, i;
nname1 = (char **) tmalloc(num * sizeof(char *)); nname1 = (char **) tmalloc(num * sizeof(char *));
nname2 = (char **) tmalloc(num * sizeof(char *)); nname2 = (char **) tmalloc(num * sizeof(char *));
node1 = (void **) tmalloc(num * sizeof(void *));
node2 = (void **) tmalloc(num * sizeof(void *));
node1 = (CKTnode **) tmalloc(num * sizeof(CKTnode *));
node2 = (CKTnode **) tmalloc(num * sizeof(CKTnode *));
for (i = 0; i < num; i++) { for (i = 0; i < num; i++) {
INPgetNetTok(&line,&(nname1[i]),1); INPgetNetTok(&line,&(nname1[i]),1);

12
src/spicelib/parser/inp2q.c

@ -15,7 +15,7 @@ Modified: 2001 Paolo Nenzi (Cider Integration)
#include "error.h" /* controlled_exit() */ #include "error.h" /* controlled_exit() */
#endif #endif
void INP2Q(CKTcircuit *ckt, INPtables * tab, card * current, void *gnode)
void INP2Q(CKTcircuit *ckt, INPtables * tab, card * current, CKTnode *gnode)
{ {
/* Qname <node> <node> <node> [<node>] <model> [<val>] [OFF] /* Qname <node> <node> <node> [<node>] <model> [<val>] [OFF]
@ -31,12 +31,12 @@ void INP2Q(CKTcircuit *ckt, INPtables * tab, card * current, void *gnode)
#ifdef ADMS #ifdef ADMS
char *nname5; /* the fifth node's name */ char *nname5; /* the fifth node's name */
#endif #endif
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
void *node3; /* the third node's node pointer */
void *node4; /* the fourth node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
CKTnode *node3; /* the third node's node pointer */
CKTnode *node4; /* the fourth node's node pointer */
#ifdef ADMS #ifdef ADMS
void *node5; /* the fifth node's node pointer */
CKTnode *node5; /* the fifth node's node pointer */
#endif #endif
int error; /* error code temporary */ int error; /* error code temporary */
int nodeflag; /* flag indicating 4 or 5 nodes */ int nodeflag; /* flag indicating 4 or 5 nodes */

4
src/spicelib/parser/inp2r.c

@ -30,8 +30,8 @@ void INP2R(CKTcircuit *ckt, INPtables * tab, card * current)
char *model; /* the name of the resistor's model */ char *model; /* the name of the resistor's model */
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
double val; /* temp to held resistance */ double val; /* temp to held resistance */
int error; /* error code temporary */ int error; /* error code temporary */
int error1; /* secondary error code temporary */ int error1; /* secondary error code temporary */

8
src/spicelib/parser/inp2s.c

@ -26,10 +26,10 @@ void INP2S(CKTcircuit *ckt, INPtables * tab, card * current)
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
char *nname3; /* the third node's name */ char *nname3; /* the third node's name */
char *nname4; /* the fourth node's name */ char *nname4; /* the fourth node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
void *node3; /* the third node's node pointer */
void *node4; /* the fourth node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
CKTnode *node3; /* the third node's node pointer */
CKTnode *node4; /* the fourth node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
INPmodel *thismodel; /* pointer to model structure describing our model */ INPmodel *thismodel; /* pointer to model structure describing our model */
GENmodel *mdfast; /* pointer to the actual model */ GENmodel *mdfast; /* pointer to the actual model */

8
src/spicelib/parser/inp2t.c

@ -24,10 +24,10 @@ void INP2T(CKTcircuit *ckt, INPtables * tab, card * current)
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
char *nname3; /* the third node's name */ char *nname3; /* the third node's name */
char *nname4; /* the fourth node's name */ char *nname4; /* the fourth node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
void *node3; /* the third node's node pointer */
void *node4; /* the fourth node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
CKTnode *node3; /* the third node's node pointer */
CKTnode *node4; /* the fourth node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */
int waslead; /* flag to indicate that funny unlabeled number was found */ int waslead; /* flag to indicate that funny unlabeled number was found */

6
src/spicelib/parser/inp2u.c

@ -23,9 +23,9 @@ void INP2U(CKTcircuit *ckt, INPtables * tab, card * current)
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
char *nname3; /* the third node's name */ char *nname3; /* the third node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
void *node3; /* the third node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
CKTnode *node3; /* the third node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */
int waslead; /* flag to indicate that funny unlabeled number was found */ int waslead; /* flag to indicate that funny unlabeled number was found */

4
src/spicelib/parser/inp2v.c

@ -22,8 +22,8 @@ void INP2V(CKTcircuit *ckt, INPtables * tab, card * current)
char *name; /* the resistor's name */ char *name; /* the resistor's name */
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */
IFvalue ptemp; /* a value structure to package resistance into */ IFvalue ptemp; /* a value structure to package resistance into */

4
src/spicelib/parser/inp2w.c

@ -24,8 +24,8 @@ void INP2W(CKTcircuit *ckt, INPtables * tab, card * current)
char *model; /* the name of the resistor's model */ char *model; /* the name of the resistor's model */
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
INPmodel *thismodel; /* pointer to model structure describing our model */ INPmodel *thismodel; /* pointer to model structure describing our model */
GENmodel *mdfast; /* pointer to the actual model */ GENmodel *mdfast; /* pointer to the actual model */

6
src/spicelib/parser/inp2y.c

@ -34,9 +34,9 @@ char rname1[10], rname2[10], rname3[10];
char cname1[10], cname2[10], cname3[10], cname4[10]; char cname1[10], cname2[10], cname3[10], cname4[10];
char *internal1, *internal2; char *internal1, *internal2;
char *ground1, *ground2; char *ground1, *ground2;
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
void *gnode1, *gnode2, *inode1, *inode2;
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
CKTnode *gnode1, *gnode2, *inode1, *inode2;
int error; /* error code temporary */ int error; /* error code temporary */
int error1=0; /* secondary error code temporary */ int error1=0; /* secondary error code temporary */
INPmodel *thismodel; /* pointer to model structure describing our model */ INPmodel *thismodel; /* pointer to model structure describing our model */

6
src/spicelib/parser/inp2z.c

@ -29,9 +29,9 @@ void INP2Z(CKTcircuit *ckt, INPtables * tab, card * current)
char *nname1; /* the first node's name */ char *nname1; /* the first node's name */
char *nname2; /* the second node's name */ char *nname2; /* the second node's name */
char *nname3; /* the third node's name */ char *nname3; /* the third node's name */
void *node1; /* the first node's node pointer */
void *node2; /* the second node's node pointer */
void *node3; /* the third node's node pointer */
CKTnode *node1; /* the first node's node pointer */
CKTnode *node2; /* the second node's node pointer */
CKTnode *node3; /* the third node's node pointer */
int error; /* error code temporary */ int error; /* error code temporary */
GENinstance *fast; /* pointer to the actual instance */ GENinstance *fast; /* pointer to the actual instance */
IFvalue ptemp; /* a value structure to package resistance into */ IFvalue ptemp; /* a value structure to package resistance into */

2
src/spicelib/parser/inppas2.c

@ -33,7 +33,7 @@ void INPpas2(CKTcircuit *ckt, card * data, INPtables * tab, void *task)
char c; char c;
char *groundname = "0"; char *groundname = "0";
char *gname; char *gname;
void *gnode;
CKTnode *gnode;
int error; /* used by the macros defined above */ int error; /* used by the macros defined above */
#ifdef HAS_WINDOWS #ifdef HAS_WINDOWS
int linecount = 0, actcount = 0; int linecount = 0, actcount = 0;

2
src/spicelib/parser/inppas3.c

@ -37,7 +37,7 @@ INPpas3(CKTcircuit *ckt, card *data, INPtables *tab, void *task,
resistance into */ resistance into */
int which; /* which analysis we are performing */ int which; /* which analysis we are performing */
int length; /* length of a name */ int length; /* length of a name */
void *node1; /* the first node's node pointer */
CKTnode *node1; /* the first node's node pointer */
#ifdef TRACE #ifdef TRACE
/* SDB debug statement */ /* SDB debug statement */

2
src/spicelib/parser/inpptree.c

@ -833,7 +833,7 @@ static INPparseNode *mkfnode(const char *fname, INPparseNode * arg)
int i; int i;
INPparseNode *p; INPparseNode *p;
char buf[128], *name, *s; char buf[128], *name, *s;
IFnode temp;
CKTnode *temp;
/* Make sure the case is ok. */ /* Make sure the case is ok. */
(void) strcpy(buf, fname); (void) strcpy(buf, fname);

6
src/spicelib/parser/inpsymt.c

@ -43,7 +43,7 @@ INPtables *INPtabInit(int numlines)
/* insert 'token' into the terminal symbol table */ /* insert 'token' into the terminal symbol table */
/* create a NEW NODE and return a pointer to it in *node */ /* create a NEW NODE and return a pointer to it in *node */
int INPtermInsert(CKTcircuit *ckt, char **token, INPtables * tab, void **node)
int INPtermInsert(CKTcircuit *ckt, char **token, INPtables * tab, CKTnode **node)
{ {
int key; int key;
int error; int error;
@ -79,7 +79,7 @@ int INPtermInsert(CKTcircuit *ckt, char **token, INPtables * tab, void **node)
/* USE node as the node pointer */ /* USE node as the node pointer */
int INPmkTerm(CKTcircuit *ckt, char **token, INPtables * tab, void **node)
int INPmkTerm(CKTcircuit *ckt, char **token, INPtables * tab, CKTnode **node)
{ {
int key; int key;
struct INPnTab *t; struct INPnTab *t;
@ -107,7 +107,7 @@ int INPmkTerm(CKTcircuit *ckt, char **token, INPtables * tab, void **node)
/* insert 'token' into the terminal symbol table as a name for ground*/ /* insert 'token' into the terminal symbol table as a name for ground*/
int INPgndInsert(CKTcircuit *ckt, char **token, INPtables * tab, void **node)
int INPgndInsert(CKTcircuit *ckt, char **token, INPtables * tab, CKTnode **node)
{ {
int key; int key;
int error; int error;

6
src/xspice/mif/mif_inp2.c

@ -853,7 +853,7 @@ MIFget_port(
case MIF_DIFF_RESISTANCE: case MIF_DIFF_RESISTANCE:
/* Call the spice3c1 function to put this node in the node list in ckt */ /* Call the spice3c1 function to put this node in the node list in ckt */
INPtermInsert(ckt, next_token, tab,(void **)pos_node);
INPtermInsert(ckt, next_token, tab, pos_node);
/* store the equation number and node identifier */ /* store the equation number and node identifier */
/* This is the equivalent of what CKTbindNode() does in 3C1 */ /* This is the equivalent of what CKTbindNode() does in 3C1 */
@ -920,7 +920,7 @@ MIFget_port(
// node = "0"; // deleted by K.A. March 5th 2000, this is incorrect, it creates a new pointer // node = "0"; // deleted by K.A. March 5th 2000, this is incorrect, it creates a new pointer
// that cause a crash in INPtermInsert() // that cause a crash in INPtermInsert()
INPtermInsert(ckt, &node, tab,(void **)neg_node);
INPtermInsert(ckt, &node, tab, neg_node);
fast->conn[conn_num]->port[port_num]->neg_node_str = node; fast->conn[conn_num]->port[port_num]->neg_node_str = node;
fast->conn[conn_num]->port[port_num]->smp_data.neg_node = neg_node[0]->number; fast->conn[conn_num]->port[port_num]->smp_data.neg_node = neg_node[0]->number;
@ -936,7 +936,7 @@ MIFget_port(
*status = MIF_ERROR; *status = MIF_ERROR;
return; return;
} }
INPtermInsert(ckt, next_token, tab,(void **)neg_node);
INPtermInsert(ckt, next_token, tab, neg_node);
fast->conn[conn_num]->port[port_num]->neg_node_str = *next_token; fast->conn[conn_num]->port[port_num]->neg_node_str = *next_token;
fast->conn[conn_num]->port[port_num]->smp_data.neg_node = neg_node[0]->number; fast->conn[conn_num]->port[port_num]->smp_data.neg_node = neg_node[0]->number;
*next_token = MIFget_token(line, next_token_type); *next_token = MIFget_token(line, next_token_type);

Loading…
Cancel
Save