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

Wraps a resolved single-unit base model and presents it as one component-level SPICE device. More...

#include <sim_model_multiunit.h>

Inheritance diagram for SIM_MODEL_MULTIUNIT:
SIM_MODEL_SPICE SIM_MODEL

Classes

struct  INSTANCE
 

Public Member Functions

 SIM_MODEL_MULTIUNIT (const SIM_MODEL &aBaseModel, const wxString &aBaseModelName, const std::vector< UNIT_PIN_MAP > &aUnitMaps, const std::vector< wxString > &aSharedModelPins)
 
const wxString & GetSignature () const
 
int GetInstanceCount () const
 
 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
 
const SPICE_GENERATORSpiceGenerator () const
 
const SIM_MODEL_SERIALIZERSerializer () const
 
void ReadDataFields (const std::vector< SCH_FIELD > *aFields, bool aResolve, int aDepth, const std::vector< SCH_PIN * > &aPins)
 
void WriteFields (std::vector< SCH_FIELD > &aFields, const SCH_SHEET_PATH *aSheetPath=nullptr, const wxString &aVariantName=wxEmptyString) const
 
SPICE_INFO GetSpiceInfo () const
 
void AddPin (const SIM_MODEL_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)
 
virtual std::vector< std::string > GetPinNames () const
 
int GetPinCount () const
 
const SIM_MODEL_PINGetPin (unsigned aIndex) const
 
std::vector< std::reference_wrapper< const SIM_MODEL_PIN > > GetPins () const
 
void AssignSymbolPinNumberToModelPin (int aPinIndex, const wxString &aSymbolPinNumber)
 
virtual void AssignSymbolPinNumberToModelPin (const std::string &aPinName, const wxString &aSymbolPinNumber)
 
int GetParamCount () const
 
virtual const PARAMGetParam (unsigned aParamIndex) const
 
virtual const PARAMGetTunerParam () const
 
const PARAMFindParam (const std::string &aParamName) 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, bool aFirstPass, REPORTER &aReporter)
 
static std::unique_ptr< SIM_MODELCreate (TYPE aType, const std::vector< SCH_PIN * > &aPins, REPORTER &aReporter)
 
static std::unique_ptr< SIM_MODELCreate (const SIM_MODEL *aBaseModel, const std::vector< SCH_PIN * > &aPins, REPORTER &aReporter)
 
static std::unique_ptr< SIM_MODELCreate (const SIM_MODEL *aBaseModel, const std::vector< SCH_PIN * > &aPins, const std::vector< SCH_FIELD > &aFields, bool aResolve, int aDepth, REPORTER &aReporter)
 
static std::unique_ptr< SIM_MODELCreate (const std::vector< SCH_FIELD > &aFields, bool aResolve, int aDepth, const std::vector< SCH_PIN * > &aPins, REPORTER &aReporter)
 
static DEVICE_INFO DeviceInfo (DEVICE_T aDeviceType)
 
static INFO TypeInfo (TYPE aType)
 
static SPICE_INFO SpiceInfo (TYPE aType)
 
static TYPE ReadTypeFromFields (const std::vector< SCH_FIELD > &aFields, bool aResolve, int aDepth, REPORTER &aReporter)
 
template<class T>
static bool InferSimModel (T &aSymbol, std::vector< SCH_FIELD > *aFields, bool aResolve, int aDepth, SIM_VALUE_GRAMMAR::NOTATION aNotation, wxString *aDeviceType, wxString *aModelType, wxString *aModelParams, wxString *aPinMap)
 
template<class T>
static void MigrateSimModel (T &aSymbol, const PROJECT *aProject)
 

Protected Member Functions

virtual void SetParamFromSpiceCode (const std::string &aParamName, const std::string &aParamValue, SIM_VALUE_GRAMMAR::NOTATION aNotation=SIM_VALUE_GRAMMAR::NOTATION::SPICE)
 
void createPins (const std::vector< SCH_PIN * > &aSymbolPins)
 
virtual int doFindParam (const std::string &aParamName) const
 
virtual void doSetParamValue (int aParamIndex, const std::string &aValue)
 

Static Protected Member Functions

static std::unique_ptr< SIM_MODELCreate (TYPE aType)
 

Protected Attributes

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

Private Member Functions

wxString computeSignature () const
 
virtual bool requiresSpiceModelLine (const SPICE_ITEM &aItem) const
 

Private Attributes

wxString m_baseModelName
 name referenced by each inner instance line
 
