ngspice/src/spicelib/devices/dev.c

148 lines
3.8 KiB
C
Raw Normal View History

/* NG-SPICE -- An electrical circuit simulator
*
* Copyright (c) 1990 University of California
* Copyright (c) 2000 Arno W. Peters
*
* Permission to use, copy, modify, and distribute this software and
* its documentation without fee, and without a written agreement is
* hereby granted, provided that the above copyright notice, this
* paragraph and the following three paragraphs appear in all copies.
*
* This software program and documentation are copyrighted by their
* authors. The software program and documentation are supplied "as
* is", without any accompanying services from the authors. The
* authors do not warrant that the operation of the program will be
* uninterrupted or error-free. The end-user understands that the
* program was developed for research purposes and is advised not to
* rely exclusively on the program for any reason.
*
* IN NO EVENT SHALL THE AUTHORS BE LIABLE TO ANY PARTY FOR DIRECT,
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING
* LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS
* DOCUMENTATION, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE. THE AUTHORS SPECIFICALLY DISCLAIMS ANY
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE
* SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE AUTHORS
* HAVE NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES,
* ENHANCEMENTS, OR MODIFICATIONS. */
#include <config.h>
#include "dev.h"
#include "devdefs.h"
/* Enable the following devices */
#define DEV_asrc
#define DEV_bjt
#define DEV_bsim1
#define DEV_bsim2
#define DEV_bsim3
#define DEV_bsim4
#define DEV_bsim3v1
#define DEV_bsim3v2
#define DEV_cap
#define DEV_cccs
#define DEV_ccvs
#define DEV_csw
#define DEV_dio
#define DEV_ind
#define DEV_isrc
#define DEV_jfet
#define DEV_jfet2
#define DEV_ltra
#define DEV_mes
#define DEV_mos1
#define DEV_mos2
#define DEV_mos3
#define DEV_mos6
#define DEV_res
#define DEV_sw
#define DEV_tra
#define DEV_urc
#define DEV_vccs
#define DEV_vcvs
#define DEV_vsrc
#define DEVICES_USED "asrc bjt bsim1 bsim2 bsim3 bsim3v2 bsim3v1 cap cccs ccvs csw dio ind isrc jfet ltra mes mos1 mos2 mos3 mos6 res sw tra urc vccs vcvs vsrc"
#include "asrc/asrcitf.h"
#include "bjt/bjtitf.h"
#include "cap/capitf.h"
#include "cccs/cccsitf.h"
#include "ccvs/ccvsitf.h"
#include "csw/cswitf.h"
#include "dio/dioitf.h"
#include "ind/inditf.h"
#include "isrc/isrcitf.h"
#include "mos1/mos1itf.h"
#include "mos6/mos6itf.h"
#include "res/resitf.h"
#include "sw/switf.h"
#include "vccs/vccsitf.h"
#include "vcvs/vcvsitf.h"
#include "vsrc/vsrcitf.h"
#include "bsim1/bsim1itf.h"
#include "bsim2/bsim2itf.h"
#include "bsim3/bsim3itf.h"
#include "bsim4/bsim4itf.h"
#include "bsim3v1/bsim3v1itf.h"
#include "bsim3v2/bsim3v2itf.h"
#include "mos2/mos2itf.h"
#include "mos3/mos3itf.h"
#include "jfet/jfetitf.h"
#include "jfet2/jfet2itf.h"
#include "mes/mesitf.h"
#include "ltra/ltraitf.h"
#include "tra/traitf.h"
#include "urc/urcitf.h"
SPICEdev *DEVices[] = {
/* URC must appear before the resistor, capacitor, and diode */
&URCinfo,
&ASRCinfo,
&BJTinfo,
&B1info,
&B2info,
&BSIM3info,
&B4info,
&BSIM3V2info,
&BSIM3V1info,
&CAPinfo,
&CCCSinfo,
&CCVSinfo,
&CSWinfo,
&DIOinfo,
&INDinfo,
&MUTinfo,
&ISRCinfo,
&JFETinfo,
&JFET2info,
&LTRAinfo,
&MESinfo,
&MOS1info,
&MOS2info,
&MOS3info,
&MOS6info,
&RESinfo,
&SWinfo,
&TRAinfo,
&VCCSinfo,
&VCVSinfo,
&VSRCinfo,
};
int
num_devices(void)
{
---------------------------------------------------------------------- * src/devices/dev.c src/devices/bjt/bjtnoise.c src/devices/bsim3/b3.c src/devices/bsim3/b3acld.c src/devices/bsim3/b3ask.c src/devices/bsim3/b3check.c src/devices/bsim3/b3cvtest.c src/devices/bsim3/b3del.c src/devices/bsim3/b3dest.c src/devices/bsim3/b3getic.c src/devices/bsim3/b3ld.c src/devices/bsim3/b3mask.c src/devices/bsim3/b3mdel.c src/devices/bsim3/b3mpar.c src/devices/bsim3/b3noi.c src/devices/bsim3/b3par.c src/devices/bsim3/b3pzld.c src/devices/bsim3/b3set.c src/devices/bsim3/b3temp.c src/devices/bsim3/b3trunc.c src/devices/bsim3v1/b3v1.c src/devices/bsim3v1/b3v1acld.c src/devices/bsim3v1/b3v1ask.c src/devices/bsim3v1/b3v1check.c src/devices/bsim3v1/b3v1cvtest.c src/devices/bsim3v1/b3v1del.c src/devices/bsim3v1/b3v1dest.c src/devices/bsim3v1/b3v1getic.c src/devices/bsim3v1/b3v1ld.c src/devices/bsim3v1/b3v1mask.c src/devices/bsim3v1/b3v1mdel.c src/devices/bsim3v1/b3v1mpar.c src/devices/bsim3v1/b3v1noi.c src/devices/bsim3v1/b3v1par.c src/devices/bsim3v1/b3v1pzld.c src/devices/bsim3v1/b3v1set.c src/devices/bsim3v1/b3v1temp.c src/devices/bsim3v1/b3v1trunc.c src/devices/bsim3v2/b3v2.c src/devices/bsim3v2/b3v2acld.c src/devices/bsim3v2/b3v2ask.c src/devices/bsim3v2/b3v2check.c src/devices/bsim3v2/b3v2cvtest.c src/devices/bsim3v2/b3v2del.c src/devices/bsim3v2/b3v2dest.c src/devices/bsim3v2/b3v2getic.c src/devices/bsim3v2/b3v2ld.c src/devices/bsim3v2/b3v2mask.c src/devices/bsim3v2/b3v2mdel.c src/devices/bsim3v2/b3v2mpar.c src/devices/bsim3v2/b3v2noi.c src/devices/bsim3v2/b3v2par.c src/devices/bsim3v2/b3v2pzld.c src/devices/bsim3v2/b3v2set.c src/devices/bsim3v2/b3v2temp.c src/devices/bsim3v2/b3v2trunc.c src/devices/bsim4/b4noi.c src/devices/csw/cswnoise.c src/devices/dio/dionoise.c src/devices/jfet/jfetnoi.c src/devices/jfet2/jfet2noi.c src/devices/mes/mesnoise.c src/devices/mos1/mos1noi.c src/devices/mos2/mos2noi.c src/devices/mos3/mos3noi.c src/devices/res/resnoise.c src/devices/sw/swnoise.c : Removed all RCS log and rcsid from the devices source files. They only give extra clutter and all the information you need is available through CVS. Also removed unnecessary inclusion of fteconst.h header file. * src/devices/asrc/ChangeLog src/devices/bsim2/ChangeLog src/devices/cap/ChangeLog src/devices/cccs/ChangeLog src/devices/ccvs/ChangeLog src/devices/csw/ChangeLog src/devices/devsup/ChangeLog src/devices/dio/ChangeLog src/devices/ind/ChangeLog src/devices/isrc/ChangeLog src/devices/jfet/ChangeLog src/devices/ltra/ChangeLog src/devices/mes/ChangeLog src/devices/mos1/ChangeLog src/devices/mos2/ChangeLog src/devices/mos3/ChangeLog src/devices/res/ChangeLog src/devices/sw/ChangeLog src/devices/tra/ChangeLog src/devices/urc/ChangeLog src/devices/vccs/ChangeLog src/devices/vcvs/ChangeLog src/devices/vsrc/ChangeLog: Removed. Use toplevel ChangeLog.
2000-05-06 16:01:13 +02:00
return sizeof(DEVices)/sizeof(SPICEdev *);
}
IFdevice **
devices_ptr(void)
{
return (IFdevice **) DEVices;
}