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

#include <kibis.h>

Inheritance diagram for KIBIS_WAVEFORM_RECTANGULAR:
KIBIS_WAVEFORM KIBIS_BASE IBIS_BASE

Public Member Functions

 KIBIS_WAVEFORM_RECTANGULAR (KIBIS &aTopLevel)
 
std::vector< std::pair< int, double > > GenerateBitSequence () const override
 
bool Check (const IbisWaveform *aRisingWf, const IbisWaveform *aFallingWf) const override
 
bool Check (const dvdtTypMinMax &aRisingRp, const dvdtTypMinMax &aFallingRp) const override
 
double GetDuration () const override
 
KIBIS_WAVEFORM_TYPE GetType () const
 
void Report (const std::string &aMsg, SEVERITY aSeverity=RPT_SEVERITY_INFO) const
 Print a message.
 

Public Attributes

double m_ton = 100e-9
 
double m_toff = 100e-9
 
double m_delay = 0
 
int m_cycles = 1
 
bool inverted = false
 
KIBISm_topLevel
 
bool m_valid
 
REPORTERm_Reporter
 

Static Protected Member Functions

static std::string doubleToString (double aNumber)
 Convert a double to string using scientific notation.
 

Protected Attributes

KIBIS_WAVEFORM_TYPE m_type = KIBIS_WAVEFORM_TYPE::NONE
 

Detailed Description

Definition at line 106 of file kibis.h.

Constructor & Destructor Documentation

◆ KIBIS_WAVEFORM_RECTANGULAR()

KIBIS_WAVEFORM_RECTANGULAR::KIBIS_WAVEFORM_RECTANGULAR ( KIBIS & aTopLevel)
inline

Definition at line 109 of file kibis.h.

References KIBIS_WAVEFORM::KIBIS_WAVEFORM(), KIBIS_WAVEFORM::m_type, and RECTANGULAR.

Member Function Documentation

◆ Check() [1/2]

bool KIBIS_WAVEFORM_RECTANGULAR::Check ( const dvdtTypMinMax & aRisingRp,
const dvdtTypMinMax & aFallingRp ) const
overridevirtual

Reimplemented from KIBIS_WAVEFORM.

Definition at line 1614 of file kibis.cpp.

References _, m_cycles, dvdt::m_dt, m_toff, m_ton, MAX, MIN, IBIS_BASE::Report(), RPT_SEVERITY_ERROR, TYP, and dvdtTypMinMax::value.

◆ Check() [2/2]

bool KIBIS_WAVEFORM_RECTANGULAR::Check ( const IbisWaveform * aRisingWf,
const IbisWaveform * aFallingWf ) const
overridevirtual

Reimplemented from KIBIS_WAVEFORM.

Definition at line 1567 of file kibis.cpp.

References _, m_cycles, m_toff, m_ton, IBIS_BASE::Report(), RPT_SEVERITY_ERROR, and RPT_SEVERITY_WARNING.

◆ doubleToString()

std::string IBIS_BASE::doubleToString ( double aNumber)
staticprotectedinherited

Convert a double to string using scientific notation.

Parameters
aNumberNumber
Returns
Output string

Definition at line 281 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().

◆ GenerateBitSequence()

std::vector< std::pair< int, double > > KIBIS_WAVEFORM_RECTANGULAR::GenerateBitSequence ( ) const
overridevirtual

Reimplemented from KIBIS_WAVEFORM.

Definition at line 1511 of file kibis.cpp.

References KIBIS_WAVEFORM::inverted, m_cycles, m_delay, m_toff, and m_ton.

◆ GetDuration()

double KIBIS_WAVEFORM_RECTANGULAR::GetDuration ( ) const
inlineoverridevirtual

Reimplemented from KIBIS_WAVEFORM.

Definition at line 125 of file kibis.h.

References m_cycles, m_toff, and m_ton.

◆ GetType()

KIBIS_WAVEFORM_TYPE KIBIS_WAVEFORM::GetType ( ) const
inlineinherited

◆ Report()

void IBIS_BASE::Report ( const std::string & aMsg,
SEVERITY aSeverity = RPT_SEVERITY_INFO ) const
inlineinherited

Print a message.

Call m_Reporter->Report if m_Reporter exists.

Parameters
aMsgMessage
aSeverityMessage sevirity

Definition at line 68 of file ibis_parser.h.

References m_Reporter, and RPT_SEVERITY_INFO.

Referenced by BOOST_AUTO_TEST_CASE(), IbisParser::changeCommentChar(), IbisParser::changeContext(), IBIS_MATRIX::Check(), IbisComponent::Check(), IbisComponentPackage::Check(), IbisComponentPin::Check(), IbisHeader::Check(), IbisModel::Check(), IbisPackageModel::Check(), IbisRamp::Check(), IbisSubmodel::Check(), IVtable::Check(), KIBIS_WAVEFORM_PRBS::Check(), KIBIS_WAVEFORM_PRBS::Check(), KIBIS_WAVEFORM_RECTANGULAR::Check(), KIBIS_WAVEFORM_RECTANGULAR::Check(), IbisParser::checkEndofLine(), KIBIS_PIN::getKuKdFromFile(), KIBIS_PIN::getKuKdOneWaveform(), KIBIS_PIN::getKuKdTwoWaveforms(), IbisParser::getNextLine(), IVtable::InterpolatedI(), KIBIS_PIN::KuKdDriver(), IbisParser::onNewLine(), IbisParser::ParseFile(), IbisParser::readAddSubmodel(), IbisParser::readDiffPin(), IbisParser::readDouble(), IbisParser::readDvdt(), IbisParser::readInt(), IbisParser::readMatrixBandedOrFull(), IbisParser::readMatrixBandwidth(), IbisParser::readMatrixPinIndex(), IbisParser::readMatrixRow(), IbisParser::readMatrixSparse(), IbisParser::readMatrixType(), IbisParser::readModel(), IbisParser::readPackage(), IbisParser::readPin(), IbisParser::readPinMapping(), IbisParser::readRamp(), IbisParser::readSubmodel(), IbisParser::readSubmodelSpec(), IbisParser::readTypMinMaxValue(), IbisParser::readWaveform(), KIBIS_MODEL::TrimWaveform(), KIBIS_PIN::writeSpiceDevice(), and KIBIS_PIN::writeSpiceDriver().

Member Data Documentation

◆ inverted

◆ m_cycles

int KIBIS_WAVEFORM_RECTANGULAR::m_cycles = 1

◆ m_delay

double KIBIS_WAVEFORM_RECTANGULAR::m_delay = 0

Definition at line 117 of file kibis.h.

Referenced by GenerateBitSequence(), SPICE_GENERATOR_IBIS::IbisDevice(), and main().

◆ m_Reporter

◆ m_toff

double KIBIS_WAVEFORM_RECTANGULAR::m_toff = 100e-9

◆ m_ton

double KIBIS_WAVEFORM_RECTANGULAR::m_ton = 100e-9

◆ m_topLevel

KIBIS* KIBIS_BASE::m_topLevel
inherited

◆ m_type

◆ m_valid


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