KiCad PCB EDA Suite
Loading...
Searching...
No Matches
SIM_MODEL_NGSPICE Class Reference

#include <sim_model_ngspice.h>

Inheritance diagram for SIM_MODEL_NGSPICE:
SIM_MODEL_SPICE SIM_MODEL TEST_SIM_MODEL_NGSPICE_FIXTURE

Public Member Functions

 SIM_MODEL_NGSPICE (TYPE aType)
 
void SetParamFromSpiceCode (const std::string &aParamName, const std::string &aValue, SIM_VALUE_GRAMMAR::NOTATION aNotation) override
 
std::vector< std::string > GetPinNames () const override
 
 DEFINE_ENUM_CLASS_WITH_ITERATOR (DEVICE_T, NONE, R, C, L, K, TLINE, SW, D, NPN, PNP, NJFET, PJFET, NMES, PMES, NMOS, PMOS, V, I, E, F, G, H, SUBCKT, XSPICE, KIBIS, SPICE) struct DEVICE_INFO
 
 DEFINE_ENUM_CLASS_WITH_ITERATOR (TYPE, NONE, R, R_POT, R_BEHAVIORAL, C, C_BEHAVIORAL, L, L_BEHAVIORAL, K, TLINE_Z0, TLINE_RLGC, SW_V, SW_I, D, NPN_VBIC, PNP_VBIC, NPN_GUMMELPOON, PNP_GUMMELPOON, NPN_HICUM2, PNP_HICUM2, NJFET_SHICHMANHODGES, PJFET_SHICHMANHODGES, NJFET_PARKERSKELLERN, PJFET_PARKERSKELLERN, NMES_STATZ, PMES_STATZ, NMES_YTTERDAL, PMES_YTTERDAL, NMES_HFET1, PMES_HFET1, NMES_HFET2, PMES_HFET2, NMOS_VDMOS, PMOS_VDMOS, NMOS_MOS1, PMOS_MOS1, NMOS_MOS2, PMOS_MOS2, NMOS_MOS3, PMOS_MOS3, NMOS_BSIM1, PMOS_BSIM1, NMOS_BSIM2, PMOS_BSIM2, NMOS_MOS6, PMOS_MOS6, NMOS_MOS9, PMOS_MOS9, NMOS_BSIM3, PMOS_BSIM3, NMOS_B4SOI, PMOS_B4SOI, NMOS_BSIM4, PMOS_BSIM4, NMOS_B3SOIFD, PMOS_B3SOIFD, NMOS_B3SOIDD, PMOS_B3SOIDD, NMOS_B3SOIPD, PMOS_B3SOIPD, NMOS_HISIM2, PMOS_HISIM2, NMOS_HISIMHV1, PMOS_HISIMHV1, NMOS_HISIMHV2, PMOS_HISIMHV2, V, V_SIN, V_PULSE, V_EXP, V_AM, V_SFFM, V_VCL, V_CCL, V_PWL, V_WHITENOISE, V_PINKNOISE, V_BURSTNOISE, V_RANDUNIFORM, V_RANDGAUSSIAN, V_RANDEXP, V_RANDPOISSON, V_BEHAVIORAL, I, I_SIN, I_PULSE, I_EXP, I_AM, I_SFFM, I_VCL, I_CCL, I_PWL, I_WHITENOISE, I_PINKNOISE, I_BURSTNOISE, I_RANDUNIFORM, I_RANDGAUSSIAN, I_RANDEXP, I_RANDPOISSON, I_BEHAVIORAL, SUBCKT, XSPICE, KIBIS_DEVICE, KIBIS_DRIVER_DC, KIBIS_DRIVER_RECT, KIBIS_DRIVER_PRBS, RAWSPICE) struct INFO
 
template<>
std::string GetFieldValue (const std::vector< void > *aFields, const wxString &aFieldName, bool aResolve)
 
const SPICE_GENERATORSpiceGenerator () const
 
const SIM_MODEL_SERIALIZERSerializer () const
 
template<typename T >
void ReadDataFields (const std::vector< T > *aFields, const std::vector< LIB_PIN * > &aPins)
 
template<>
void ReadDataFields (const std::vector< SCH_FIELD > *aFields, const std::vector< LIB_PIN * > &aPins)
 
template<>
void ReadDataFields (const std::vector< LIB_FIELD > *aFields, const std::vector< LIB_PIN * > &aPins)
 
