|
KiCad PCB EDA Suite
|
Wraps a resolved single-unit base model and presents it as one component-level SPICE device. More...
#include <sim_model_multiunit.h>
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_GENERATOR & | SpiceGenerator () const |
| const SIM_MODEL_SERIALIZER & | Serializer () 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_MODEL * | GetBaseModel () const |
| virtual void | SetBaseModel (const SIM_MODEL &aBaseModel) |
| virtual std::vector< std::string > | GetPinNames () const |
| int | GetPinCount () const |
| const SIM_MODEL_PIN & | GetPin (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 PARAM & | GetParam (unsigned aParamIndex) const |
| virtual const PARAM * | GetTunerParam () const |
| const PARAM * | FindParam (const std::string &aParamName) const |
| const PARAM & | GetParamOverride (unsigned aParamIndex) const |
| const PARAM & | GetBaseParam (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_SPICE > | Create (const SIM_LIBRARY_SPICE &aLibrary, const std::string &aSpiceCode, bool aFirstPass, REPORTER &aReporter) |
| static std::unique_ptr< SIM_MODEL > | Create (TYPE aType, const std::vector< SCH_PIN * > &aPins, REPORTER &aReporter) |
| static std::unique_ptr< SIM_MODEL > | Create (const SIM_MODEL *aBaseModel, const std::vector< SCH_PIN * > &aPins, REPORTER &aReporter) |
| static std::unique_ptr< 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) |
| static std::unique_ptr< SIM_MODEL > | Create (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_MODEL > | Create (TYPE aType) |
Protected Attributes | |
| std::string | m_spiceCode |
| std::vector< PARAM > | m_params |
| std::vector< SIM_MODEL_PIN > | m_modelPins |
| const SIM_MODEL * | m_baseModel |
| std::unique_ptr< SIM_MODEL_SERIALIZER > | m_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< INSTANCE > | m_instances |
| std::unique_ptr< SPICE_MODEL_PARSER > | m_spiceModelParser |
| std::unique_ptr< SPICE_GENERATOR > | m_spiceGenerator |
| const TYPE | m_type |
| bool | m_isEnabled |
| bool | m_isStoredInValue |
Friends | |
| class | SPICE_GENERATOR_MULTIUNIT |
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.
| 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 ) |
| aBaseModel | The resolved single-unit model (referenced, not owned). |
| aBaseModelName | The SPICE name to reference from each inner instance. |
| aUnitMaps | Per-unit symbol-pin -> model-pin maps (see collectUnitPinMaps()). |
| aSharedModelPins | Model-pin names common to every instance (e.g. VCC, VEE). |
| IO_ERROR | on 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.
|
inherited |
Definition at line 667 of file sim_model.cpp.
References SIM_MODEL::PARAM::INFO::defaultValue, SIM_MODEL::PARAM::INFO::enumValues, and m_params.
Referenced by SIM_MODEL_IBIS::addSwitchStateParam(), SIM_MODEL_SUBCKT::SetBaseModel(), SIM_MODEL_BEHAVIORAL::SIM_MODEL_BEHAVIORAL(), SIM_MODEL_IBIS::SIM_MODEL_IBIS(), SIM_MODEL_IDEAL::SIM_MODEL_IDEAL(), SIM_MODEL_L_MUTUAL::SIM_MODEL_L_MUTUAL(), SIM_MODEL_NGSPICE::SIM_MODEL_NGSPICE(), SIM_MODEL_R_POT::SIM_MODEL_R_POT(), SIM_MODEL_SOURCE::SIM_MODEL_SOURCE(), SIM_MODEL_SPICE_FALLBACK::SIM_MODEL_SPICE_FALLBACK(), SIM_MODEL_SWITCH::SIM_MODEL_SWITCH(), and SIM_MODEL_TLINE::SIM_MODEL_TLINE().
|
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().
|
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.
|
inherited |
Definition at line 696 of file sim_model.cpp.
References m_modelPins.
Referenced by SIM_MODEL_SPICE_FALLBACK::AssignSymbolPinNumberToModelPin(), and DIALOG_SIM_MODEL< T >::removeOrphanedPinAssignments().
|
inherited |
Definition at line 649 of file sim_model.cpp.
References m_modelPins.
Referenced by SIM_MODEL_IBIS::SetIOMode().
|
private |
Definition at line 405 of file sim_model_multiunit.cpp.
References encodeIdentifier(), SIM_MODEL::GetPins(), m_baseModelName, m_instances, pin, and stableHash64().
|
staticinherited |
Definition at line 540 of file sim_model.cpp.
References _, Create(), GetFieldValue(), GetType(), model, IO_ERROR::Problem(), ReadTypeFromFields(), REFERENCE, REPORTER::Report(), RPT_SEVERITY_ERROR, and SIM_MODEL().
|
staticinherited |
Definition at line 502 of file sim_model.cpp.
References Create(), GetType(), model, and SIM_MODEL().
|
staticinherited |
Definition at line 592 of file sim_model.cpp.
References _, Create(), GetFieldValue(), model, IO_ERROR::Problem(), ReadTypeFromFields(), REFERENCE, REPORTER::Report(), RPT_SEVERITY_ERROR, SIM_PARAMS_FIELD, SIM_PINS_FIELD, SIM_VALUE_FIELD, and IO_ERROR::What().
Definition at line 830 of file sim_model.cpp.
|
staticinherited |
Definition at line 482 of file sim_model.cpp.
References Create(), and model.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), Create(), Create(), Create(), Create(), SIM_MODEL_SPICE::Create(), SIM_LIB_MGR::CreateModel(), SIM_LIB_MGR::CreateModel(), SIM_LIB_MGR::CreateModel(), SIM_LIB_MGR::CreateModel(), SIM_LIB_MGR::CreateModel(), TEST_SIM_MODEL_SOURCE_PWL_FIXTURE::GeneratePwlItemLine(), SIM_MODEL_SPICE_FALLBACK::GetPinNames(), MigrateSimModel(), SIM_LIBRARY_IBIS::ReadFile(), and SIM_MODEL_SPICE_FALLBACK::SIM_MODEL_SPICE_FALLBACK().
|
staticinherited |
Definition at line 53 of file sim_model_spice.cpp.
References SIM_MODEL::Create(), model, SPICE_MODEL_PARSER::ReadType(), and SIM_MODEL_SPICE().
Referenced by SPICE_LIBRARY_PARSER::ReadFile().
|
protectedinherited |
Definition at line 941 of file sim_model.cpp.
References AddPin(), and GetPinNames().
Referenced by ReadDataFields().
|
inlineinherited |
|
staticinherited |
Definition at line 57 of file sim_model.cpp.
Referenced by equivalent(), GetDeviceInfo(), MigrateSimModel(), DIALOG_SIM_MODEL< T >::onDeviceTypeChoice(), ReadTypeFromFields(), DIALOG_SIM_MODEL< T >::updateBuiltinModelWidgets(), and DIALOG_SIM_MODEL< T >::updateIbisWidgets().
|
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().
|
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().
|
inherited |
Definition at line 655 of file sim_model.cpp.
References GetPin(), GetPinCount(), and SIM_MODEL_PIN::NOT_CONNECTED.
|
inherited |
Definition at line 754 of file sim_model.cpp.
References doFindParam(), and GetParam().
Referenced by SIM_MODEL_IBIS::addSwitchStateParam(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), TEST_SIM_LIBRARY_SPICE_FIXTURE::CompareToUsualDiodeModel(), SIM_MODEL_R_POT::GetTunerParam(), SIM_MODEL_IBIS::SIM_MODEL_IBIS(), and TEST_SIM_LIBRARY_SPICE_FIXTURE::TestTransistor().
|
inlineinherited |
Definition at line 460 of file sim_model.h.
References m_baseModel, and SIM_MODEL().
Referenced by SIM_MODEL_SUBCKT::SetBaseModel().
|
inherited |
Definition at line 768 of file sim_model.cpp.
References m_baseModel, and m_params.
|
inlineinherited |
Definition at line 454 of file sim_model.h.
References DeviceInfo(), and GetDeviceType().
Referenced by TEST_SIM_LIBRARY_SPICE_FIXTURE::TestTransistor(), TUNER_SLIDER::TUNER_SLIDER(), DIALOG_SIM_MODEL< T >::updateBuiltinModelWidgets(), and DIALOG_SIM_MODEL< T >::updateIbisWidgets().
|
inlineinherited |
Definition at line 457 of file sim_model.h.
References GetTypeInfo().
Referenced by SIM_MODEL_NGSPICE::canSilentlyIgnoreParam(), GetDeviceInfo(), SIM_MODEL_SOURCE::GetPinNames(), DIALOG_SIM_MODEL< T >::updateBuiltinModelWidgets(), and DIALOG_SIM_MODEL< T >::updateIbisWidgets().
|
inline |
Definition at line 142 of file sim_model_multiunit.h.
References m_instances.
|
virtualinherited |
Reimplemented in SIM_MODEL_IBIS.
Definition at line 727 of file sim_model.cpp.
References m_baseModel, and m_params.
Referenced by DIALOG_SIM_MODEL< T >::addParamPropertyIfRelevant(), TEST_SIM_LIBRARY_SPICE_FIXTURE::CompareToEmptyModel(), doFindParam(), SIM_MODEL_NGSPICE::doFindParam(), SIM_MODEL_SPICE_FALLBACK::doFindParam(), SIM_MODEL_SOURCE::doSetParamValue(), FindParam(), SIM_MODEL_IDEAL::GetTunerParam(), SIM_MODEL_SOURCE::GetTunerParam(), DIALOG_SIM_MODEL< T >::newParamProperty(), SPICE_MODEL_PARSER::ReadModel(), SIM_MODEL_SUBCKT::SetBaseModel(), SIM_MODEL_NGSPICE::SetParamFromSpiceCode(), SIM_MODEL_MULTIUNIT::SIM_MODEL_MULTIUNIT(), SIM_MODEL_SPICE_FALLBACK::SIM_MODEL_SPICE_FALLBACK(), and DIALOG_SIM_MODEL< T >::updateBuiltinModelWidgets().
|
inlineinherited |
Definition at line 475 of file sim_model.h.
References m_params.
Referenced by TEST_SIM_LIBRARY_SPICE_FIXTURE::CompareToEmptyModel(), doFindParam(), SIM_MODEL_NGSPICE::doFindParam(), SIM_MODEL_SPICE_FALLBACK::doFindParam(), SIM_MODEL_SOURCE::doSetParamValue(), SPICE_MODEL_PARSER::ReadModel(), requiresSpiceModelLine(), SIM_MODEL_SUBCKT::SetBaseModel(), SIM_MODEL_NGSPICE::SetParamFromSpiceCode(), SIM_MODEL_IBIS::SIM_MODEL_IBIS(), SIM_MODEL_MULTIUNIT::SIM_MODEL_MULTIUNIT(), SIM_MODEL_SPICE_FALLBACK::SIM_MODEL_SPICE_FALLBACK(), and DIALOG_SIM_MODEL< T >::updateModelParamsTab().
|
inherited |
Definition at line 762 of file sim_model.cpp.
References m_params.
Referenced by TEST_SIM_LIBRARY_SPICE_FIXTURE::CompareToEmptyModel().
|
inlineinherited |
Definition at line 466 of file sim_model.h.
References m_modelPins.
Referenced by BOOST_AUTO_TEST_CASE(), FindModelPinIndex(), DIALOG_SIM_MODEL< T >::getModelPinString(), GetPins(), DIALOG_SIM_MODEL< T >::removeOrphanedPinAssignments(), and DIALOG_SIM_MODEL< T >::updatePinAssignments().
|
inlineinherited |
Definition at line 465 of file sim_model.h.
References m_modelPins.
Referenced by BOOST_AUTO_TEST_CASE(), FindModelPinIndex(), GetPins(), DIALOG_SIM_MODEL< T >::removeOrphanedPinAssignments(), and DIALOG_SIM_MODEL< T >::updatePinAssignments().
|
inlinevirtualinherited |
Reimplemented in SIM_MODEL_BEHAVIORAL, SIM_MODEL_IDEAL, SIM_MODEL_NGSPICE, SIM_MODEL_R_POT, SIM_MODEL_SOURCE, SIM_MODEL_SPICE_FALLBACK, SIM_MODEL_SWITCH, and SIM_MODEL_TLINE.
Definition at line 463 of file sim_model.h.
Referenced by createPins().
|
inherited |
Definition at line 686 of file sim_model.cpp.
References GetPin(), and GetPinCount().
Referenced by SIM_MODEL_MULTIUNIT::computeSignature(), SIM_MODEL_SUBCKT::SetBaseModel(), and SIM_MODEL_MULTIUNIT::SIM_MODEL_MULTIUNIT().
|
inline |
Definition at line 141 of file sim_model_multiunit.h.
References m_signature.
|
inlineinherited |
Definition at line 446 of file sim_model.h.
References GetType(), and SpiceInfo().
Referenced by TEST_SIM_LIBRARY_SPICE_FIXTURE::CompareToEmptyModel(), TEST_SIM_LIBRARY_SPICE_FIXTURE::CompareToUsualDiodeModel(), and TEST_SIM_LIBRARY_SPICE_FIXTURE::TestTransistor().
|
inlinevirtualinherited |
Reimplemented in SIM_MODEL_IDEAL, SIM_MODEL_R_POT, and SIM_MODEL_SOURCE.
Definition at line 478 of file sim_model.h.
Referenced by SIMULATOR_FRAME_UI::applyTuners(), and TUNER_SLIDER::TUNER_SLIDER().
|
inlineinherited |
Definition at line 458 of file sim_model.h.
References m_type.
Referenced by SIM_MODEL_NGSPICE::canSilentlyIgnoreParam(), TEST_SIM_LIBRARY_SPICE_FIXTURE::CompareToUsualDiodeModel(), Create(), Create(), SIM_MODEL_NGSPICE::getModelType(), SIM_MODEL_SPICE_FALLBACK::GetPinNames(), GetSpiceInfo(), SIM_MODEL_SOURCE::GetTunerParam(), GetTypeInfo(), SIM_MODEL_SOURCE::HasPrimaryValue(), NETLIST_EXPORTER_SPICE::readModel(), SPICE_MODEL_PARSER::ReadType(), SetBaseModel(), TEST_SIM_LIBRARY_SPICE_FIXTURE::TestTransistor(), TUNER_SLIDER::TUNER_SLIDER(), SPICE_GENERATOR_SOURCE::TunerCommand(), DIALOG_SIM_MODEL< T >::updateBuiltinModelWidgets(), DIALOG_SIM_MODEL< T >::updateIbisWidgets(), and DIALOG_SIM_MODEL< T >::updatePinAssignments().
|
inlineinherited |
Definition at line 455 of file sim_model.h.
References GetType(), and TypeInfo().
Referenced by GetDeviceType(), TEST_SIM_LIBRARY_SPICE_FIXTURE::TestTransistor(), and TUNER_SLIDER::TUNER_SLIDER().
|
inlinevirtualinherited |
Reimplemented in SIM_MODEL_SOURCE.
Definition at line 492 of file sim_model.h.
Referenced by DIALOG_SIM_MODEL< T >::updateModelParamsTab().
|
inlinevirtualinherited |
Reimplemented in SIM_MODEL_IDEAL, SIM_MODEL_R_POT, and SIM_MODEL_SOURCE.
Definition at line 493 of file sim_model.h.
Referenced by SetIsStoredInValue(), and DIALOG_SIM_MODEL< T >::updateBuiltinModelWidgets().
|
staticinherited |
KiCad Spice PEGTL only handles ASCII Although these two look the same, they are U+03BC and U+00B5
Definition at line 1020 of file sim_model.cpp.
References convertSeparators(), GetFieldValue(), LIB_SYMBOL::GetGraphicalPins(), SCH_SYMBOL::GetPins(), library, SIM_VALUE_GRAMMAR::SI, SIM_DEVICE_FIELD, SIM_DEVICE_SUBTYPE_FIELD, SIM_LIBRARY_FIELD, SIM_NAME_FIELD, SIM_PARAMS_FIELD, SIM_PINS_FIELD, SIM_VALUE_FIELD, SIM_VALUE_GRAMMAR::SPICE, and T.
Referenced by BOOST_AUTO_TEST_CASE(), buildDialogFields(), SIM_LIB_MGR::CreateModel(), and DIALOG_SIM_MODEL< T >::TransferDataToWindow().
|
inlineinherited |
Definition at line 496 of file sim_model.h.
References m_isEnabled.
|
inlineinherited |
Definition at line 503 of file sim_model.h.
References m_isStoredInValue.
Referenced by WriteFields().
|
staticinherited |
Definition at line 1365 of file sim_model.cpp.
References LIB_SYMBOL::AppendParentEmbeddedFiles(), Create(), SIM_LIB_MGR::CreateModel(), DEFAULT_SIZE_TEXT, DeviceInfo(), SIM_MODEL_SERIALIZER::GeneratePins(), EDA_TEXT::GetAttributes(), SCH_FIELD::GetBoundingBox(), SCHEMATIC::GetEmbeddedFiles(), LIB_SYMBOL::GetGraphicalPins(), BOX2< Vec >::GetHeight(), EDA_TEXT::GetHorizJustify(), SCH_SYMBOL::GetLibSymbolRef(), SCH_SYMBOL::GetPins(), SCH_FIELD::GetPosition(), SCH_FIELD::GetShownText(), SCH_FIELD::GetText(), BOX2< Vec >::GetWidth(), GR_TEXT_H_ALIGN_RIGHT, EDA_TEXT::IsVisible(), KiROUND(), model, SIM_LIBRARY::MODEL::model, reporter, SCH_ITEM::Schematic(), schIUScale, Serializer(), EDA_TEXT::SetAttributes(), SIM_LIB_MGR::SetFilesStack(), SCH_FIELD::SetPosition(), SCH_FIELD::SetText(), EDA_TEXT::SetVisible(), SIM_DEVICE_FIELD, SIM_DEVICE_SUBTYPE_FIELD, SIM_LEGACY_ENABLE_FIELD, SIM_LEGACY_LIBRARY_FIELD, SIM_LEGACY_MODEL_FIELD, SIM_LEGACY_PINS_FIELD, SIM_LEGACY_PRIMITIVE_FIELD, SIM_LIBRARY_FIELD, SIM_NAME_FIELD, SIM_PARAMS_FIELD, SIM_PINS_FIELD, SIM_VALUE_GRAMMAR::SPICE, SpiceInfo(), T, TypeInfo(), USER, VALUE, and wxStringSplit().
Referenced by LEGACY_SYMBOL_LIB::FindSymbol(), and SCH_SCREEN::MigrateSimModels().
|
inherited |
Definition at line 427 of file sim_model.cpp.
References createPins(), SIM_LIBRARY_IBIS::DIFF_FIELD, GetFieldValue(), m_serializer, SIM_LEGACY_ENABLE_FIELD_V7, SIM_PARAMS_FIELD, SIM_PINS_FIELD, SIM_VALUE_FIELD, and SwitchSingleEndedDiff().
|
staticinherited |
Definition at line 387 of file sim_model.cpp.
References _, DeviceInfo(), GetFieldValue(), REFERENCE, REPORTER::Report(), RPT_SEVERITY_ERROR, SIM_DEVICE_FIELD, SIM_DEVICE_SUBTYPE_FIELD, and TypeInfo().
Referenced by Create(), Create(), and DIALOG_SIM_MODEL< T >::TransferDataToWindow().
|
privatevirtualinherited |
Reimplemented in SIM_MODEL_IBIS, SIM_MODEL_RAW_SPICE, and SIM_MODEL_SWITCH.
Definition at line 976 of file sim_model.cpp.
References SPICE_ITEM::baseModelName, GetParamCount(), SIM_MODEL::PARAM::info, SIM_MODEL::PARAM::INFO::isSpiceInstanceParam, m_baseModel, m_params, m_type, SIM_VALUE::Normalize(), SIM_MODEL(), SIM_VALUE::ToDouble(), and SIM_MODEL::PARAM::value.
Referenced by NETLIST_EXPORTER_SPICE::readModel().
|
inlineinherited |
Definition at line 429 of file sim_model.h.
References m_serializer.
Referenced by MigrateSimModel().
|
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().
|
inlineinherited |
Definition at line 495 of file sim_model.h.
References m_isEnabled.
|
inlineinherited |
Definition at line 498 of file sim_model.h.
References HasPrimaryValue(), and m_isStoredInValue.
|
protectedvirtualinherited |
Reimplemented in SIM_MODEL_NGSPICE.
Definition at line 99 of file sim_model_spice.cpp.
References SIM_MODEL::SetParamValue().
|
inherited |
Definition at line 818 of file sim_model.cpp.
References doFindParam(), SetParamValue(), and THROW_IO_ERROR.
|
inherited |
Definition at line 783 of file sim_model.cpp.
References SIM_VALUE::ConvertNotation(), and doSetParamValue().
Referenced by BOOST_AUTO_TEST_CASE(), SIM_MODEL_SOURCE::doSetParamValue(), SIM_MODEL_BEHAVIORAL::parseValueField(), SIM_MODEL_NGSPICE::SetParamFromSpiceCode(), SIM_MODEL_SPICE::SetParamFromSpiceCode(), SetParamValue(), and SIM_MODEL_IBIS::SIM_MODEL_IBIS().
|
inlineinherited |
Definition at line 428 of file sim_model.h.
References m_spiceGenerator, and SPICE_GENERATOR.
Referenced by SIMULATOR_FRAME_UI::applyTuners(), BOOST_AUTO_TEST_CASE(), NETLIST_EXPORTER_SPICE::readModel(), SPICE_GENERATOR_IDEAL::TunerCommand(), SPICE_GENERATOR_R_POT::TunerCommand(), SPICE_GENERATOR_SOURCE::TunerCommand(), and DIALOG_SIM_MODEL< T >::updateModelCodeTab().
|
staticinherited |
Definition at line 246 of file sim_model.cpp.
Referenced by GetSpiceInfo(), MigrateSimModel(), and SPICE_MODEL_PARSER::ReadTypeFromSpiceStrings().
|
inlinevirtualinherited |
Reimplemented in SIM_MODEL_IBIS.
Definition at line 505 of file sim_model.h.
Referenced by ReadDataFields().
|
staticinherited |
Definition at line 102 of file sim_model.cpp.
Referenced by GetTypeInfo(), MigrateSimModel(), DIALOG_SIM_MODEL< T >::onTypeChoice(), DIALOG_SIM_MODEL< T >::onWaveformChoice(), ReadTypeFromFields(), DIALOG_SIM_MODEL< T >::TransferDataToWindow(), DIALOG_SIM_MODEL< T >::updateBuiltinModelWidgets(), and DIALOG_SIM_MODEL< T >::updateIbisWidgets().
|
inherited |
Definition at line 445 of file sim_model.cpp.
References IsStoredInValue(), m_serializer, SetFieldValue(), SIM_DEVICE_FIELD, SIM_DEVICE_SUBTYPE_FIELD, SIM_LEGACY_ENABLE_FIELD_V7, SIM_PARAMS_FIELD, SIM_PINS_FIELD, and SIM_VALUE_FIELD.
|
friend |
Definition at line 126 of file sim_model_multiunit.h.
References SIM_MODEL::SIM_MODEL(), and SPICE_GENERATOR_MULTIUNIT.
Referenced by SIM_MODEL_MULTIUNIT(), and SPICE_GENERATOR_MULTIUNIT.
|
protectedinherited |
Definition at line 534 of file sim_model.h.
Referenced by GetBaseModel(), GetBaseParam(), GetParam(), SIM_MODEL_RAW_SPICE::GetSource(), SIM_MODEL_SUBCKT::GetSpiceCode(), requiresSpiceModelLine(), SetBaseModel(), and SIM_MODEL().
|
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().
|
private |
Definition at line 155 of file sim_model_multiunit.h.
Referenced by computeSignature(), and GetInstanceCount().
|
privateinherited |
Definition at line 541 of file sim_model.h.
Referenced by IsEnabled(), SetIsEnabled(), and SIM_MODEL().
|
privateinherited |
Definition at line 542 of file sim_model.h.
Referenced by IsStoredInValue(), SetIsStoredInValue(), and SIM_MODEL().
|
protectedinherited |
Definition at line 533 of file sim_model.h.
Referenced by AddPin(), AssignSymbolPinNumberToModelPin(), AssignSymbolPinNumberToModelPin(), SIM_MODEL_RAW_SPICE::AssignSymbolPinNumberToModelPin(), SIM_MODEL_SPICE_FALLBACK::AssignSymbolPinNumberToModelPin(), ClearPins(), GetPin(), and GetPinCount().
|
protectedinherited |
Definition at line 532 of file sim_model.h.
Referenced by AddParam(), doSetParamValue(), SIM_MODEL_SOURCE::doSetParamValue(), GetBaseParam(), GetParam(), SIM_MODEL_IBIS::GetParam(), GetParamCount(), GetParamOverride(), SIM_MODEL_IBIS::removeSwitchStateParam(), requiresSpiceModelLine(), and SIM_MODEL_IBIS::SIM_MODEL_IBIS().
|
protectedinherited |
Definition at line 535 of file sim_model.h.
Referenced by ReadDataFields(), Serializer(), SIM_MODEL(), and WriteFields().
|
private |
content-derived wrapper subckt name
Definition at line 154 of file sim_model_multiunit.h.
Referenced by GetSignature(), and SPICE_GENERATOR_MULTIUNIT::ModelName().
|
protectedinherited |
Definition at line 62 of file sim_model_spice.h.
Referenced by SIM_MODEL_SPICE_FALLBACK::GetSpiceCode(), SIM_MODEL_SUBCKT::GetSpiceCode(), SPICE_GENERATOR_SPICE::Preview(), and SIM_MODEL_SPICE_FALLBACK::SIM_MODEL_SPICE_FALLBACK().
|
privateinherited |
Definition at line 538 of file sim_model.h.
Referenced by SIM_MODEL(), and SpiceGenerator().
|
privateinherited |
Definition at line 65 of file sim_model_spice.h.
Referenced by SIM_MODEL_SPICE(), and SIM_MODEL_SPICE().
|
privateinherited |
Definition at line 540 of file sim_model.h.
Referenced by GetType(), requiresSpiceModelLine(), and SIM_MODEL().