oagTimer::LibData Class Reference

#include <oagTimerLibData.h>

Collaboration diagram for oagTimer::LibData:

Collaboration graph
[legend]
List of all members.

Public Types

typedef vector< double > axisVector

Public Member Functions

 LibData ()
 ~LibData ()
void clear ()
int pushPowerUnit (const char *s)
int pushTimeUnit (const char *s)
int pushCapUnit (const char *s)
int pushThresVal (double d, int pct, int slope)
int pushPin (const char *s)
int pushCellFootprintName (const char *s)
int pushCurrentPinName (const char *s)
int pushPinDir (const char *s)
int pushTimingSense (const char *s)
int pushTimingType (const char *s)
int pushRelatedPin (const char *s)
int pushCell (const char *s)
int pushCellFall ()
int pushCellRise ()
int pushFallTran ()
int pushRiseTran ()
int pushFallCons ()
int pushRiseCons ()
int pushPath ()
int pushRisePower ()
int pushFallPower ()
int pushVar1 (const char *s)
int pushVar2 (const char *s)
int pushAxisOrder ()
void pushTempAxis ()
int pushAxis1 (double d)
int pushAxis2 (double d)
int pushFFAxis1 (double d)
int pushFFAxis2 (double d)
int pushPowerAxis1 (double d)
int pushPowerAxis2 (double d)
int pushTable (const char *s)
int pushTableAxis1 (double d)
int pushTableAxis2 (double d)
void findIndex (const char *s)
void beginCellScope ()
void pushClock ()

Public Attributes

oaString libString
oaString viewString
libDataVector libCellNames
std::string libType
std::string currentPinDir
std::string var1
std::string var2
bool order
bool ffOrder
bool powerOrder
char * currentPinName
char * currentRelatedPin
int currentTimingSense
int currentTimingType
double currentPinCap
double currentLoadLimit
TimerModel currentModel
const TimerModelcurrentRiseDelayModel
const TimerModelcurrentRiseSlewModel
const TimerModelcurrentFallDelayModel
const TimerModelcurrentFallSlewModel
const TimerModelcurrentRiseConsModel
const TimerModelcurrentFallConsModel
const TimerModelcurrentRisePowerModel
const TimerModelcurrentFallPowerModel
double currentCellArea
double currentCellLeakPwr
char * currentCellFootprint
char * powerUnit
char * tUnit
char * capUnit
double slew_low_fall
double slew_low_rise
double slew_high_fall
double slew_high_rise

Private Member Functions

void endCellScope ()

Private Attributes

bool cellScope
bool isClock
pinDataVector currentPins
pathDataVector currentPaths
luTableMap luTable
axisVector axis1
axisVector axis2
int state

Static Private Attributes

oaVoidPointerAppDef< oaTerm > * masterAppDef

Detailed Description

This class collects all the necessary data for the .lib library.


Member Typedef Documentation

typedef vector<double> oagTimer::LibData::axisVector
 


Constructor & Destructor Documentation

oagTimer::LibData::LibData  )  [inline]
 

The constructor, initiate all the members.

oagTimer::LibData::~LibData  )  [inline]
 

The destructor, clear the data.


Member Function Documentation

void oagTimer::LibData::beginCellScope  )  [inline]
 

This function sets the cellScope to be true.

void oagTimer::LibData::clear  ) 
 

This function cleans the data.

Here is the call graph for this function:

void oagTimer::LibData::endCellScope  )  [private]
 

This function sets cell scope to be false.

void oagTimer::LibData::findIndex const char *  s  ) 
 

int oagTimer::LibData::pushAxis1 double  d  ) 
 

Push all the data in the first axis.

Here is the call graph for this function:

int oagTimer::LibData::pushAxis2 double  d  ) 
 

Push all the data in the second axis.

Here is the call graph for this function:

int oagTimer::LibData::pushAxisOrder  ) 
 

Set the order of the axes and the order of the DFF's axes order and the order of the Power.

int oagTimer::LibData::pushCapUnit const char *  s  ) 
 

int oagTimer::LibData::pushCell const char *  s  ) 
 

Collect all the information of the current cell.

Here is the call graph for this function:

int oagTimer::LibData::pushCellFall  ) 
 

Push the fall delay model.

Here is the call graph for this function:

int oagTimer::LibData::pushCellFootprintName const char *  s  ) 
 

Push the current Footprint's name.

int oagTimer::LibData::pushCellRise  ) 
 

Push the rise delay model.

Here is the call graph for this function:

void oagTimer::LibData::pushClock  )  [inline]
 

This function sets the isClock flag to be true.

int oagTimer::LibData::pushCurrentPinName const char *  s  ) 
 

Push the current pin's name.

int oagTimer::LibData::pushFallCons  ) 
 

Push the fall constraint model.

Here is the call graph for this function:

int oagTimer::LibData::pushFallPower  ) 
 

Push the fall power model.

Here is the call graph for this function:

int oagTimer::LibData::pushFallTran  ) 
 

Push the fall transition model.

Here is the call graph for this function:

int oagTimer::LibData::pushFFAxis1 double  d  ) 
 

Push all the data in the first DFF's axis.

Here is the call graph for this function:

int oagTimer::LibData::pushFFAxis2 double  d  ) 
 

Push all the data in the second DFF's axis.

Here is the call graph for this function:

int oagTimer::LibData::pushPath  ) 
 

Push all the paths of the current pin.

int oagTimer::LibData::pushPin const char *  s  ) 
 

Collect all the information of the current pin.