template<typename T >
void WriteFields (std::vector< T > &aFields) const
 
template<>
void WriteFields (std::vector< SCH_FIELD > &aFields) const
 
template<>
void WriteFields (std::vector< LIB_FIELD > &aFields) const
 
SPICE_INFO GetSpiceInfo () const
 
void AddPin (const PIN &aPin)
 
void ClearPins ()
 
int FindModelPinIndex (const std::string &aSymbolPinNumber)
 
void AddParam (const PARAM::INFO &aInfo)
 
DEVICE_INFO GetDeviceInfo () const
 
INFO GetTypeInfo () const
 
DEVICE_T GetDeviceType () const
 
TYPE GetType () const
 
const SIM_MODELGetBaseModel () const
 
virtual void SetBaseModel (const SIM_MODEL &aBaseModel)
 
int GetPinCount () const
 
const PINGetPin (unsigned aIndex) const
 
std::vector< std::reference_wrapper< const PIN > > GetPins () const
 
void SetPinSymbolPinNumber (int aPinIndex, const std::string &aSymbolPinNumber)
 
virtual void SetPinSymbolPinNumber (const std::string &aPinName, const std::string &aSymbolPinNumber)
 
int GetParamCount () const
 
virtual const PARAMGetParam (unsigned aParamIndex) const
 
virtual const PARAMGetTunerParam () const
 
const PARAMFindParam (const std::string &aParamName) const
 
std::vector< std::reference_wrapper< const PARAM > > GetParams () const
 
const PARAMGetParamOverride (unsigned aParamIndex) const
 
const PARAMGetBaseParam (unsigned aParamIndex) const
 
void SetParamValue (int aParamIndex, const std::string &aValue, SIM_VALUE::NOTATION aNotation=SIM_VALUE::NOTATION::SI)
 
void SetParamValue (const std::string &aParamName, const std::string &aValue, SIM_VALUE::NOTATION aNotation=SIM_VALUE::NOTATION::SI)
 
virtual bool HasAutofill () const
 
virtual bool HasPrimaryValue () const
 
void SetIsEnabled (bool aIsEnabled)
 
bool IsEnabled () const
 
void SetIsStoredInValue (bool aIsStoredInValue)
 
bool IsStoredInValue () const
 
virtual void SwitchSingleEndedDiff (bool aDiff)
 

Static Public Member Functions

static std::unique_ptr< SIM_MODEL_SPICECreate (const SIM_LIBRARY_SPICE &aLibrary, const std::string &aSpiceCode)
 
static std::unique_ptr< SIM_MODELCreate (TYPE aType, const std::vector< LIB_PIN * > &aPins, REPORTER &aReporter)
 
static std::unique_ptr< SIM_MODELCreate (const SIM_MODEL *aBaseModel, const std::vector< LIB_PIN * > &aPins, REPORTER &aReporter)
 
template<typename T >
static std::unique_ptr< SIM_MODELCreate (const SIM_MODEL *aBaseModel, const std::vector< LIB_PIN * > &aPins, const std::vector< T > &aFields, REPORTER &aReporter)
 
template<typename T >
static std::unique_ptr< SIM_MODELCreate (const std::vector< T > &aFields, const std::vector< LIB_PIN * > &aPins, bool aResolved, REPORTER &aReporter)
 
static DEVICE_INFO DeviceInfo (DEVICE_T aDeviceType)
 
static INFO TypeInfo (TYPE aType)
 
static SPICE_INFO SpiceInfo (TYPE aType)
 
template<typename T >
static TYPE ReadTypeFromFields (const std::vector< T > &aFields, REPORTER &aReporter)
 
template<typename T >
static std::string GetFieldValue (const std::vector< T > *aFields, const wxString &aFieldName, bool aResolve=true)
 
template<typename T >
static void SetFieldValue (std::vector< T > &aFields, const wxString &aFieldName, const std::string &aValue)
 
template<class T_symbol , class T_field >
static bool InferSimModel (T_symbol &aSymbol, std::vector< T_field > *aFields, bool aResolve, SIM_VALUE_GRAMMAR::NOTATION aNotation, wxString *aDeviceType, wxString *aModelType, wxString *aModelParams, wxString *aPinMap)
 
template<class T_symbol , class T_field >
static void MigrateSimModel (T_symbol &aSymbol, const PROJECT *aProject)
 

