Jspice3
mesparam.c
Go to the documentation of this file.
1 /***************************************************************************
2 JSPICE3 adaptation of Spice3f2 - Copyright (c) Stephen R. Whiteley 1992
3 Copyright 1990 Regents of the University of California. All rights reserved.
4 Authors: 1985 S. Hwang
5  1993 Stephen R. Whiteley
6 ****************************************************************************/
7 
8 #include "spice.h"
9 #include <stdio.h>
10 #include "mesdefs.h"
11 #include "sperror.h"
12 #include "util.h"
13 
14 
15 /* ARGSUSED */
16 int
17 MESparam(ckt,param,value,inst,select)
18 
19 CKTcircuit *ckt;
20 int param;
21 IFvalue *value;
22 GENinstance *inst;
23 IFvalue *select;
24 {
25  MESinstance *here = (MESinstance*)inst;
26 
27  switch (param) {
28 
29  case MES_AREA:
30  here->MESarea = value->rValue;
31  here->MESareaGiven = TRUE;
32  break;
33  case MES_IC_VDS:
34  here->MESicVDS = value->rValue;
35  here->MESicVDSGiven = TRUE;
36  break;
37  case MES_IC_VGS:
38  here->MESicVGS = value->rValue;
39  here->MESicVGSGiven = TRUE;
40  break;
41  case MES_IC:
42  switch(value->v.numValue) {
43  case 2:
44  here->MESicVGS = *(value->v.vec.rVec+1);
45  here->MESicVGSGiven = TRUE;
46  case 1:
47  here->MESicVDS = *(value->v.vec.rVec);
48  here->MESicVDSGiven = TRUE;
49  break;
50  default:
51  return(E_BADPARM);
52  }
53  break;
54  case MES_OFF:
55  here->MESoff = value->iValue;
56  break;
57  default:
58  return (E_BADPARM);
59  }
60  return (OK);
61 }
#define MES_OFF
Definition: mesdefs.h:221
int numValue
Definition: ifsim.h:240
#define MES_AREA
Definition: mesdefs.h:217
union uIFvalue::@13::@14 vec
#define E_BADPARM
Definition: iferrmsg.h:26
#define TRUE
Definition: util.h:27
int iValue
Definition: ifsim.h:232
double rValue
Definition: ifsim.h:233
#define MES_IC_VGS
Definition: mesdefs.h:219
#define OK
Definition: iferrmsg.h:17
unsigned MESicVGSGiven
Definition: mesdefs.h:69
#define MES_IC
Definition: mesdefs.h:220
unsigned MESicVDSGiven
Definition: mesdefs.h:68
unsigned MESareaGiven
Definition: mesdefs.h:67
double MESarea
Definition: mesdefs.h:32
#define MES_IC_VDS
Definition: mesdefs.h:218
double MESicVGS
Definition: mesdefs.h:34
double MESicVDS
Definition: mesdefs.h:33
struct uIFvalue::@13 v
int MESoff
Definition: mesdefs.h:66
int MESparam(CKTcircuit *ckt, int param, IFvalue *value, GENinstance *inst, IFvalue *select)
Definition: mesparam.c:17