wxString m_signature
 content-derived wrapper subckt name
 
std::vector< INSTANCEm_instances
 
std::unique_ptr< SPICE_MODEL_PARSERm_spiceModelParser
 
std::unique_ptr< SPICE_GENERATORm_spiceGenerator
 
const TYPE m_type
 
bool m_isEnabled
 
bool m_isStoredInValue
 

Friends

class SPICE_GENERATOR_MULTIUNIT
 

Detailed Description

Wraps a resolved single-unit base model and presents it as one component-level SPICE device.

The synthetic outer pin list (built into the model's own pin array) is the union of the component's mapped symbol pins, so the existing ItemPins() machinery emits the outer X<refdes> line. The generator emits a matching .subckt whose body instantiates the base model once per functional unit, with shared model pins (e.g. supply rails) wired to a common node across instances.

The constructor copies everything it needs from the base model (pin names/order and the base SPICE name), so the wrapper holds no reference to it; the base only has to outlive construction.

Definition at line 123 of file sim_model_multiunit.h.

Constructor & Destructor Documentation

◆ SIM_MODEL_MULTIUNIT()

SIM_MODEL_MULTIUNIT::SIM_MODEL_MULTIUNIT ( const SIM_MODEL & aBaseModel,
const wxString & aBaseModelName,
const std::vector< UNIT_PIN_MAP > & aUnitMaps,
const std::vector< wxString > & aSharedModelPins )
Parameters
aBaseModelThe resolved single-unit model (referenced, not owned).
aBaseModelNameThe SPICE name to reference from each inner instance.
aUnitMapsPer-unit symbol-pin -> model-pin maps (see collectUnitPinMaps()).
aSharedModelPinsModel-pin names common to every instance (e.g. VCC, VEE).
Exceptions
IO_ERRORon an inconsistent decomposition (unknown/unconnected shared pin, an unassigned base pin, a shared pin resolving to multiple nets, or a base model with unsupported subcircuit instance parameters).

Definition at line 182 of file sim_model_multiunit.cpp.

References _, SIM_MODEL::GetParam(), SIM_MODEL::GetParamCount(), SIM_MODEL::GetPins(), SIM_MODEL::PARAM::info, SIM_MODEL::PARAM::INFO::isSpiceInstanceParam, m_baseModelName, pin, SIM_MODEL::SIM_MODEL(), SIM_MODEL_SPICE::SIM_MODEL_SPICE(), SPICE_GENERATOR_MULTIUNIT, and THROW_IO_ERROR.

Member Function Documentation

◆ AddParam()

◆ AddPin()

void SIM_MODEL::AddPin ( const SIM_MODEL_PIN & aPin)
inherited

Definition at line 643 of file sim_model.cpp.

References m_modelPins.

Referenced by createPins(), SIM_MODEL_SUBCKT::SetBaseModel(), and SIM_MODEL_IBIS::SetIOMode().

◆ AssignSymbolPinNumberToModelPin() [1/2]

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

Reimplemented in SIM_MODEL_RAW_SPICE, and SIM_MODEL_SPICE_FALLBACK.

Definition at line 704 of file sim_model.cpp.

References _, m_modelPins, pin, and THROW_IO_ERROR.

◆ AssignSymbolPinNumberToModelPin() [2/2]

void SIM_MODEL::AssignSymbolPinNumberToModelPin ( int aPinIndex,
const wxString & aSymbolPinNumber )
inherited

◆ ClearPins()

void SIM_MODEL::ClearPins ( )
inherited

Definition at line 649 of file sim_model.cpp.

References m_modelPins.

Referenced by SIM_MODEL_IBIS::SetIOMode().

◆ computeSignature()

wxString SIM_MODEL_MULTIUNIT::computeSignature ( ) const
private

◆ Create() [1/6]

std::unique_ptr< SIM_MODEL > SIM_MODEL::Create ( const SIM_MODEL * aBaseModel,
const std::vector< SCH_PIN * > & aPins,
const std::vector< SCH_FIELD > & aFields,
bool aResolve,
int aDepth,
REPORTER & aReporter )
staticinherited

◆ Create() [2/6]

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

Definition at line 502 of file sim_model.cpp.

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

◆ Create() [3/6]

std::unique_ptr< SIM_MODEL > SIM_MODEL::Create ( const std::vector< SCH_FIELD > & aFields,
bool aResolve,
int aDepth,
const std::vector< SCH_PIN * > & aPins,
REPORTER & aReporter )
staticinherited

◆ Create() [4/6]

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

Definition at line 830 of file sim_model.cpp.

◆ Create() [5/6]

◆ Create() [6/6]

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

◆ createPins()

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

Definition at line 941 of file sim_model.cpp.

References AddPin(), and GetPinNames().

Referenced by ReadDataFields().

◆ DEFINE_ENUM_CLASS_WITH_ITERATOR() [1/2]

SIM_MODEL::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  )
inlineinherited