Protected Member Functions

 DEFINE_ENUM_CLASS_WITH_ITERATOR (MODEL_TYPE, NONE, DIODE, BJT, VBIC, HICUM2, JFET, JFET2, MES, MESA, HFET1, HFET2, VDMOS, MOS1, MOS2, MOS3, BSIM1, BSIM2, MOS6, BSIM3, MOS9, B4SOI, BSIM4, B3SOIFD, B3SOIDD, B3SOIPD, HISIM2, HISIMHV1, HISIMHV2) struct MODEL_INFO
 
int doFindParam (const std::string &aParamName) const override
 
void createPins (const std::vector< LIB_PIN * > &aSymbolPins)
 
virtual void doSetParamValue (int aParamIndex, const std::string &aValue)
 

Static Protected Member Functions

static const MODEL_INFO & ModelInfo (MODEL_TYPE aType)
 
static std::unique_ptr< SIM_MODELCreate (TYPE aType)
 

Protected Attributes

std::string m_spiceCode
 
std::vector< PARAMm_params
 
std::vector< PINm_pins
 
const SIM_MODELm_baseModel
 
std::unique_ptr< SIM_MODEL_SERIALIZERm_serializer
 

Private Member Functions

bool canSilentlyIgnoreParam (const std::string &aParamName)
 
MODEL_TYPE getModelType () const
 
template<typename T >
void doReadDataFields (const std::vector< T > *aFields, const std::vector< LIB_PIN * > &aPins)
 
template<typename T >
void doWriteFields (std::vector< T > &aFields) const
 
virtual bool requiresSpiceModelLine (const SPICE_ITEM &aItem) const
 

Private Attributes

std::unique_ptr< SPICE_MODEL_PARSERm_spiceModelParser
 
std::unique_ptr< SPICE_GENERATORm_spiceGenerator
 
const TYPE m_type
 
bool m_isEnabled
 
bool m_isStoredInValue
 

Friends

struct NGSPICE_MODEL_INFO_MAP
 

Detailed Description

Definition at line 41 of file sim_model_ngspice.h.

Constructor & Destructor Documentation

◆ SIM_MODEL_NGSPICE()

Member Function Documentation

◆ AddParam()

◆ AddPin()

void SIM_MODEL::AddPin ( const PIN aPin)
inherited

◆ canSilentlyIgnoreParam()

bool SIM_MODEL_NGSPICE::canSilentlyIgnoreParam ( const std::string &  aParamName)
private

Definition at line 164 of file sim_model_ngspice.cpp.

References SIM_MODEL::GetDeviceType(), and SIM_MODEL::GetType().

Referenced by SetParamFromSpiceCode().

◆ ClearPins()

void SIM_MODEL::ClearPins ( )
inherited

Definition at line 719 of file sim_model.cpp.

References SIM_MODEL::m_pins.

Referenced by SIM_MODEL_KIBIS::SwitchSingleEndedDiff().

◆ Create() [1/6]

std::unique_ptr< SIM_MODEL_SPICE > SIM_MODEL_SPICE::Create ( const SIM_LIBRARY_SPICE aLibrary,
const std::string &  aSpiceCode 
)
staticinherited

◆ Create() [2/6]

template<typename T >
std::unique_ptr< SIM_MODEL > SIM_MODEL::Create ( const SIM_MODEL aBaseModel,
const std::vector< LIB_PIN * > &  aPins,
const std::vector< T > &  aFields,
REPORTER aReporter 
)
staticinherited

◆ Create() [3/6]

std::unique_ptr< SIM_MODEL > SIM_MODEL::Create ( const SIM_MODEL aBaseModel,
const std::vector< LIB_PIN * > &  aPins,
REPORTER aReporter 
)
staticinherited

Definition at line 478 of file sim_model.cpp.

References SIM_MODEL::Create(), and SIM_MODEL::GetType().

◆ Create() [4/6]

template<typename T >
std::unique_ptr< SIM_MODEL > SIM_MODEL::Create ( const std::vector< T > &  aFields,
const std::vector< LIB_PIN * > &  aPins,
bool  aResolved,
REPORTER aReporter 
)
staticinherited

◆ Create() [5/6]

std::unique_ptr< SIM_MODEL > SIM_MODEL::Create ( TYPE  aType)
staticprotectedinherited

Definition at line 889 of file sim_model.cpp.