int oagTimer::LibData::pushPinDir const char *  s  ) 
 

Push the current pin's direction.

int oagTimer::LibData::pushPowerAxis1 double  d  ) 
 

Push all the data in the first Power's axis.

Here is the call graph for this function:

int oagTimer::LibData::pushPowerAxis2 double  d  ) 
 

Push all the data in the second Power's axis.

Here is the call graph for this function:

int oagTimer::LibData::pushPowerUnit const char *  s  ) 
 

int oagTimer::LibData::pushRelatedPin const char *  s  ) 
 

Push the related pin's name.

int oagTimer::LibData::pushRiseCons  ) 
 

Push the rise constraint model.

Here is the call graph for this function:

int oagTimer::LibData::pushRisePower  ) 
 

Push the rise power model.

Here is the call graph for this function:

int oagTimer::LibData::pushRiseTran  ) 
 

Push the rise transition model.

Here is the call graph for this function:

int oagTimer::LibData::pushTable const char *  s  ) 
 

Collect all the information of the lookup table.

int oagTimer::LibData::pushTableAxis1 double  d  ) 
 

int oagTimer::LibData::pushTableAxis2 double  d  ) 
 

void oagTimer::LibData::pushTempAxis  ) 
 

Push the template data into axis1

Here is the call graph for this function:

int oagTimer::LibData::pushThresVal double  d,
int  pct,
int  slope
 

int oagTimer::LibData::pushTimeUnit const char *  s  ) 
 

Push the Time Unit

int oagTimer::LibData::pushTimingSense const char *  s  ) 
 

Push the current timing model's sense.

int oagTimer::LibData::pushTimingType const char *  s  ) 
 

Push the current timing model's type.

int oagTimer::LibData::pushVar1 const char *  s  ) 
 

Store the first Axis' name.

int oagTimer::LibData::pushVar2 const char *  s  ) 
 

Store the second Axis' name.


Member Data Documentation

axisVector oagTimer::LibData::axis1 [private]
 

Temporary container for index_1 and index_2 table

axisVector oagTimer::LibData::axis2 [private]
 

char* oagTimer::LibData::capUnit
 

the cap unit

bool oagTimer::LibData::cellScope [private]
 

this flag indicates if it's in the cell scope

double oagTimer::LibData::currentCellArea
 

the current cell area

char* oagTimer::LibData::currentCellFootprint
 

the current cell's footprint

double oagTimer::LibData::currentCellLeakPwr
 

the current cell leakage power

const TimerModel* oagTimer::LibData::currentFallConsModel
 

the current fall constraint model

const TimerModel* oagTimer::LibData::currentFallDelayModel
 

the current fall delay model

const TimerModel* oagTimer::LibData::currentFallPowerModel
 

the current fall power model

const TimerModel* oagTimer::LibData::currentFallSlewModel
 

the current fall slew model

double oagTimer::LibData::currentLoadLimit
 

the current pin's load limit

TimerModel oagTimer::LibData::currentModel
 

the current timing model

pathDataVector oagTimer::LibData::currentPaths [private]
 

the current paths' vector of a pin

double oagTimer::LibData::currentPinCap
 

the current pin's capacitance

std::string oagTimer::LibData::currentPinDir
 

indicates the pin type: input, output

char* oagTimer::LibData::currentPinName
 

the current pin's name

pinDataVector oagTimer::LibData::currentPins [private]
 

the current pins' vector of a cell

char* oagTimer::LibData::currentRelatedPin
 

the current related pin's name

const TimerModel* oagTimer::LibData::currentRiseConsModel
 

the current rise constraint model

const TimerModel* oagTimer::LibData::currentRiseDelayModel
 

the current rise delay model

const TimerModel* oagTimer::LibData::currentRisePowerModel
 

the current rise power model

const TimerModel* oagTimer::LibData::currentRiseSlewModel
 

the current rise slew model

int oagTimer::LibData::currentTimingSense
 

the current timing sense

int oagTimer::LibData::currentTimingType
 

the current timing type

bool oagTimer::LibData::ffOrder
 

indicates the order of the two axes in DFFs

bool oagTimer::LibData::isClock [private]
 

this flag indicates if the current pin is a clock pin

libDataVector oagTimer::LibData::libCellNames
 

Cell Name in the library.

oaString oagTimer::LibData::libString
 

This is the library name.

std::string oagTimer::LibData::libType
 

Library specific name convention

luTableMap oagTimer::LibData::luTable [private]
 

lookup table data map

oaVoidPointerAppDef<oaTerm>* oagTimer::LibData::masterAppDef [static, private]
 

masterAppDef : myAppDef for oaTimingPointMaster

bool oagTimer::LibData::order
 

indicates the order of the two axes

bool oagTimer::LibData::powerOrder
 

indicates the order of the two axes of Power

char* oagTimer::LibData::powerUnit
 

the power unit

double oagTimer::LibData::slew_high_fall
 

double oagTimer::LibData::slew_high_rise
 

double oagTimer::LibData::slew_low_fall
 

double oagTimer::LibData::slew_low_rise
 

int oagTimer::LibData::state [private]
 

state indicate where to push the axis

char* oagTimer::LibData::tUnit
 

the time unit

std::string oagTimer::LibData::var1
 

std::string oagTimer::LibData::var2
 

oaString oagTimer::LibData::viewString
 

Name of view to annotate.


The documentation for this class was generated from the following files:
Generated on Thu Aug 25 14:25:11 2011 by  doxygen 1.3.9.1