Definition at line 83 of file sim_model.h.

References D, F, G, H, I, L, and NONE.

◆ DEFINE_ENUM_CLASS_WITH_ITERATOR() [2/2]

SIM_MODEL::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  )
inlineinherited

Definition at line 129 of file sim_model.h.

References D, I, L, and NONE.

◆ DeviceInfo()

SIM_MODEL::DEVICE_INFO SIM_MODEL::DeviceInfo ( DEVICE_T aDeviceType)
staticinherited

◆ doFindParam()

int SIM_MODEL::doFindParam ( const std::string & aParamName) const
protectedvirtualinherited

Reimplemented in SIM_MODEL_NGSPICE, and SIM_MODEL_SPICE_FALLBACK.

Definition at line 742 of file sim_model.cpp.

References GetParam(), GetParamCount(), and SIM_MODEL::PARAM::Matches().

Referenced by FindParam(), and SetParamValue().

◆ doSetParamValue()

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

Reimplemented in SIM_MODEL_SOURCE.

Definition at line 777 of file sim_model.cpp.

References m_params.

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

◆ FindModelPinIndex()

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

Definition at line 655 of file sim_model.cpp.

References GetPin(), GetPinCount(), and SIM_MODEL_PIN::NOT_CONNECTED.

◆ FindParam()

◆ GetBaseModel()

const SIM_MODEL * SIM_MODEL::GetBaseModel ( ) const
inlineinherited

Definition at line 460 of file sim_model.h.

References m_baseModel, and SIM_MODEL().

Referenced by SIM_MODEL_SUBCKT::SetBaseModel().

◆ GetBaseParam()

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

Definition at line 768 of file sim_model.cpp.

References m_baseModel, and m_params.

◆ GetDeviceInfo()

◆ GetDeviceType()

◆ GetInstanceCount()

int SIM_MODEL_MULTIUNIT::GetInstanceCount ( ) const
inline

Definition at line 142 of file sim_model_multiunit.h.

References m_instances.

◆ GetParam()

◆ GetParamCount()

◆ GetParamOverride()

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

Definition at line 762 of file sim_model.cpp.

References m_params.

Referenced by TEST_SIM_LIBRARY_SPICE_FIXTURE::CompareToEmptyModel().

◆ GetPin()

◆ GetPinCount()

int SIM_MODEL::GetPinCount ( ) const
inlineinherited

◆ GetPinNames()

virtual std::vector< std::string > SIM_MODEL::GetPinNames ( ) const
inlinevirtualinherited

◆ GetPins()

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

◆ GetSignature()

const wxString & SIM_MODEL_MULTIUNIT::GetSignature ( ) const
inline

Definition at line 141 of file sim_model_multiunit.h.

References m_signature.

◆ GetSpiceInfo()

◆ GetTunerParam()

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

◆ GetType()

◆ GetTypeInfo()

INFO SIM_MODEL::GetTypeInfo ( ) const
inlineinherited

◆ HasAutofill()

virtual bool SIM_MODEL::HasAutofill ( ) const
inlinevirtualinherited

Reimplemented in SIM_MODEL_SOURCE.

Definition at line 492 of file sim_model.h.

Referenced by DIALOG_SIM_MODEL< T >::updateModelParamsTab().

◆ HasPrimaryValue()

virtual bool SIM_MODEL::HasPrimaryValue ( ) const
inlinevirtualinherited

◆ InferSimModel()

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

◆ IsEnabled()

bool SIM_MODEL::IsEnabled ( ) const
inlineinherited

Definition at line 496 of file sim_model.h.

References m_isEnabled.

◆ IsStoredInValue()

bool SIM_MODEL::IsStoredInValue ( ) const
inlineinherited

Definition at line 503 of file sim_model.h.

References m_isStoredInValue.

Referenced by WriteFields().

◆ MigrateSimModel()

◆ ReadDataFields()

void SIM_MODEL::ReadDataFields ( const std::vector< SCH_FIELD > * aFields,
bool aResolve,
int aDepth,
const std::vector< SCH_PIN * > & aPins )
inherited