◆ Create() [6/6]

std::unique_ptr< SIM_MODEL > SIM_MODEL::Create ( TYPE  aType,
const std::vector< LIB_PIN * > &  aPins,
REPORTER aReporter 
)
staticinherited

◆ createPins()

void SIM_MODEL::createPins ( const std::vector< LIB_PIN * > &  aSymbolPins)
protectedinherited

Definition at line 1000 of file sim_model.cpp.

References SIM_MODEL::AddPin(), and SIM_MODEL::GetPinNames().

Referenced by SIM_MODEL::doReadDataFields().

◆ DEFINE_ENUM_CLASS_WITH_ITERATOR() [1/3]

SIM_MODEL::DEFINE_ENUM_CLASS_WITH_ITERATOR ( DEVICE_T  ,
NONE  ,
,
C  ,
,
,
TLINE  ,
SW  ,
D  ,
NPN  ,
PNP  ,
NJFET  ,
PJFET  ,
NMES  ,
PMES  ,
NMOS  ,
PMOS  ,
,
I  ,
E  ,
F  ,
G  ,
H  ,
SUBCKT  ,
XSPICE  ,
KIBIS  ,
SPICE   
)
inlineinherited

Definition at line 78 of file sim_model.h.

◆ DEFINE_ENUM_CLASS_WITH_ITERATOR() [2/3]

SIM_MODEL_NGSPICE::DEFINE_ENUM_CLASS_WITH_ITERATOR ( MODEL_TYPE  ,
NONE  ,
DIODE  ,
BJT  ,
VBIC  ,
HICUM2  ,
JFET  ,
JFET2  ,
MES  ,
MESA  ,
HFET1  ,
HFET2  ,
VDMOS  ,
MOS1  ,
MOS2  ,
MOS3  ,
BSIM1  ,
BSIM2  ,
MOS6  ,
BSIM3  ,
MOS9  ,
B4SOI  ,
BSIM4  ,
B3SOIFD  ,
B3SOIDD  ,
B3SOIPD  ,
HISIM2  ,
HISIMHV1  ,
HISIMHV2   
)
inlineprotected

Definition at line 56 of file sim_model_ngspice.h.

References name.

◆ DEFINE_ENUM_CLASS_WITH_ITERATOR() [3/3]

SIM_MODEL::DEFINE_ENUM_CLASS_WITH_ITERATOR ( TYPE  ,
NONE  ,
,
R_POT  ,
R_BEHAVIORAL  ,
C  ,
C_BEHAVIORAL  ,
,
L_BEHAVIORAL  ,
,
TLINE_Z0  ,
TLINE_RLGC  ,
SW_V  ,
SW_I  ,
D  ,
NPN_VBIC  ,
PNP_VBIC  ,
NPN_GUMMELPOON  ,
PNP_GUMMELPOON  ,
NPN_HICUM2  ,
PNP_HICUM2  ,
NJFET_SHICHMANHODGES  ,
PJFET_SHICHMANHODGES  ,
NJFET_PARKERSKELLERN  ,
PJFET_PARKERSKELLERN  ,
NMES_STATZ  ,
PMES_STATZ  ,
NMES_YTTERDAL  ,
PMES_YTTERDAL  ,
NMES_HFET1  ,
PMES_HFET1  ,
NMES_HFET2  ,
PMES_HFET2  ,
NMOS_VDMOS  ,
PMOS_VDMOS  ,
NMOS_MOS1  ,
PMOS_MOS1  ,
NMOS_MOS2  ,
PMOS_MOS2  ,
NMOS_MOS3  ,
PMOS_MOS3  ,
NMOS_BSIM1  ,
PMOS_BSIM1  ,
NMOS_BSIM2  ,
PMOS_BSIM2  ,
NMOS_MOS6  ,
PMOS_MOS6  ,
NMOS_MOS9  ,
PMOS_MOS9  ,
NMOS_BSIM3  ,
PMOS_BSIM3  ,
NMOS_B4SOI  ,
PMOS_B4SOI  ,
NMOS_BSIM4  ,
PMOS_BSIM4  ,
NMOS_B3SOIFD  ,
PMOS_B3SOIFD  ,
NMOS_B3SOIDD  ,
PMOS_B3SOIDD  ,
NMOS_B3SOIPD  ,
PMOS_B3SOIPD  ,
NMOS_HISIM2  ,
PMOS_HISIM2  ,
NMOS_HISIMHV1  ,
PMOS_HISIMHV1  ,
NMOS_HISIMHV2  ,
PMOS_HISIMHV2  ,
,
V_SIN  ,
V_PULSE  ,
V_EXP  ,
V_AM  ,
V_SFFM  ,
V_VCL  ,
V_CCL  ,
V_PWL  ,
V_WHITENOISE  ,
V_PINKNOISE  ,
V_BURSTNOISE  ,
V_RANDUNIFORM  ,
V_RANDGAUSSIAN  ,
V_RANDEXP  ,
V_RANDPOISSON  ,
V_BEHAVIORAL  ,
I  ,
I_SIN  ,
I_PULSE  ,
I_EXP  ,
I_AM  ,
I_SFFM  ,
I_VCL  ,
I_CCL  ,
I_PWL  ,
I_WHITENOISE  ,
I_PINKNOISE  ,
I_BURSTNOISE  ,
I_RANDUNIFORM  ,
I_RANDGAUSSIAN  ,
I_RANDEXP  ,
I_RANDPOISSON  ,
I_BEHAVIORAL  ,
SUBCKT  ,
XSPICE  ,
KIBIS_DEVICE  ,
KIBIS_DRIVER_DC  ,
KIBIS_DRIVER_RECT  ,
KIBIS_DRIVER_PRBS  ,
RAWSPICE   
)
inlineinherited

