Limbo
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | List of all members
LefDataBase Class Reference

Custom class that inheritates LefParser::LefDataBase with all the required callbacks defined. This is an recommended API for LefParser, which also matches to potential bison version in the future. Actually spirit version of parser is based on template, so user does not necessarily need to inherit LefDataBase. More...

Inheritance diagram for LefDataBase:
LefParser::LefDataBase

Public Types

typedef LefParser::LefDataBase base_type
 base type
 

Public Member Functions

 LefDataBase ()
 constructor
 
virtual void lef_version_cbk (string const &v)
 set LEF version More...
 
virtual void lef_version_cbk (double v)
 set LEF version More...
 
virtual void lef_dividerchar_cbk (string const &v)
 set divider characters More...
 
virtual void lef_units_cbk (LefParser::lefiUnits const &v)
 set unit More...
 
virtual void lef_manufacturing_cbk (double v)
 set manufacturing entry More...
 
virtual void lef_busbitchars_cbk (string const &v)
 set bus bit characters More...
 
virtual void lef_layer_cbk (LefParser::lefiLayer const &v)
 add layer More...
 
virtual void lef_via_cbk (LefParser::lefiVia const &v)
 add via More...
 
virtual void lef_viarule_cbk (LefParser::lefiViaRule const &v)
 add via rule More...
 
virtual void lef_spacing_cbk (LefParser::lefiSpacing const &v)
 spacing callback More...
 
virtual void lef_site_cbk (LefParser::lefiSite const &v)
 site callback More...
 
virtual void lef_macrobegin_cbk (std::string const &v)
 macro begin callback, describe standard cell type More...
 
virtual void lef_macro_cbk (LefParser::lefiMacro const &v)
 macro callback, describe standard cell type More...
 
virtual void lef_prop_cbk (LefParser::lefiProp const &v)
 property callback More...
 
virtual void lef_maxstackvia_cbk (LefParser::lefiMaxStackVia const &v)
 noise margin callback More...
 
virtual void lef_obstruction_cbk (LefParser::lefiObstruction const &v)
 obstruction callback More...
 
virtual void lef_pin_cbk (lefiPin const &v)
 pin callback, describe pins in a standard cell More...
 
- Public Member Functions inherited from LefParser::LefDataBase
 LefDataBase ()
 constructor
 
double current_version () const
 
void current_version (double cv)
 set current version More...
 
virtual void lef_casesensitive_cbk (int v)
 set case sensitive flag More...
 
virtual void lef_nowireextension_cbk (string const &v)
 set no wire extension flag More...
 
virtual void lef_useminspacing_cbk (lefiUseMinSpacing const &v)
 set use min space More...
 
virtual void lef_clearancemeasure_cbk (string const &v)
 set clearance measure More...
 
virtual void lef_units_cbk (lefiUnits const &v)
 set unit More...
 
virtual void lef_layer_cbk (lefiLayer const &v)
 add layer More...
 
virtual void lef_maxstackvia_cbk (lefiMaxStackVia const &v)
 max stack via More...
 
virtual void lef_via_cbk (lefiVia const &v)
 add via More...
 
virtual void lef_viarule_cbk (lefiViaRule const &v)
 add via rule More...
 
virtual void lef_spacing_cbk (lefiSpacing const &v)
 spacing callback More...
 
virtual void lef_irdrop_cbk (lefiIRDrop const &v)
 IR drop callback. More...
 
virtual void lef_minfeature_cbk (lefiMinFeature const &v)
 min feature callback More...
 
virtual void lef_dielectric_cbk (double v)
 dielectric callback More...
 
virtual void lef_nondefault_cbk (lefiNonDefault const &v)
 non-default rule callback More...
 
virtual void lef_site_cbk (lefiSite const &v)
 site callback More...
 
virtual void lef_macro_cbk (lefiMacro const &v)
 macro callback, describe standard cell type More...
 
virtual void lef_obstruction_cbk (lefiObstruction const &v)
 obstruction callback, describe obstructions in a standard cell More...
 
virtual void lef_density_cbk (lefiDensity const &v)
 density callback More...
 
virtual void lef_timing_cbk (lefiTiming const &v)
 timing callback More...
 
virtual void lef_array_cbk (lefiArray const &v)
 array callback More...
 
virtual void lef_prop_cbk (lefiProp const &v)
 property callback More...
 
virtual void lef_noisemargin_cbk (lefiNoiseMargin const &v)
 noise margin callback More...
 
virtual void lef_edgeratethreshold1_cbk (double v)
 edge rate threshold 1 More...
 
virtual void lef_edgeratethreshold2_cbk (double v)
 edge rate threshold 2 More...
 
virtual void lef_edgeratescalefactor_cbk (double v)
 edge rate scale factor More...
 
virtual void lef_noisetable_cbk (lefiNoiseTable const &v)
 noise table callback More...
 
virtual void lef_correctiontable_cbk (lefiCorrectionTable const &v)
 correction table callback More...
 
virtual void lef_inputantenna_cbk (double v)
 input antenna callback More...
 
virtual void lef_outputantenna_cbk (double v)
 output antenna callback More...
 
virtual void lef_inoutantenna_cbk (double v)
 inout antenna callback More...
 
