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

Encapsulation of a device logic site. More...

#include <Site.hpp>

+ Collaboration diagram for torc::architecture::Site:

Public Types

typedef Array< const WireIndexWireIndexArray
 Array of constant wire indexes. More...
 

Public Member Functions

 Site (void)
 Null constructor (for use in containers only). More...
 
const Tilewire getPinTilewire (const std::string &inName) const
 Returns the Tilewire associated with the specified pin name. More...
 
const stringgetName (void) const
 Returns the site name. More...
 
const PrimitiveDefgetPrimitiveDefPtr (void) const
 Returns a pointer to the associated primitive definition. More...
 
TileIndex getTileIndex (void) const
 Returns the index of the containing tile. More...
 
SiteFlags getFlags (void) const
 Returns the flags associated with this site. More...
 
const WireIndexArraygetPinMapPtr (void) const
 Returns the pin to wire map for this site. More...
 

Protected Types

typedef std::string string
 Imported type name. More...
 
typedef xilinx::PinIndex PinIndex
 Imported type name. More...
 
typedef xilinx::TileIndex TileIndex
 Imported type name. More...
 
typedef xilinx::WireIndex WireIndex
 Imported type name. More...
 
typedef xilinx::SiteFlags SiteFlags
 Imported type name. More...
 

Protected Member Functions

 Site (const string &inName, const PrimitiveDef &inPrimitiveDef, TileIndex inTileIndex, SiteFlags inFlags, const WireIndexArray &inPinMap)
 Protected constructor. More...
 

Protected Attributes

string mName
 The logic site name. More...
 
const PrimitiveDefmPrimitiveDefPtr
 Pointer to the associated primitive definition. More...
 
TileIndex mTileIndex
 The index of the containing tile. More...
 
SiteFlags mFlags
 The flags associated with this site. More...
 
const WireIndexArraymPinMapPtr
 The pin to wire map for this site. More...
 

Friends

class Sites
 The Sites class has access to our internals. More...
 

Detailed Description

Encapsulation of a device logic site.

Definition at line 30 of file Site.hpp.

Member Typedef Documentation

Imported type name.

Definition at line 37 of file Site.hpp.

Imported type name.

Definition at line 40 of file Site.hpp.

typedef std::string torc::architecture::Site::string
protected

Imported type name.

Definition at line 36 of file Site.hpp.

Imported type name.

Definition at line 38 of file Site.hpp.

Imported type name.

Definition at line 39 of file Site.hpp.

Array of constant wire indexes.

Definition at line 44 of file Site.hpp.

Constructor & Destructor Documentation

torc::architecture::Site::Site ( const string inName,
const PrimitiveDef inPrimitiveDef,
TileIndex  inTileIndex,
SiteFlags  inFlags,
const WireIndexArray inPinMap 
)
inlineprotected

Protected constructor.

Definition at line 59 of file Site.hpp.

61  : mName(inName), mPrimitiveDefPtr(&inPrimitiveDef), mTileIndex(inTileIndex),
62  mFlags(inFlags), mPinMapPtr(&inPinMap) {
63  }
const PrimitiveDef * mPrimitiveDefPtr
Pointer to the associated primitive definition.
Definition: Site.hpp:50
TileIndex mTileIndex
The index of the containing tile.
Definition: Site.hpp:52
SiteFlags mFlags
The flags associated with this site.
Definition: Site.hpp:54
const WireIndexArray * mPinMapPtr
The pin to wire map for this site.
Definition: Site.hpp:56
string mName
The logic site name.
Definition: Site.hpp:48
torc::architecture::Site::Site ( void  )
inline

Null constructor (for use in containers only).

Definition at line 67 of file Site.hpp.

const PrimitiveDef * mPrimitiveDefPtr
Pointer to the associated primitive definition.
Definition: Site.hpp:50
TileIndex mTileIndex
The index of the containing tile.
Definition: Site.hpp:52
SiteFlags mFlags
The flags associated with this site.
Definition: Site.hpp:54
const WireIndexArray * mPinMapPtr
The pin to wire map for this site.
Definition: Site.hpp:56
string mName
The logic site name.
Definition: Site.hpp:48

