cktmodcrt.c

来自「支持数字元件仿真的SPICE插件」· C语言 代码 · 共 49 行

C
49
字号
/* * Copyright (c) 1985 Thomas L. Quarles */    /* CKTmodCrt(type,name,ckt,fast)     *  Create a device model of the specified type, with the given name     *  in the named circuit.     */#include "prefix.h"#include <stdio.h>#include "DEVdefs.h"#include "CKTdefs.h"#include "SPerror.h"#include "util.h"#include "suffix.h"RCSID("CKTmodCrt.c $Revision: 1.1 $ on $Date: 91/04/02 12:07:50 $")intCKTmodCrt(ckt,type,modfast,name)    GENERIC *ckt;    int type;    GENERIC **modfast;    IFuid name;{    extern SPICEdev *DEVices[];    GENmodel *mymodfast = NULL;    int error;    error = CKTfndMod(ckt,&type,(GENERIC**)&mymodfast,name);    if(error == E_NOMOD) {        mymodfast = (GENmodel *)MALLOC((*DEVices[type]).DEVmodSize);        if(mymodfast == (GENmodel *)NULL) return(E_NOMEM);        mymodfast->GENmodType = type;        mymodfast->GENmodName = name;        mymodfast->GENnextModel =(GENmodel *)((CKTcircuit *)ckt)->CKThead[type];        ((CKTcircuit *)ckt)->CKThead[type]=(GENmodel *)mymodfast;        if(modfast) *modfast=(GENERIC *)mymodfast;        return(OK);    } else if (error==0) {        if(modfast) *modfast=(GENERIC *)mymodfast;        return(E_EXISTS);    } else {        return(error);    }    /*NOTREACHED*/}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?