Definition at line 124 of file sim_model.h.

◆ DeviceInfo()

◆ doFindParam()

int SIM_MODEL_NGSPICE::doFindParam ( const std::string &  aParamName) const
overrideprotectedvirtual

Reimplemented from SIM_MODEL.

Definition at line 84 of file sim_model_ngspice.cpp.

References SIM_MODEL::GetParams(), and SIM_MODEL::PARAM::Matches().

◆ doReadDataFields()

template<typename T >
void SIM_MODEL::doReadDataFields ( const std::vector< T > *  aFields,
const std::vector< LIB_PIN * > &  aPins 
)
privateinherited

◆ doSetParamValue()

void SIM_MODEL::doSetParamValue ( int  aParamIndex,
const std::string &  aValue 
)
protectedvirtualinherited

Reimplemented in SIM_MODEL_SOURCE.

Definition at line 859 of file sim_model.cpp.

References SIM_MODEL::m_params.

Referenced by SIM_MODEL_SOURCE::doSetParamValue(), and SIM_MODEL::SetParamValue().

◆ doWriteFields()

template<typename T >
void SIM_MODEL::doWriteFields ( std::vector< T > &  aFields) const
privateinherited

◆ FindModelPinIndex()

int SIM_MODEL::FindModelPinIndex ( const std::string &  aSymbolPinNumber)
inherited

◆ FindParam()

◆ GetBaseModel()

const SIM_MODEL * SIM_MODEL::GetBaseModel ( ) const
inlineinherited

◆ GetBaseParam()

const SIM_MODEL::PARAM & SIM_MODEL::GetBaseParam ( unsigned  aParamIndex) const
inherited

Definition at line 850 of file sim_model.cpp.

References SIM_MODEL::GetParam(), SIM_MODEL::m_baseModel, and SIM_MODEL::m_params.

◆ GetDeviceInfo()

◆ GetDeviceType()

◆ GetFieldValue() [1/2]

◆ GetFieldValue() [2/2]

template<>
std::string SIM_MODEL::GetFieldValue ( const std::vector< void > *  aFields,
const wxString &  aFieldName,
bool  aResolve 
)
inherited

Definition at line 655 of file sim_model.cpp.

◆ getModelType()

SIM_MODEL_NGSPICE::MODEL_TYPE SIM_MODEL_NGSPICE::getModelType ( ) const
private

Definition at line 228 of file sim_model_ngspice.cpp.

References SIM_MODEL::GetType().

Referenced by GetPinNames(), SetParamFromSpiceCode(), and SIM_MODEL_NGSPICE().

◆ GetParam()

◆ GetParamCount()

◆ GetParamOverride()

const SIM_MODEL::PARAM & SIM_MODEL::GetParamOverride ( unsigned  aParamIndex) const
inherited

◆ GetParams()

◆ GetPin()

◆ GetPinCount()

◆ GetPinNames()

