KiCad PCB EDA Suite
ibis_parser.h File Reference
#include <wx/string.h>
#include <reporter.h>
#include "widgets/wx_html_report_panel.h"
#include <iostream>
#include <fstream>
#include <vector>
#include <math.h>
#include <cstring>

Go to the source code of this file.

Classes

class  IBIS_ANY
 
class  IBIS_INPUT
 
class  IBIS_MATRIX
 
class  IBIS_MATRIX_BANDED
 
class  IBIS_MATRIX_SPARSE
 
class  IBIS_MATRIX_FULL
 
class  IBIS_SECTION
 
class  IbisHeader
 
class  TypMinMaxValue
 
class  IbisComponentPackage
 
class  IbisComponentPin
 
class  IbisComponentPinMapping
 
class  IbisDiffPinEntry
 
class  IbisDiffPin
 
class  IbisComponent
 
class  IbisModelSelectorEntry
 
class  IbisModelSelector
 
class  IVtableEntry
 
class  IVtable
 
class  VTtableEntry
 
class  VTtable
 
class  dvdt
 
class  dvdtTypMinMax
 
class  IbisRamp
 
class  IbisWaveform
 
class  IbisModel
 
class  IbisPackageModel
 
class  IbisFile
 
class  IbisParser
 

Macros

#define NAN_NA   "1"
 
#define NAN_INVALID   "0"
 
#define IBIS_MAX_VERSION   7.0
 
#define IBIS_MAX_LINE_LENGTH   2048
 
#define IBIS_REPORTER   REPORTER
 

Enumerations

enum  IBIS_CORNER { TYP = 0 , MIN , MAX }
 
enum class  IBIS_MATRIX_TYPE { UNDEFINED , BANDED , SPARSE , FULL }
 
enum class  IBIS_MODEL_TYPE {
  UNDEFINED , INPUT_STD , OUTPUT , IO ,
  THREE_STATE , OPEN_DRAIN , IO_OPEN_DRAIN , OPEN_SINK ,
  IO_OPEN_SINK , OPEN_SOURCE , IO_OPEN_SOURCE , INPUT_ECL ,
  OUTPUT_ECL , IO_ECL , THREE_STATE_ECL , TERMINATOR ,
  SERIES , SERIES_SWITCH
}
 
enum class  IBIS_MODEL_ENABLE { UNDEFINED , ACTIVE_HIGH , ACTIVE_LOW }
 
enum class  IBIS_WAVEFORM_TYPE { RISING , FALLING }
 
enum class  IBIS_MODEL_POLARITY { UNDEFINED , INVERTING , NON_INVERTING }
 
enum class  IBIS_PARSER_CONTINUE {
  NONE , STRING , COMPONENT_PACKAGE , COMPONENT_PINMAPPING ,
  COMPONENT_DIFFPIN , COMPONENT_DIESUPPLYPADS , COMPONENT_PIN , MATRIX ,
  MODELSELECTOR , MODEL , IV_TABLE , VT_TABLE ,
  RAMP , WAVEFORM , PACKAGEMODEL_PINS
}
 
enum class  IBIS_PARSER_CONTEXT {
  HEADER , COMPONENT , MODELSELECTOR , MODEL ,
  PACKAGEMODEL , PACKAGEMODEL_MODELDATA , END
}
 

Macro Definition Documentation

◆ IBIS_MAX_LINE_LENGTH

#define IBIS_MAX_LINE_LENGTH   2048

Definition at line 39 of file ibis_parser.h.

◆ IBIS_MAX_VERSION

#define IBIS_MAX_VERSION   7.0

Definition at line 38 of file ibis_parser.h.

◆ IBIS_REPORTER

#define IBIS_REPORTER   REPORTER

Definition at line 52 of file ibis_parser.h.

◆ NAN_INVALID

#define NAN_INVALID   "0"

Definition at line 36 of file ibis_parser.h.

◆ NAN_NA

#define NAN_NA   "1"

Definition at line 35 of file ibis_parser.h.

Enumeration Type Documentation

◆ IBIS_CORNER

Enumerator
TYP 
MIN 
MAX 

Definition at line 94 of file ibis_parser.h.

95{
96 TYP = 0,
97 MIN,
98 MAX
99};
@ TYP
Definition: ibis_parser.h:96
@ MIN
Definition: ibis_parser.h:97
@ MAX
Definition: ibis_parser.h:98

◆ IBIS_MATRIX_TYPE

enum class IBIS_MATRIX_TYPE
strong
Enumerator
UNDEFINED 
BANDED 
SPARSE 
FULL 

Definition at line 102 of file ibis_parser.h.

103{
104 // All matrices are supposed to be symmetrical, only upper right triangle is given
105 UNDEFINED,
106 BANDED, // Give the main diagonal + [bandwidth] elements on the right
107 SPARSE, // Only give non-zero values.
108 FULL, // Give the whole upper triangle.
109};

◆ IBIS_MODEL_ENABLE

enum class IBIS_MODEL_ENABLE
strong
Enumerator
UNDEFINED 
ACTIVE_HIGH 
ACTIVE_LOW 

Definition at line 446 of file ibis_parser.h.

◆ IBIS_MODEL_POLARITY

enum class IBIS_MODEL_POLARITY
strong
Enumerator
UNDEFINED 
INVERTING 
NON_INVERTING 

Definition at line 510 of file ibis_parser.h.

◆ IBIS_MODEL_TYPE

enum class IBIS_MODEL_TYPE
strong
Enumerator
UNDEFINED 
INPUT_STD 
OUTPUT 
IO 
THREE_STATE 
OPEN_DRAIN 
IO_OPEN_DRAIN 
OPEN_SINK 
IO_OPEN_SINK 
OPEN_SOURCE 
IO_OPEN_SOURCE 
INPUT_ECL 
OUTPUT_ECL 
IO_ECL 
THREE_STATE_ECL 
TERMINATOR 
SERIES 
SERIES_SWITCH 

Definition at line 424 of file ibis_parser.h.

◆ IBIS_PARSER_CONTEXT

enum class IBIS_PARSER_CONTEXT
strong
Enumerator
HEADER 
COMPONENT 
MODELSELECTOR 
MODEL 
PACKAGEMODEL 
PACKAGEMODEL_MODELDATA 
END 

Definition at line 642 of file ibis_parser.h.

643{
644 HEADER,
645 COMPONENT,
647 MODEL,
650 END
651};
Store all of the related footprint information found in a netlist.
Definition: pcb_netlist.h:85

◆ IBIS_PARSER_CONTINUE

enum class IBIS_PARSER_CONTINUE
strong
Enumerator
NONE 
STRING 
COMPONENT_PACKAGE 
COMPONENT_PINMAPPING 
COMPONENT_DIFFPIN 
COMPONENT_DIESUPPLYPADS 
COMPONENT_PIN 
MATRIX 
MODELSELECTOR 
MODEL 
IV_TABLE 
VT_TABLE 
RAMP 
WAVEFORM 
PACKAGEMODEL_PINS 

Definition at line 623 of file ibis_parser.h.

◆ IBIS_WAVEFORM_TYPE

enum class IBIS_WAVEFORM_TYPE
strong
Enumerator
RISING 
FALLING 

Definition at line 486 of file ibis_parser.h.