Member Function Documentation

SiteFlags torc::architecture::Site::getFlags ( void  ) const
inline

Returns the flags associated with this site.

Definition at line 85 of file Site.hpp.

85 { return mFlags; }
SiteFlags mFlags
The flags associated with this site.
Definition: Site.hpp:54

+ Here is the caller graph for this function:

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

Returns the site name.

Definition at line 79 of file Site.hpp.

79 { return mName; }
string mName
The logic site name.
Definition: Site.hpp:48

+ Here is the caller graph for this function:

const WireIndexArray* torc::architecture::Site::getPinMapPtr ( void  ) const
inline

Returns the pin to wire map for this site.

Definition at line 87 of file Site.hpp.

87 { return mPinMapPtr; }
const WireIndexArray * mPinMapPtr
The pin to wire map for this site.
Definition: Site.hpp:56

+ Here is the caller graph for this function:

const Tilewire torc::architecture::Site::getPinTilewire ( const std::string &  inName) const
inline

Returns the Tilewire associated with the specified pin name.

Definition at line 70 of file Site.hpp.

70  {
71  if(mPrimitiveDefPtr == 0) return Tilewire::sInvalid;
72  PinIndex pinIndex = mPrimitiveDefPtr->findPinIndexByName(inName);
73  if(pinIndex.isUndefined()) return Tilewire::sInvalid;
74  if(mPinMapPtr == 0) return Tilewire::sInvalid;
75  return Tilewire(mTileIndex, (*mPinMapPtr)[pinIndex]);
76  }
const PrimitiveDef * mPrimitiveDefPtr
Pointer to the associated primitive definition.
Definition: Site.hpp:50
TileIndex mTileIndex
The index of the containing tile.
Definition: Site.hpp:52
PinIndex findPinIndexByName(const std::string &inName) const
Returns the pin index corresponding to the given pin name, or PinIndex::undefined() if the pin name d...
xilinx::PinIndex PinIndex
Imported type name.
Definition: Site.hpp:37
static const Tilewire sInvalid
Definition: Tilewire.hpp:93
const WireIndexArray * mPinMapPtr
The pin to wire map for this site.
Definition: Site.hpp:56

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const PrimitiveDef* torc::architecture::Site::getPrimitiveDefPtr ( void  ) const
inline

Returns a pointer to the associated primitive definition.

Definition at line 81 of file Site.hpp.

81 { return mPrimitiveDefPtr; }
const PrimitiveDef * mPrimitiveDefPtr
Pointer to the associated primitive definition.
Definition: Site.hpp:50

+ Here is the caller graph for this function:

TileIndex torc::architecture::Site::getTileIndex ( void  ) const
inline

Returns the index of the containing tile.

Definition at line 83 of file Site.hpp.

83 { return mTileIndex; }
TileIndex mTileIndex
The index of the containing tile.
Definition: Site.hpp:52

+ Here is the caller graph for this function:

Friends And Related Function Documentation

friend class Sites
friend

The Sites class has access to our internals.

Definition at line 34 of file Site.hpp.

Field Documentation

SiteFlags torc::architecture::Site::mFlags
protected

The flags associated with this site.

Definition at line 54 of file Site.hpp.

string torc::architecture::Site::mName
protected

The logic site name.

Definition at line 48 of file Site.hpp.

const WireIndexArray* torc::architecture::Site::mPinMapPtr
protected

The pin to wire map for this site.

Definition at line 56 of file Site.hpp.

const PrimitiveDef* torc::architecture::Site::mPrimitiveDefPtr
protected

Pointer to the associated primitive definition.

Definition at line 50 of file Site.hpp.

TileIndex torc::architecture::Site::mTileIndex
protected

The index of the containing tile.

Definition at line 52 of file Site.hpp.


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