std::vector< std::string > SIM_MODEL_NGSPICE::GetPinNames ( ) const
overridevirtual

Reimplemented from SIM_MODEL.

Definition at line 222 of file sim_model_ngspice.cpp.

References getModelType(), and ModelInfo().

◆ GetPins()

std::vector< std::reference_wrapper< const SIM_MODEL::PIN > > SIM_MODEL::GetPins ( ) const
inherited

◆ GetSpiceInfo()

◆ GetTunerParam()

virtual const PARAM * SIM_MODEL::GetTunerParam ( ) const
inlinevirtualinherited

◆ GetType()

◆ GetTypeInfo()

◆ HasAutofill()

virtual bool SIM_MODEL::HasAutofill ( ) const
inlinevirtualinherited

◆ HasPrimaryValue()

virtual bool SIM_MODEL::HasPrimaryValue ( ) const
inlinevirtualinherited

◆ InferSimModel()

template<class T_symbol , class T_field >
template bool SIM_MODEL::InferSimModel< LIB_SYMBOL, LIB_FIELD > ( T_symbol &  aSymbol,
std::vector< T_field > *  aFields,
bool  aResolve,
SIM_VALUE_GRAMMAR::NOTATION  aNotation,
wxString *  aDeviceType,
wxString *  aModelType,
wxString *  aModelParams,
wxString *  aPinMap 
)
staticinherited

◆ IsEnabled()

bool SIM_MODEL::IsEnabled ( ) const
inlineinherited

Definition at line 510 of file sim_model.h.

References SIM_MODEL::m_isEnabled.

Referenced by SIM_MODEL_SERIALIZER::GenerateEnable().

◆ IsStoredInValue()

bool SIM_MODEL::IsStoredInValue ( ) const
inlineinherited

◆ MigrateSimModel()

◆ ModelInfo()

const SIM_MODEL_NGSPICE::MODEL_INFO & SIM_MODEL_NGSPICE::ModelInfo ( MODEL_TYPE  aType)
staticprotected

Definition at line 300 of file sim_model_ngspice.cpp.

References s_ModelInfoMap.

Referenced by GetPinNames(), SetParamFromSpiceCode(), and SIM_MODEL_NGSPICE().

◆ ReadDataFields() [1/3]

template<>
void SIM_MODEL::ReadDataFields ( const std::vector< LIB_FIELD > *  aFields,
const std::vector< LIB_PIN * > &  aPins 
)
inherited

Definition at line 438 of file sim_model.cpp.

References SIM_MODEL::doReadDataFields().

◆ ReadDataFields() [2/3]

template<>
void SIM_MODEL::ReadDataFields ( const std::vector< SCH_FIELD > *  aFields,
const std::vector< LIB_PIN * > &  aPins 
)
inherited

Definition at line 430 of file sim_model.cpp.

References SIM_MODEL::doReadDataFields().

◆ ReadDataFields() [3/3]

template<typename T >
void SIM_MODEL::ReadDataFields ( const std::vector< T > *  aFields,
const std::vector< LIB_PIN * > &  aPins 
)
inherited

◆ ReadTypeFromFields()

template<typename T >
TYPE SIM_MODEL::ReadTypeFromFields ( const std::vector< T > &  aFields,
REPORTER aReporter 
)
staticinherited

◆ requiresSpiceModelLine()

◆ Serializer()

const SIM_MODEL_SERIALIZER & SIM_MODEL::Serializer ( ) const
inlineinherited

Definition at line 441 of file sim_model.h.

References SIM_MODEL::m_serializer.

Referenced by SIM_MODEL::MigrateSimModel().

◆ SetBaseModel()

void SIM_MODEL::SetBaseModel ( const SIM_MODEL aBaseModel)
virtualinherited

Reimplemented in SIM_MODEL_KIBIS, and SIM_MODEL_SUBCKT.

Definition at line 747 of file sim_model.cpp.

References SIM_MODEL::GetType(), and SIM_MODEL::m_baseModel.

Referenced by SIM_MODEL_SUBCKT::SetBaseModel().

◆ SetFieldValue()

template<typename T >
template void SIM_MODEL::SetFieldValue< LIB_FIELD > ( std::vector< T > &  aFields,
const wxString &  aFieldName,
const std::string &  aValue 
)
staticinherited

◆ SetIsEnabled()

void SIM_MODEL::SetIsEnabled ( bool  aIsEnabled)
inlineinherited