virtual void lef_antennainput_cbk (double v)
 antenna input callback More...
 
virtual void lef_antennaoutput_cbk (double v)
 antenna output callback More...
 
virtual void lef_antennainout_cbk (double v)
 antenna inout callback More...
 
virtual void lef_extension_cbk (string const &v)
 extension callback More...
 

Additional Inherited Members

- Static Public Attributes inherited from LefParser::LefDataBase
static int lefNamesCaseSensitive
 
static int lefrShiftCase
 
- Protected Attributes inherited from LefParser::LefDataBase
double m_current_version
 

Detailed Description

Custom class that inheritates LefParser::LefDataBase with all the required callbacks defined. This is an recommended API for LefParser, which also matches to potential bison version in the future. Actually spirit version of parser is based on template, so user does not necessarily need to inherit LefDataBase.

With the runtime reminder scheme, not all callbacks need to be defined in the derived database because most benchmarks only use a few keywords. If the parser detects any keyword whose callback function is not defined, it produces runtime assertion failure to remind the developer.

Definition at line 25 of file test_adapt.cpp.

Member Function Documentation

virtual void LefDataBase::lef_busbitchars_cbk ( string const &  v)
inlinevirtual

set bus bit characters

Parameters
vbut bit characters

Reimplemented from LefParser::LefDataBase.

Definition at line 69 of file test_adapt.cpp.

virtual void LefDataBase::lef_dividerchar_cbk ( string const &  v)
inlinevirtual

set divider characters

Parameters
vdivider characters

Reimplemented from LefParser::LefDataBase.

Definition at line 51 of file test_adapt.cpp.

virtual void LefDataBase::lef_layer_cbk ( LefParser::lefiLayer const &  v)
inlinevirtual

add layer

Parameters
van object for layer

Definition at line 75 of file test_adapt.cpp.

virtual void LefDataBase::lef_macro_cbk ( LefParser::lefiMacro const &  v)
inlinevirtual

macro callback, describe standard cell type

Parameters
van object for macro

Definition at line 111 of file test_adapt.cpp.

virtual void LefDataBase::lef_macrobegin_cbk ( std::string const &  v)
inlinevirtual

macro begin callback, describe standard cell type

Parameters
vname of macro

Reimplemented from LefParser::LefDataBase.

Definition at line 105 of file test_adapt.cpp.

virtual void LefDataBase::lef_manufacturing_cbk ( double  v)
inlinevirtual

set manufacturing entry

Parameters
vmanufacturing entry

Reimplemented from LefParser::LefDataBase.

Definition at line 63 of file test_adapt.cpp.

virtual void LefDataBase::lef_maxstackvia_cbk ( LefParser::lefiMaxStackVia const &  v)
inlinevirtual

noise margin callback

Parameters
van object for noise margin

Definition at line 123 of file test_adapt.cpp.

virtual void LefDataBase::lef_obstruction_cbk ( LefParser::lefiObstruction const &  v)
inlinevirtual

obstruction callback

Parameters
van object for obstruction

Definition at line 129 of file test_adapt.cpp.

virtual void LefDataBase::lef_pin_cbk ( lefiPin const &  v)
inlinevirtual

pin callback, describe pins in a standard cell

Parameters
van object for pin

Reimplemented from LefParser::LefDataBase.

Definition at line 135 of file test_adapt.cpp.

virtual void LefDataBase::lef_prop_cbk ( LefParser::lefiProp const &  v)
inlinevirtual

property callback

Parameters
van object for property

Definition at line 117 of file test_adapt.cpp.

virtual void LefDataBase::lef_site_cbk ( LefParser::lefiSite const &  v)
inlinevirtual

site callback

Parameters
van object for site

Definition at line 99 of file test_adapt.cpp.

virtual void LefDataBase::lef_spacing_cbk ( LefParser::lefiSpacing const &  v)
inlinevirtual

spacing callback

Parameters
van object for spacing

Definition at line 93 of file test_adapt.cpp.

virtual void LefDataBase::lef_units_cbk ( LefParser::lefiUnits const &  v)
inlinevirtual

set unit

Parameters
van object for unit

Definition at line 57 of file test_adapt.cpp.

virtual void LefDataBase::lef_version_cbk ( string const &  v)
inlinevirtual

set LEF version

required callbacks from abstract LefParser::LefDataBase ///////////////////

Parameters
vstring of LEF version

Reimplemented from LefParser::LefDataBase.

Definition at line 39 of file test_adapt.cpp.

virtual void LefDataBase::lef_version_cbk ( double  v)
inlinevirtual

set LEF version

Parameters
vfloating point number of LEF version

Reimplemented from LefParser::LefDataBase.

Definition at line 45 of file test_adapt.cpp.

virtual void LefDataBase::lef_via_cbk ( LefParser::lefiVia const &  v)
inlinevirtual

add via

Parameters
van object for via

Definition at line 81 of file test_adapt.cpp.

virtual void LefDataBase::lef_viarule_cbk ( LefParser::lefiViaRule const &  v)
inlinevirtual

add via rule

Parameters
van object for via rule

Definition at line 87 of file test_adapt.cpp.


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