KiCad PCB EDA Suite
|
#include <ibis_parser.h>
Public Member Functions | |
IbisParser (REPORTER *aReporter) | |
bool | ParseFile (const std::string &aFileName) |
Parse a file. | |
virtual bool | Check () |
Check if the data held by the object is valid. | |
void | Report (std::string aMsg, SEVERITY aSeverity=RPT_SEVERITY_INFO) const |
Print a message. | |
Public Attributes | |
bool | m_parrot = true |
long | m_lineCounter = 0 |
char | m_commentChar = '|' |
std::vector< char > | m_buffer |
int | m_bufferIndex = 0 |
int | m_lineOffset = 0 |
int | m_lineIndex = 0 |
int | m_lineLength = 0 |
IbisFile | m_ibisFile |
IbisComponent * | m_currentComponent = nullptr |
IbisModelSelector * | m_currentModelSelector = nullptr |
IbisModel * | m_currentModel = nullptr |
IbisPackageModel * | m_currentPackageModel = nullptr |
std::shared_ptr< IBIS_MATRIX > | m_currentMatrix = nullptr |
int | m_currentMatrixRow = 0 |
int | m_currentMatrixRowIndex = 0 |
IVtable * | m_currentIVtable = nullptr |
VTtable * | m_currentVTtable = nullptr |
IbisWaveform * | m_currentWaveform = nullptr |
REPORTER * | m_reporter |
Static Protected Member Functions | |
static std::string | doubleToString (double aNumber) |
Convert a double to string using scientific notation. | |
Private Member Functions | |
bool | compareIbisWord (const std::string &a, const std::string &b) |
compare two strings without being case sensitive | |
bool | parseHeader (std::string &aKeyword) |
Parse a single keyword in the header context. | |
bool | parseComponent (std::string &aKeyword) |
Parse a single keyword in the component context. | |
bool | parseModelSelector (std::string &aKeyword) |
Parse a single keyword in the component context. | |
bool | parseModel (std::string &aKeyword) |
Parse a single keyword in the model selector context. | |
bool | parsePackageModel (std::string &aKeyword) |
Parse a single keyword in the model context. | |
bool | parsePackageModelModelData (std::string &) |
Parse a single keyword in the package model context. | |
bool | parseDouble (double &aDest, std::string &aStr, bool aAllowModifiers=false) |
Parse a double according to the ibis standard. | |
bool | onNewLine () |
Parse the current line. | |
bool | getNextLine () |
Load the next line. | |
void | printLine () |
Print the current line. | |
void | skipWhitespaces () |
bool | checkEndofLine () |
bool | isLineEmptyFromCursor () |
std::string | getKeyword () |
bool | readInt (int &aDest) |
bool | readDouble (double &aDest) |
bool | readWord (std::string &aDest) |
bool | readDvdt (std::string &aString, dvdt &aDest) |
bool | readMatrix (std::shared_ptr< IBIS_MATRIX > aDest) |
bool | readMatrixBanded (std::string, IBIS_MATRIX_BANDED &aDest) |
bool | readMatrixFull (std::string, IBIS_MATRIX_FULL &aDest) |
bool | readMatrixSparse (std::string, IBIS_MATRIX_SPARSE &aDest) |
bool | readRampdvdt (dvdtTypMinMax &aDest) |
bool | readRamp () |
bool | readModelSpec () |
bool | readWaveform (IbisWaveform *aDest, IBIS_WAVEFORM_TYPE aType) |
bool | readString (std::string &aDest) |
bool | storeString (std::string &aDest, bool aMultiline) |
bool | readTableLine (std::vector< std::string > &aDest) |
bool | readNumericSubparam (const std::string &aSubparam, double &aDest) |
bool | readIVtableEntry (IVtable &aTable) |
bool | readVTtableEntry (VTtable &aTable) |
bool | readTypMinMaxValue (TypMinMaxValue &aDest) |
bool | readTypMinMaxValueSubparam (const std::string &aSubparam, TypMinMaxValue &aDest) |
bool | readPackage () |
bool | readPin () |
bool | readPinMapping () |
bool | readDiffPin () |
bool | readModelSelector () |
bool | readModel () |
bool | readPackageModelPins () |
bool | changeCommentChar () |
Ibis can change the character used for comments. | |
bool | changeContext (std::string &aKeyword) |
Private Attributes | |
std::string * | m_continuingString = nullptr |
IBIS_PARSER_CONTINUE | m_continue = IBIS_PARSER_CONTINUE::NONE |
IBIS_PARSER_CONTEXT | m_context = IBIS_PARSER_CONTEXT::HEADER |
Definition at line 653 of file ibis_parser.h.
|
inline |
Definition at line 656 of file ibis_parser.h.
|
private |
Ibis can change the character used for comments.
Definition at line 1171 of file ibis_parser.cpp.
References _, m_buffer, m_commentChar, m_continue, m_lineIndex, m_lineOffset, IBIS_ANY::Report(), RPT_SEVERITY_ERROR, and skipWhitespaces().
Referenced by parseHeader().
|
private |
Definition at line 1258 of file ibis_parser.cpp.
References _, IbisHeader::Check(), IbisComponent::Check(), IbisModelSelector::Check(), IbisModel::Check(), IbisPackageModel::Check(), compareIbisWord(), IbisFile::m_components, m_context, m_continue, m_currentComponent, m_currentModel, m_currentModelSelector, m_currentPackageModel, IbisFile::m_header, m_ibisFile, IbisFile::m_models, IbisFile::m_modelSelectors, IbisComponent::m_name, IbisModel::m_name, IbisFile::m_packageModels, IBIS_ANY::m_reporter, IbisModel::m_temperatureRange, MS, PM, IBIS_ANY::Report(), RPT_SEVERITY_ERROR, storeString(), and TypMinMaxValue::value.
Referenced by parseComponent(), parseHeader(), parseModel(), parseModelSelector(), parsePackageModel(), and parsePackageModelModelData().
|
inlinevirtualinherited |
Check if the data held by the object is valid.
Reimplemented in IBIS_MATRIX_BANDED, IBIS_MATRIX_SPARSE, IBIS_MATRIX_FULL, IbisHeader, TypMinMaxValue, IbisComponentPackage, IbisComponentPin, IbisComponent, IbisModelSelector, IVtable, dvdtTypMinMax, IbisRamp, IbisModel, and IbisPackageModel.
Definition at line 89 of file ibis_parser.h.
|
private |
Definition at line 866 of file ibis_parser.cpp.
References _, m_lineIndex, m_lineLength, IBIS_ANY::Report(), RPT_SEVERITY_ERROR, and skipWhitespaces().
Referenced by storeString().
|
private |
compare two strings without being case sensitive
Ibis: "The content of the files is case sensitive, except for reserved words and keywords."
a | string to compare |
b | string to compare |
Definition at line 51 of file ibis_parser.cpp.
Referenced by changeContext(), parseComponent(), parseHeader(), parseModel(), parsePackageModel(), parsePackageModelModelData(), readMatrix(), readMatrixBanded(), readMatrixFull(), readMatrixSparse(), and readModel().
|
staticprotectedinherited |
Convert a double to string using scientific notation.
aNumber | Number |
Definition at line 300 of file ibis_parser.cpp.
Referenced by KIBIS_MODEL::generateSquareWave(), KIBIS_PIN::getKuKdOneWaveform(), KIBIS_PIN::getKuKdTwoWaveforms(), KIBIS_PIN::KuKdDriver(), IVtable::Spice(), KIBIS_MODEL::SpiceDie(), KIBIS_PIN::writeSpiceDevice(), and KIBIS_PIN::writeSpiceDriver().
|
private |
Definition at line 1224 of file ibis_parser.cpp.
References m_buffer, m_lineIndex, m_lineLength, and m_lineOffset.
Referenced by onNewLine().
|
private |
Load the next line.
Definition at line 986 of file ibis_parser.cpp.
References _, IBIS_MAX_LINE_LENGTH, m_buffer, m_bufferIndex, m_commentChar, m_lineCounter, m_lineIndex, m_lineLength, m_lineOffset, IBIS_ANY::Report(), and RPT_SEVERITY_ERROR.
Referenced by ParseFile().
|
private |
Definition at line 879 of file ibis_parser.cpp.
References cursor, m_buffer, m_lineIndex, m_lineLength, and m_lineOffset.
Referenced by readWaveform().
|
private |
Parse the current line.
Definition at line 2537 of file ibis_parser.cpp.
References _, getKeyword(), m_buffer, m_context, m_continue, m_continuingString, m_currentIVtable, m_currentMatrix, m_currentVTtable, m_currentWaveform, m_lineIndex, m_lineLength, m_lineOffset, IbisWaveform::m_type, parseComponent(), parseHeader(), parseModel(), parseModelSelector(), parsePackageModel(), parsePackageModelModelData(), readDiffPin(), readIVtableEntry(), readMatrix(), readModel(), readModelSelector(), readModelSpec(), readPackage(), readPackageModelPins(), readPin(), readPinMapping(), readRamp(), readString(), readVTtableEntry(), readWaveform(), IBIS_ANY::Report(), RPT_SEVERITY_ERROR, and skipWhitespaces().
Referenced by ParseFile().
|
private |
Parse a single keyword in the component context.
aKeyword | Keyword |
Definition at line 2127 of file ibis_parser.cpp.
References changeContext(), compareIbisWord(), m_currentComponent, IbisComponent::m_manufacturer, IbisComponent::m_packageModel, readDiffPin(), readPackage(), readPin(), readPinMapping(), and storeString().
Referenced by onNewLine().
|
private |
Parse a double according to the ibis standard.
aDest | Where the double should be stored |
aStr | The string to parse |
aAllowModifiers | Allows modifiers ( p for pico, f for femto, k for kilo, ... ) |
Definition at line 928 of file ibis_parser.cpp.
References NAN_INVALID, NAN_NA, and skipWhitespaces().
Referenced by readDouble(), readDvdt(), readMatrixFull(), readPackage(), and readPin().
bool IbisParser::ParseFile | ( | const std::string & | aFileName | ) |
Parse a file.
This is the entry point to parse a file
aFileName | input file name |
Definition at line 799 of file ibis_parser.cpp.
References _, getNextLine(), m_buffer, m_bufferIndex, m_context, m_lineCounter, m_parrot, onNewLine(), printLine(), IBIS_ANY::Report(), and RPT_SEVERITY_ERROR.
Referenced by KIBIS::KIBIS().
|
private |
Parse a single keyword in the header context.
aKeyword | Keyword |
Definition at line 2076 of file ibis_parser.cpp.
References changeCommentChar(), changeContext(), compareIbisWord(), IbisHeader::m_copyright, IbisHeader::m_date, IbisHeader::m_disclaimer, IbisHeader::m_fileName, IbisHeader::m_fileRevision, IbisFile::m_header, m_ibisFile, IbisHeader::m_ibisVersion, IbisHeader::m_notes, IbisHeader::m_source, readDouble(), and storeString().
Referenced by onNewLine().
|
private |
Parse a single keyword in the model selector context.
aKeyword | Keyword |
Definition at line 1453 of file ibis_parser.cpp.
References changeContext(), compareIbisWord(), IbisModel::m_Cac, m_currentModel, IbisModel::m_GNDClamp, IbisModel::m_GNDClampReference, IbisModel::m_POWERClamp, IbisModel::m_POWERClampReference, IbisModel::m_pulldown, IbisModel::m_pulldownReference, IbisModel::m_pullup, IbisModel::m_pullupReference, IbisModel::m_Rac, IbisModel::m_Rgnd, IbisModel::m_Rpower, IbisModel::m_temperatureRange, IbisModel::m_voltageRange, readIVtableEntry(), readModelSpec(), readRamp(), readTypMinMaxValue(), and readWaveform().
Referenced by onNewLine().
|
private |
Parse a single keyword in the component context.
aKeyword | Keyword |
Definition at line 1377 of file ibis_parser.cpp.
References changeContext().
Referenced by onNewLine().
|
private |
Parse a single keyword in the model context.
aKeyword | Keyword |
Definition at line 1794 of file ibis_parser.cpp.
References changeContext(), compareIbisWord(), m_context, m_continue, m_currentPackageModel, IbisPackageModel::m_description, IbisPackageModel::m_manufacturer, IbisPackageModel::m_numberOfPins, IbisPackageModel::m_OEM, readInt(), readPackageModelPins(), and storeString().
Referenced by onNewLine().
|
private |
Parse a single keyword in the package model context.
aKeyword | Keyword |
Definition at line 1750 of file ibis_parser.cpp.
References changeContext(), compareIbisWord(), IbisPackageModel::m_capacitanceMatrix, m_context, m_continue, m_currentMatrix, m_currentMatrixRow, m_currentMatrixRowIndex, m_currentPackageModel, IbisPackageModel::m_inductanceMatrix, IBIS_ANY::m_reporter, IbisPackageModel::m_resistanceMatrix, readInt(), readMatrix(), and readMatrixBanded().
Referenced by onNewLine().
|
private |
Print the current line.
Definition at line 1033 of file ibis_parser.cpp.
References m_buffer, m_lineLength, and m_lineOffset.
Referenced by ParseFile().
|
private |
Definition at line 2387 of file ibis_parser.cpp.
References _, m_continue, m_currentComponent, IbisComponent::m_diffPin, IbisDiffPin::m_entries, m_lineIndex, IBIS_ANY::m_reporter, IbisDiffPinEntry::pinA, IbisDiffPinEntry::pinB, readWord(), IBIS_ANY::Report(), and RPT_SEVERITY_ERROR.
Referenced by onNewLine(), and parseComponent().
|
private |
Definition at line 1042 of file ibis_parser.cpp.
References _, parseDouble(), readWord(), IBIS_ANY::Report(), and RPT_SEVERITY_WARNING.
Referenced by parseHeader(), readIVtableEntry(), readMatrixBanded(), readMatrixSparse(), readNumericSubparam(), readTypMinMaxValue(), and readVTtableEntry().
|
private |
Definition at line 891 of file ibis_parser.cpp.
References dvdt::m_dt, dvdt::m_dv, NAN_NA, and parseDouble().
Referenced by readRampdvdt().
|
private |
Definition at line 1064 of file ibis_parser.cpp.
References _, NAN_INVALID, NAN_NA, readWord(), IBIS_ANY::Report(), and RPT_SEVERITY_WARNING.
Referenced by parsePackageModel(), parsePackageModelModelData(), readMatrixBanded(), and readMatrixSparse().
|
private |
Definition at line 2419 of file ibis_parser.cpp.
References IVtableEntry::I, m_continue, m_currentIVtable, IVtable::m_entries, m_lineIndex, m_lineLength, IBIS_ANY::m_reporter, readDouble(), readTypMinMaxValue(), skipWhitespaces(), and IVtableEntry::V.
Referenced by onNewLine(), and parseModel().
|
private |
Definition at line 1636 of file ibis_parser.cpp.
References _, compareIbisWord(), m_continue, m_currentMatrix, m_currentPackageModel, IBIS_MATRIX::m_dim, IbisPackageModel::m_numberOfPins, IBIS_ANY::m_reporter, readMatrixBanded(), readMatrixFull(), readMatrixSparse(), readWord(), IBIS_ANY::Report(), RPT_SEVERITY_ERROR, and RPT_SEVERITY_INFO.
Referenced by onNewLine(), and parsePackageModelModelData().
|
private |
Definition at line 1512 of file ibis_parser.cpp.
References _, compareIbisWord(), IBIS_MATRIX_BANDED::m_bandwidth, m_continue, m_currentMatrix, m_currentMatrixRow, m_currentMatrixRowIndex, IBIS_MATRIX_BANDED::m_data, IBIS_MATRIX_BANDED::m_dim, readDouble(), readInt(), IBIS_ANY::Report(), and RPT_SEVERITY_ERROR.
Referenced by parsePackageModelModelData(), and readMatrix().
|
private |
Definition at line 1561 of file ibis_parser.cpp.
References _, compareIbisWord(), m_continue, m_currentMatrixRow, m_currentMatrixRowIndex, IBIS_MATRIX_FULL::m_data, IBIS_MATRIX_FULL::m_dim, parseDouble(), readTableLine(), IBIS_ANY::Report(), and RPT_SEVERITY_ERROR.
Referenced by readMatrix().
|
private |
Definition at line 1605 of file ibis_parser.cpp.
References _, compareIbisWord(), m_currentMatrixRow, IBIS_MATRIX_SPARSE::m_dim, readDouble(), readInt(), IBIS_ANY::Report(), and RPT_SEVERITY_ERROR.
Referenced by readMatrix().
|
private |
Definition at line 1934 of file ibis_parser.cpp.
References _, compareIbisWord(), IbisModel::m_C_comp, m_continue, IbisModel::m_cref, m_currentModel, IbisModel::m_enable, IbisModel::m_polarity, IbisModel::m_rref, IbisModel::m_type, IbisModel::m_vinh, IbisModel::m_vinl, IbisModel::m_vmeas, IbisModel::m_vref, readNumericSubparam(), readTypMinMaxValueSubparam(), readWord(), IBIS_ANY::Report(), and RPT_SEVERITY_ERROR.
Referenced by onNewLine().
|
private |
Definition at line 1823 of file ibis_parser.cpp.
References m_currentModelSelector, IbisModelSelectorEntry::m_modelDescription, IbisModelSelectorEntry::m_modelName, IbisModelSelector::m_models, readString(), and readWord().
Referenced by onNewLine().
|
private |
Definition at line 1439 of file ibis_parser.cpp.
References m_continue.
Referenced by onNewLine(), and parseModel().
|
private |
Definition at line 1838 of file ibis_parser.cpp.
References m_buffer, m_lineIndex, m_lineLength, m_lineOffset, readDouble(), and skipWhitespaces().
Referenced by readModel(), readRamp(), and readWaveform().
|
private |
Definition at line 2196 of file ibis_parser.cpp.
References _, m_continue, IbisComponentPackage::m_Cpkg, m_currentComponent, IbisComponentPackage::m_Lpkg, IbisComponent::m_package, IbisComponentPackage::m_Rpkg, parseDouble(), readTableLine(), IBIS_ANY::Report(), RPT_SEVERITY_ERROR, and TypMinMaxValue::value.
Referenced by onNewLine(), and parseComponent().
|
private |
Definition at line 1500 of file ibis_parser.cpp.
References m_continue, m_currentPackageModel, IbisPackageModel::m_pins, and readWord().
Referenced by onNewLine(), and parsePackageModel().
|
private |
Definition at line 2244 of file ibis_parser.cpp.
References _, m_continue, m_currentComponent, m_lineIndex, IbisComponent::m_pins, IBIS_ANY::m_reporter, parseDouble(), pin, readTableLine(), IBIS_ANY::Report(), and RPT_SEVERITY_ERROR.
Referenced by onNewLine(), and parseComponent().
|
private |
Definition at line 2342 of file ibis_parser.cpp.
References _, m_continue, m_currentComponent, IbisComponentPinMapping::m_extRef, IbisComponentPinMapping::m_GNDClampRef, IbisComponentPinMapping::m_PDref, IbisComponent::m_pinMappings, IbisComponentPinMapping::m_pinName, IbisComponentPinMapping::m_POWERClampRef, IbisComponentPinMapping::m_PUref, IBIS_ANY::m_reporter, readTableLine(), IBIS_ANY::Report(), and RPT_SEVERITY_ERROR.
Referenced by onNewLine(), and parseComponent().
|
private |
Definition at line 1408 of file ibis_parser.cpp.
References _, m_continue, m_currentModel, IbisRamp::m_falling, IbisModel::m_ramp, IbisRamp::m_rising, IbisRamp::m_Rload, readNumericSubparam(), readRampdvdt(), readWord(), IBIS_ANY::Report(), and RPT_SEVERITY_ERROR.
Referenced by onNewLine(), and parseModel().
|
private |
Definition at line 1389 of file ibis_parser.cpp.
References readDvdt(), readWord(), and dvdtTypMinMax::value.
Referenced by readRamp().
|
private |
Definition at line 1126 of file ibis_parser.cpp.
References m_buffer, m_lineIndex, m_lineLength, and m_lineOffset.
Referenced by onNewLine(), readModelSelector(), and storeString().
|
private |
Definition at line 2170 of file ibis_parser.cpp.
References m_buffer, m_lineIndex, m_lineLength, and m_lineOffset.
Referenced by readMatrixFull(), readPackage(), readPin(), and readPinMapping().
|
private |
Definition at line 1883 of file ibis_parser.cpp.
References _, readDouble(), IBIS_ANY::Report(), RPT_SEVERITY_ERROR, skipWhitespaces(), strValue(), and TypMinMaxValue::value.
Referenced by parseModel(), readIVtableEntry(), readTypMinMaxValueSubparam(), and readVTtableEntry().
|
private |
Definition at line 1903 of file ibis_parser.cpp.
References m_buffer, m_lineIndex, m_lineLength, m_lineOffset, and readTypMinMaxValue().
Referenced by readModel().
|
private |
Definition at line 2446 of file ibis_parser.cpp.
References m_continue, m_currentVTtable, VTtable::m_entries, m_lineIndex, m_lineLength, IBIS_ANY::m_reporter, readDouble(), readTypMinMaxValue(), skipWhitespaces(), VTtableEntry::t, and VTtableEntry::V.
Referenced by onNewLine(), and readWaveform().
|
private |
Definition at line 2471 of file ibis_parser.cpp.
References _, isLineEmptyFromCursor(), IbisWaveform::m_C_fixture, m_continue, m_currentModel, m_currentWaveform, IbisModel::m_fallingWaveforms, IbisWaveform::m_L_fixture, IbisWaveform::m_R_fixture, IBIS_ANY::m_reporter, IbisModel::m_risingWaveforms, IbisWaveform::m_table, IbisWaveform::m_type, IbisWaveform::m_V_fixture, IbisWaveform::m_V_fixture_max, IbisWaveform::m_V_fixture_min, readNumericSubparam(), readVTtableEntry(), IBIS_ANY::Report(), and RPT_SEVERITY_ERROR.
Referenced by onNewLine(), and parseModel().
|
private |
Definition at line 1108 of file ibis_parser.cpp.
References m_buffer, m_lineIndex, m_lineLength, m_lineOffset, and skipWhitespaces().
Referenced by readDiffPin(), readDouble(), readInt(), readMatrix(), readModel(), readModelSelector(), readPackageModelPins(), readRamp(), and readRampdvdt().
|
inlineinherited |
Print a message.
Call m_reporter->Report if m_reporter exists.
aMsg | Message |
aSeverity | Message sevirity |
Definition at line 65 of file ibis_parser.h.
References IBIS_ANY::m_reporter, and REPORTER::Report().
Referenced by BOOST_AUTO_TEST_CASE(), changeCommentChar(), changeContext(), IBIS_MATRIX_BANDED::Check(), IBIS_MATRIX_SPARSE::Check(), IBIS_MATRIX_FULL::Check(), IbisHeader::Check(), IbisComponentPackage::Check(), IbisComponentPin::Check(), IbisComponent::Check(), IVtable::Check(), IbisRamp::Check(), IbisModel::Check(), IbisPackageModel::Check(), KIBIS_WAVEFORM_PRBS::Check(), KIBIS_WAVEFORM_RECTANGULAR::Check(), checkEndofLine(), KIBIS_PIN::getKuKdFromFile(), KIBIS_PIN::getKuKdOneWaveform(), KIBIS_PIN::getKuKdTwoWaveforms(), getNextLine(), IVtable::InterpolatedI(), KIBIS_PIN::KuKdDriver(), onNewLine(), ParseFile(), readDiffPin(), readDouble(), readInt(), readMatrix(), readMatrixBanded(), readMatrixFull(), readMatrixSparse(), readModel(), readPackage(), readPin(), readPinMapping(), readRamp(), readTypMinMaxValue(), readWaveform(), KIBIS_MODEL::TrimWaveform(), KIBIS_PIN::writeSpiceDevice(), and KIBIS_PIN::writeSpiceDriver().
|
private |
Definition at line 858 of file ibis_parser.cpp.
References m_buffer, m_lineIndex, m_lineLength, and m_lineOffset.
Referenced by changeCommentChar(), checkEndofLine(), onNewLine(), parseDouble(), readIVtableEntry(), readNumericSubparam(), readTypMinMaxValue(), readVTtableEntry(), readWord(), and storeString().
|
private |
Definition at line 1155 of file ibis_parser.cpp.
References checkEndofLine(), m_continue, m_continuingString, readString(), and skipWhitespaces().
Referenced by changeContext(), parseComponent(), parseHeader(), and parsePackageModel().
std::vector<char> IbisParser::m_buffer |
Definition at line 662 of file ibis_parser.h.
Referenced by changeCommentChar(), getKeyword(), getNextLine(), isLineEmptyFromCursor(), onNewLine(), ParseFile(), printLine(), readNumericSubparam(), readString(), readTableLine(), readTypMinMaxValueSubparam(), readWord(), and skipWhitespaces().
int IbisParser::m_bufferIndex = 0 |
Definition at line 663 of file ibis_parser.h.
Referenced by getNextLine(), and ParseFile().
char IbisParser::m_commentChar = '|' |
Definition at line 661 of file ibis_parser.h.
Referenced by changeCommentChar(), and getNextLine().
|
private |
Definition at line 801 of file ibis_parser.h.
Referenced by changeContext(), onNewLine(), ParseFile(), parsePackageModel(), and parsePackageModelModelData().
|
private |
Definition at line 800 of file ibis_parser.h.
Referenced by changeCommentChar(), changeContext(), onNewLine(), parsePackageModel(), parsePackageModelModelData(), readDiffPin(), readIVtableEntry(), readMatrix(), readMatrixBanded(), readMatrixFull(), readModel(), readModelSpec(), readPackage(), readPackageModelPins(), readPin(), readPinMapping(), readRamp(), readVTtableEntry(), readWaveform(), and storeString().
|
private |
Definition at line 690 of file ibis_parser.h.
Referenced by onNewLine(), and storeString().
IbisComponent* IbisParser::m_currentComponent = nullptr |
Definition at line 669 of file ibis_parser.h.
Referenced by changeContext(), parseComponent(), readDiffPin(), readPackage(), readPin(), and readPinMapping().
IVtable* IbisParser::m_currentIVtable = nullptr |
Definition at line 676 of file ibis_parser.h.
Referenced by onNewLine(), and readIVtableEntry().
std::shared_ptr<IBIS_MATRIX> IbisParser::m_currentMatrix = nullptr |
Definition at line 673 of file ibis_parser.h.
Referenced by onNewLine(), parsePackageModelModelData(), readMatrix(), and readMatrixBanded().
int IbisParser::m_currentMatrixRow = 0 |
Definition at line 674 of file ibis_parser.h.
Referenced by parsePackageModelModelData(), readMatrixBanded(), readMatrixFull(), and readMatrixSparse().
int IbisParser::m_currentMatrixRowIndex = 0 |
Definition at line 675 of file ibis_parser.h.
Referenced by parsePackageModelModelData(), readMatrixBanded(), and readMatrixFull().
IbisModel* IbisParser::m_currentModel = nullptr |
Definition at line 671 of file ibis_parser.h.
Referenced by changeContext(), parseModel(), readModel(), readRamp(), and readWaveform().
IbisModelSelector* IbisParser::m_currentModelSelector = nullptr |
Definition at line 670 of file ibis_parser.h.
Referenced by changeContext(), and readModelSelector().
IbisPackageModel* IbisParser::m_currentPackageModel = nullptr |
Definition at line 672 of file ibis_parser.h.
Referenced by changeContext(), parsePackageModel(), parsePackageModelModelData(), readMatrix(), and readPackageModelPins().
VTtable* IbisParser::m_currentVTtable = nullptr |
Definition at line 677 of file ibis_parser.h.
Referenced by onNewLine(), and readVTtableEntry().
IbisWaveform* IbisParser::m_currentWaveform = nullptr |
Definition at line 678 of file ibis_parser.h.
Referenced by onNewLine(), and readWaveform().
IbisFile IbisParser::m_ibisFile |
Definition at line 668 of file ibis_parser.h.
Referenced by changeContext(), KIBIS_FILE::Init(), KIBIS::KIBIS(), KIBIS_MODEL::KIBIS_MODEL(), KIBIS_PIN::KIBIS_PIN(), and parseHeader().
long IbisParser::m_lineCounter = 0 |
Definition at line 660 of file ibis_parser.h.
Referenced by getNextLine(), and ParseFile().
int IbisParser::m_lineIndex = 0 |
Definition at line 665 of file ibis_parser.h.
Referenced by changeCommentChar(), checkEndofLine(), getKeyword(), getNextLine(), isLineEmptyFromCursor(), onNewLine(), readDiffPin(), readIVtableEntry(), readNumericSubparam(), readPin(), readString(), readTableLine(), readTypMinMaxValueSubparam(), readVTtableEntry(), readWord(), and skipWhitespaces().
int IbisParser::m_lineLength = 0 |
Definition at line 666 of file ibis_parser.h.
Referenced by checkEndofLine(), getKeyword(), getNextLine(), isLineEmptyFromCursor(), onNewLine(), printLine(), readIVtableEntry(), readNumericSubparam(), readString(), readTableLine(), readTypMinMaxValueSubparam(), readVTtableEntry(), readWord(), and skipWhitespaces().
int IbisParser::m_lineOffset = 0 |
Definition at line 664 of file ibis_parser.h.
Referenced by changeCommentChar(), getKeyword(), getNextLine(), isLineEmptyFromCursor(), onNewLine(), printLine(), readNumericSubparam(), readString(), readTableLine(), readTypMinMaxValueSubparam(), readWord(), and skipWhitespaces().
bool IbisParser::m_parrot = true |
Definition at line 658 of file ibis_parser.h.
Referenced by KIBIS::KIBIS(), and ParseFile().
|
inherited |
Definition at line 56 of file ibis_parser.h.
Referenced by BOOST_AUTO_TEST_CASE(), changeContext(), IBIS_ANY::IBIS_ANY(), SPICE_GENERATOR_IBIS::IbisDevice(), KIBIS::KIBIS(), parsePackageModelModelData(), readDiffPin(), readIVtableEntry(), readMatrix(), readPin(), readPinMapping(), readVTtableEntry(), readWaveform(), IBIS_ANY::Report(), and KIBIS_MODEL::TrimWaveform().