Definition at line 509 of file sim_model.h.

References SIM_MODEL::m_isEnabled.

Referenced by SIM_MODEL_SERIALIZER::ParseEnable().

◆ SetIsStoredInValue()

void SIM_MODEL::SetIsStoredInValue ( bool  aIsStoredInValue)
inlineinherited

◆ SetParamFromSpiceCode()

◆ SetParamValue() [1/2]

void SIM_MODEL::SetParamValue ( const std::string &  aParamName,
const std::string &  aValue,
SIM_VALUE::NOTATION  aNotation = SIM_VALUE::NOTATION::SI 
)
inherited

◆ SetParamValue() [2/2]

◆ SetPinSymbolPinNumber() [1/2]

void SIM_MODEL::SetPinSymbolPinNumber ( const std::string &  aPinName,
const std::string &  aSymbolPinNumber 
)
virtualinherited

Reimplemented in SIM_MODEL_RAW_SPICE, and SIM_MODEL_SPICE_FALLBACK.

Definition at line 773 of file sim_model.cpp.

References _, SIM_MODEL::m_pins, pin, and THROW_IO_ERROR.

◆ SetPinSymbolPinNumber() [2/2]

void SIM_MODEL::SetPinSymbolPinNumber ( int  aPinIndex,
const std::string &  aSymbolPinNumber 
)
inherited

◆ SpiceGenerator()

◆ SpiceInfo()

SIM_MODEL::SPICE_INFO SIM_MODEL::SpiceInfo ( TYPE  aType)
staticinherited

◆ SwitchSingleEndedDiff()

virtual void SIM_MODEL::SwitchSingleEndedDiff ( bool  aDiff)
inlinevirtualinherited

Reimplemented in SIM_MODEL_KIBIS.

Definition at line 519 of file sim_model.h.

Referenced by SIM_MODEL::doReadDataFields().

◆ TypeInfo()

◆ WriteFields() [1/3]

template<>
void SIM_MODEL::WriteFields ( std::vector< LIB_FIELD > &  aFields) const
inherited

Definition at line 453 of file sim_model.cpp.

References SIM_MODEL::doWriteFields().

◆ WriteFields() [2/3]

template<>
void SIM_MODEL::WriteFields ( std::vector< SCH_FIELD > &  aFields) const
inherited

Definition at line 446 of file sim_model.cpp.

References SIM_MODEL::doWriteFields().

◆ WriteFields() [3/3]

template<typename T >
void SIM_MODEL::WriteFields ( std::vector< T > &  aFields) const
inherited

Friends And Related Function Documentation

◆ NGSPICE_MODEL_INFO_MAP

friend struct NGSPICE_MODEL_INFO_MAP
friend

Definition at line 44 of file sim_model_ngspice.h.

Member Data Documentation

◆ m_baseModel

◆ m_isEnabled

bool SIM_MODEL::m_isEnabled
privateinherited

Definition at line 561 of file sim_model.h.

Referenced by SIM_MODEL::IsEnabled(), and SIM_MODEL::SetIsEnabled().

◆ m_isStoredInValue

bool SIM_MODEL::m_isStoredInValue
privateinherited

Definition at line 562 of file sim_model.h.

Referenced by SIM_MODEL::IsStoredInValue(), and SIM_MODEL::SetIsStoredInValue().

◆ m_params

◆ m_pins

◆ m_serializer

std::unique_ptr<SIM_MODEL_SERIALIZER> SIM_MODEL::m_serializer
protectedinherited

◆ m_spiceCode

std::string SIM_MODEL_SPICE::m_spiceCode
protectedinherited

◆ m_spiceGenerator

std::unique_ptr<SPICE_GENERATOR> SIM_MODEL::m_spiceGenerator
privateinherited

Definition at line 558 of file sim_model.h.

Referenced by SIM_MODEL::SpiceGenerator().

◆ m_spiceModelParser

std::unique_ptr<SPICE_MODEL_PARSER> SIM_MODEL_SPICE::m_spiceModelParser
privateinherited

Definition at line 68 of file sim_model_spice.h.

◆ m_type

const TYPE SIM_MODEL::m_type
privateinherited

Definition at line 560 of file sim_model.h.

Referenced by SIM_MODEL::GetType(), and SIM_MODEL::requiresSpiceModelLine().


The documentation for this class was generated from the following files: