torc-master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
torc::architecture::PrimitiveElement Class Reference

Encapsulation of a primitive site element. Primitive elements are subcomponents of logic primitive sites. More...

#include <PrimitiveElement.hpp>

+ Collaboration diagram for torc::architecture::PrimitiveElement:

Public Types

typedef std::set< std::string > StringSet
 A set of configuration values. More...
 

Public Member Functions

 PrimitiveElement (void)
 Null constructor. This constructor should only be used by containers. More...
 
PinIndex findPinIndexByName (const string &inName) const
 Returns the pin index corresponding to the given pin name, or PinIndex::undefined() if the pin name does not exist. inName The pin name to find. More...
 
const stringgetName (void) const
 Returns the name of the element. More...
 
const PrimitiveElementPinArraygetPins (void) const
 Returns a constant array of element pins. More...
 
const StringSetgetCfgs (void) const
 Returns the set of allowable configuration values. More...
 
bool isBel (void) const
 Returns true if this element is a BEL (Basic ELement). More...
 

Protected Types

typedef xilinx::PinIndex PinIndex
 Imported type name. More...
 
typedef std::string string
 Imported type name. More...
 
typedef std::map< std::string,
PinIndex
PinNameToPinIndexMap
 Map of pin names to pin indexes for a primitive element. More...
 

Protected Member Functions

PrimitiveElementPinArraygetPins (void)
 Returns a non-constant array of element pins. This function should only be used by the Sites class during database iniialization. More...
 

Protected Attributes

string mName
 The element name. More...
 
PrimitiveElementPinArray mPins
 The array of pins. More...
 
StringSet mCfgs
 The set of allowable configuration values. More...
 
bool mIsBel
 A flag indicating whether or not this element is a BEL (Basic ELement). More...
 
PinNameToPinIndexMap mPinNameToPinIndex
 The map of pin names to pin indexes. More...
 

Friends

class Sites
 The Sites class has access to our internals. More...
 
class torc::architecture::architecture::PrimitiveElementUnitTest
 Our unit test class has access to our internals. More...
 

Detailed Description

Encapsulation of a primitive site element. Primitive elements are subcomponents of logic primitive sites.

Definition at line 36 of file PrimitiveElement.hpp.

Member Typedef Documentation

Imported type name.

Definition at line 48 of file PrimitiveElement.hpp.

typedef std::map<std::string, PinIndex> torc::architecture::PrimitiveElement::PinNameToPinIndexMap
protected

Map of pin names to pin indexes for a primitive element.

Definition at line 51 of file PrimitiveElement.hpp.

typedef std::string torc::architecture::PrimitiveElement::string
protected

Imported type name.

Definition at line 49 of file PrimitiveElement.hpp.

typedef std::set<std::string> torc::architecture::PrimitiveElement::StringSet

A set of configuration values.

Definition at line 40 of file PrimitiveElement.hpp.

Constructor & Destructor Documentation

torc::architecture::PrimitiveElement::PrimitiveElement ( void  )
inline

Null constructor. This constructor should only be used by containers.

Definition at line 72 of file PrimitiveElement.hpp.

72 : mName(), mPins(), mCfgs(), mPinNameToPinIndex() {};
PrimitiveElementPinArray mPins
The array of pins.
PinNameToPinIndexMap mPinNameToPinIndex
The map of pin names to pin indexes.
StringSet mCfgs
The set of allowable configuration values.

Member Function Documentation

PinIndex torc::architecture::PrimitiveElement::findPinIndexByName ( const string inName) const
inline

Returns the pin index corresponding to the given pin name, or PinIndex::undefined() if the pin name does not exist. inName The pin name to find.

Definition at line 77 of file PrimitiveElement.hpp.

77  {
78  PinNameToPinIndexMap::const_iterator p = mPinNameToPinIndex.find(inName);
79  return (p == mPinNameToPinIndex.end())
80  ? PinIndex(PinIndex::undefined()) : p->second;
81  }
xilinx::PinIndex PinIndex
Imported type name.
PinNameToPinIndexMap mPinNameToPinIndex
The map of pin names to pin indexes.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const StringSet& torc::architecture::PrimitiveElement::getCfgs ( void  ) const
inline

Returns the set of allowable configuration values.

Definition at line 88 of file PrimitiveElement.hpp.

88 { return mCfgs; }
StringSet mCfgs
The set of allowable configuration values.

+ Here is the caller graph for this function:

const string& torc::architecture::PrimitiveElement::getName ( void  ) const
inline

Returns the name of the element.

Definition at line 84 of file PrimitiveElement.hpp.

84 { return mName; }

+ Here is the caller graph for this function:

PrimitiveElementPinArray& torc::architecture::PrimitiveElement::getPins ( void  )
inlineprotected

Returns a non-constant array of element pins. This function should only be used by the Sites class during database iniialization.

Definition at line 67 of file PrimitiveElement.hpp.

67 { return mPins; }
PrimitiveElementPinArray mPins
The array of pins.

+ Here is the caller graph for this function:

const PrimitiveElementPinArray& torc::architecture::PrimitiveElement::getPins ( void  ) const
inline

Returns a constant array of element pins.

Definition at line 86 of file PrimitiveElement.hpp.

86 { return mPins; }
PrimitiveElementPinArray mPins
The array of pins.
bool torc::architecture::PrimitiveElement::isBel ( void  ) const
inline

Returns true if this element is a BEL (Basic ELement).

Definition at line 90 of file PrimitiveElement.hpp.

90 { return mIsBel; }
bool mIsBel
A flag indicating whether or not this element is a BEL (Basic ELement).

Friends And Related Function Documentation

friend class Sites
friend

The Sites class has access to our internals.

Definition at line 44 of file PrimitiveElement.hpp.

friend class torc::architecture::architecture::PrimitiveElementUnitTest
friend

Our unit test class has access to our internals.

Definition at line 46 of file PrimitiveElement.hpp.

Field Documentation

StringSet torc::architecture::PrimitiveElement::mCfgs
protected

The set of allowable configuration values.

Definition at line 58 of file PrimitiveElement.hpp.

bool torc::architecture::PrimitiveElement::mIsBel
protected

A flag indicating whether or not this element is a BEL (Basic ELement).

Definition at line 60 of file PrimitiveElement.hpp.

string torc::architecture::PrimitiveElement::mName
protected

The element name.

Definition at line 54 of file PrimitiveElement.hpp.

PinNameToPinIndexMap torc::architecture::PrimitiveElement::mPinNameToPinIndex
protected

The map of pin names to pin indexes.

Definition at line 62 of file PrimitiveElement.hpp.

PrimitiveElementPinArray torc::architecture::PrimitiveElement::mPins
protected

The array of pins.

Definition at line 56 of file PrimitiveElement.hpp.


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