◆ ReadTypeFromFields()

TYPE SIM_MODEL::ReadTypeFromFields ( const std::vector< SCH_FIELD > & aFields,
bool aResolve,
int aDepth,
REPORTER & aReporter )
staticinherited

◆ requiresSpiceModelLine()

◆ Serializer()

const SIM_MODEL_SERIALIZER & SIM_MODEL::Serializer ( ) const
inlineinherited

Definition at line 429 of file sim_model.h.

References m_serializer.

Referenced by MigrateSimModel().

◆ SetBaseModel()

void SIM_MODEL::SetBaseModel ( const SIM_MODEL & aBaseModel)
virtualinherited

Reimplemented in SIM_MODEL_IBIS, and SIM_MODEL_SUBCKT.

Definition at line 677 of file sim_model.cpp.

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

Referenced by SIM_MODEL_SUBCKT::SetBaseModel().

◆ SetIsEnabled()

void SIM_MODEL::SetIsEnabled ( bool aIsEnabled)
inlineinherited

Definition at line 495 of file sim_model.h.

References m_isEnabled.

◆ SetIsStoredInValue()

void SIM_MODEL::SetIsStoredInValue ( bool aIsStoredInValue)
inlineinherited

Definition at line 498 of file sim_model.h.

References HasPrimaryValue(), and m_isStoredInValue.

◆ SetParamFromSpiceCode()

void SIM_MODEL_SPICE::SetParamFromSpiceCode ( const std::string & aParamName,
const std::string & aParamValue,
SIM_VALUE_GRAMMAR::NOTATION aNotation = SIM_VALUE_GRAMMAR::NOTATION::SPICE )
protectedvirtualinherited

Reimplemented in SIM_MODEL_NGSPICE.

Definition at line 99 of file sim_model_spice.cpp.

References SIM_MODEL::SetParamValue().

◆ SetParamValue() [1/2]

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

Definition at line 818 of file sim_model.cpp.

References doFindParam(), SetParamValue(), and THROW_IO_ERROR.

◆ SetParamValue() [2/2]

void SIM_MODEL::SetParamValue ( int aParamIndex,
const std::string & aValue,
SIM_VALUE::NOTATION aNotation = SIM_VALUE::NOTATION::SI )
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_IBIS.

Definition at line 505 of file sim_model.h.

Referenced by ReadDataFields().

◆ TypeInfo()

◆ WriteFields()

void SIM_MODEL::WriteFields ( std::vector< SCH_FIELD > & aFields,
const SCH_SHEET_PATH * aSheetPath = nullptr,
const wxString & aVariantName = wxEmptyString ) const
inherited

Friends And Related Symbol Documentation

◆ SPICE_GENERATOR_MULTIUNIT

Member Data Documentation

◆ m_baseModel

◆ m_baseModelName

wxString SIM_MODEL_MULTIUNIT::m_baseModelName
private

name referenced by each inner instance line

Definition at line 153 of file sim_model_multiunit.h.

Referenced by computeSignature(), and SIM_MODEL_MULTIUNIT().

◆ m_instances

std::vector<INSTANCE> SIM_MODEL_MULTIUNIT::m_instances
private

Definition at line 155 of file sim_model_multiunit.h.

Referenced by computeSignature(), and GetInstanceCount().

◆ m_isEnabled

bool SIM_MODEL::m_isEnabled
privateinherited

Definition at line 541 of file sim_model.h.

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

◆ m_isStoredInValue

bool SIM_MODEL::m_isStoredInValue
privateinherited

Definition at line 542 of file sim_model.h.

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

◆ m_modelPins

◆ m_params

◆ m_serializer

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

Definition at line 535 of file sim_model.h.

Referenced by ReadDataFields(), Serializer(), SIM_MODEL(), and WriteFields().

◆ m_signature

wxString SIM_MODEL_MULTIUNIT::m_signature
private

content-derived wrapper subckt name

Definition at line 154 of file sim_model_multiunit.h.

Referenced by GetSignature(), and SPICE_GENERATOR_MULTIUNIT::ModelName().

◆ 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 538 of file sim_model.h.

Referenced by SIM_MODEL(), and SpiceGenerator().

◆ m_spiceModelParser

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

Definition at line 65 of file sim_model_spice.h.

Referenced by SIM_MODEL_SPICE(), and SIM_MODEL_SPICE().

◆ m_type

const TYPE SIM_MODEL::m_type
privateinherited

Definition at line 540 of file sim_model.h.

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


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