#include <PrimitiveStructure.hpp>


| Public Member Functions | |
| PrimitiveStructure (const PrimitiveDef *inPrimitiveDefPtr) | |
| Default constructor. | |
| PrimitiveStructure (void) | |
| Null constructor. | |
| virtual | ~PrimitiveStructure (void) | 
| Virtual destructor. | |
| void | debug (const PrimitiveElement &inPrimitiveElement) | 
| Prints out debugging information for the specified element. | |
| const PrimitiveDef * | getPrimitiveDefPtr (void) const | 
| Returns a pointer to the associated primitive definition. | |
| Protected Types | |
| typedef std::string | string | 
| Imported type name. | |
| typedef torc::architecture::PrimitiveDef | PrimitiveDef | 
| Imported type name. | |
| typedef torc::architecture::PrimitiveElement | PrimitiveElement | 
| Imported type name. | |
| typedef std::map< string, const PrimitiveElement * > | NameToElementPtrMap | 
| Mapping from element name to element pointer. | |
| typedef std::map< string, std::vector< const PrimitiveElement * > > | PrincipalToOrphanPtrMap | 
| Mapping from principal element name to orphan element pointer. | |
| typedef std::set< const torc::architecture::PrimitiveElementPin * > | ElementPinPtrSet | 
| A set of configuration values. | |
| Protected Member Functions | |
| virtual void | initialize (void) | 
| Initialize this object based on the PrimitiveDef information. | |
| virtual bool | isPreclassified (const PrimitiveElement &inElement) | 
| Return true if the elemtn has been preclassified (typically by a subclass). | |
| virtual bool | isPrincipal (const PrimitiveElement &inElement) | 
| Return true if the element is the principal element (a parent to the orphans). | |
| virtual bool | isTerminal (const PrimitiveElement &inElement) | 
| Return true if the element is a terminal. | |
| virtual bool | isOrphan (const PrimitiveElement &inElement) | 
| Return true if the element is an orphan. | |
| virtual bool | isMux (const PrimitiveElement &inElement, bool &outIsSwitch) | 
| Return true if the element is a configurable mux. | |
| virtual bool | isPower (const PrimitiveElement &inElement) | 
| Return true if the element is a power source. | |
| virtual bool | isGround (const PrimitiveElement &inElement) | 
| Return true if the element is a ground source. | |
| virtual bool | isLUT (const PrimitiveElement &inElement, const string &inConfig) | 
| Return true if the element is a LUT. | |
| virtual bool | isFlop (const PrimitiveElement &inElement, const string &inConfig) | 
| Return true if the element is a flop. | |
| virtual bool | isRoutethrough (const PrimitiveElement &inElementPtr) | 
| Return true if the element is a routethrough. | |
| Protected Attributes | |
| const PrimitiveDef * | mPrimitiveDefPtr | 
| Pointer to the associated primitive definition. | |
| ElementPinPtrSet | mInvertedInputs | 
| Set of inverted element input pins. | |
| NameToElementPtrMap | mUnprocessed | 
| Map of unprocessed elements. | |
| NameToElementPtrMap | mPreclassified | 
| Map of pre-classified elements (typically by a subclass). | |
| NameToElementPtrMap | mElements | 
| Map of all elements. | |
| NameToElementPtrMap | mPrincipals | 
| Map of all principals. | |
| NameToElementPtrMap | mTerminals | 
| Map of all terminals. | |
| NameToElementPtrMap | mMuxes | 
| Map of all configurable muxes (including switches and inverters). | |
| NameToElementPtrMap | mOrphans | 
| Map of all Orphans. | |
| NameToElementPtrMap | mSwitches | 
| Map of all switches. | |
| NameToElementPtrMap | mLUTs | 
| Map of all LUTs. | |
| NameToElementPtrMap | mFlops | 
| Map of all flops. | |
| NameToElementPtrMap | mPower | 
| Map of all power sources. | |
| NameToElementPtrMap | mGround | 
| Map of all ground sources. | |
| NameToElementPtrMap | mRoutethroughs | 
| Map of all routethroughs. | |
| PrincipalToOrphanPtrMap | mPrincipalstoOrphans | 
| Map of principals to orphans . | |
| Static Protected Attributes | |
| static boost::regex | sRoutethroughRegEx | 
| Regular expression for routethroughs. | |
| static boost::regex | sPrincipalRegEx | 
| Regular expression for additional principal elements. | |
| static boost::regex | sLUTRegEx | 
| Regular expression for LUTs. | |
| static boost::regex | sFlopRegEx | 
| Regular expression for flops. | |
| static boost::regex | sPowerRegEx | 
| Regular expression for power sources. | |
| static boost::regex | sGroundRegEx | 
| Regular expression for ground sources. | |
| static boost::regex | sInvertingInputRegEx | 
| Regular expression for inverting input pins. | |
| Friends | |
| class | torc::packer::packer::PrimitiveStructureUnitTest | 
| Our unit test class has access to our internals. | |
| class | Unpacker | 
Definition at line 50 of file PrimitiveStructure.hpp.
| typedef std::string torc::packer::PrimitiveStructure::string  [protected] | 
| typedef torc::architecture::PrimitiveDef torc::packer::PrimitiveStructure::PrimitiveDef  [protected] | 
| typedef std::map<string, const PrimitiveElement*> torc::packer::PrimitiveStructure::NameToElementPtrMap  [protected] | 
| typedef std::map<string, std::vector<const PrimitiveElement*> > torc::packer::PrimitiveStructure::PrincipalToOrphanPtrMap  [protected] | 
Mapping from principal element name to orphan element pointer.
Definition at line 66 of file PrimitiveStructure.hpp.
| typedef std::set<const torc::architecture::PrimitiveElementPin*> torc::packer::PrimitiveStructure::ElementPinPtrSet  [protected] | 
| torc::packer::PrimitiveStructure::PrimitiveStructure | ( | const PrimitiveDef * | inPrimitiveDefPtr | ) |  [inline] | 
| torc::packer::PrimitiveStructure::PrimitiveStructure | ( | void | ) |  [inline] | 
| virtual torc::packer::PrimitiveStructure::~PrimitiveStructure | ( | void | ) |  [inline, virtual] | 
| void torc::packer::PrimitiveStructure::initialize | ( | void | ) |  [protected, virtual] | 
Initialize this object based on the PrimitiveDef information.
Reimplemented in torc::packer::Virtex2PrimitiveStructure, and torc::packer::Virtex5PrimitiveStructure.
Definition at line 119 of file PrimitiveStructure.cpp.
| bool torc::packer::PrimitiveStructure::isPreclassified | ( | const PrimitiveElement & | inElement | ) |  [protected, virtual] | 
Return true if the elemtn has been preclassified (typically by a subclass).
Definition at line 36 of file PrimitiveStructure.cpp.
| bool torc::packer::PrimitiveStructure::isPrincipal | ( | const PrimitiveElement & | inElement | ) |  [protected, virtual] | 
Return true if the element is the principal element (a parent to the orphans).
Definition at line 40 of file PrimitiveStructure.cpp.
| bool torc::packer::PrimitiveStructure::isTerminal | ( | const PrimitiveElement & | inElement | ) |  [protected, virtual] | 
| bool torc::packer::PrimitiveStructure::isOrphan | ( | const PrimitiveElement & | inElement | ) |  [protected, virtual] | 
| bool torc::packer::PrimitiveStructure::isMux | ( | const PrimitiveElement & | inElement, | |
| bool & | outIsSwitch | |||
| ) |  [protected, virtual] | 
Return true if the element is a configurable mux.
Definition at line 54 of file PrimitiveStructure.cpp.
| bool torc::packer::PrimitiveStructure::isPower | ( | const PrimitiveElement & | inElement | ) |  [protected, virtual] | 
| bool torc::packer::PrimitiveStructure::isGround | ( | const PrimitiveElement & | inElement | ) |  [protected, virtual] | 
Return true if the element is a ground source.
Definition at line 101 of file PrimitiveStructure.cpp.
| bool torc::packer::PrimitiveStructure::isLUT | ( | const PrimitiveElement & | inElement, | |
| const string & | inConfig | |||
| ) |  [protected, virtual] | 
| bool torc::packer::PrimitiveStructure::isFlop | ( | const PrimitiveElement & | inElement, | |
| const string & | inConfig | |||
| ) |  [protected, virtual] | 
| bool torc::packer::PrimitiveStructure::isRoutethrough | ( | const PrimitiveElement & | inElementPtr | ) |  [protected, virtual] | 
Return true if the element is a routethrough.
Definition at line 115 of file PrimitiveStructure.cpp.
| void torc::packer::PrimitiveStructure::debug | ( | const PrimitiveElement & | inPrimitiveElement | ) | 
Prints out debugging information for the specified element.
Definition at line 224 of file PrimitiveStructure.cpp.
| const PrimitiveDef* torc::packer::PrimitiveStructure::getPrimitiveDefPtr | ( | void | ) | const  [inline] | 
Returns a pointer to the associated primitive definition.
Definition at line 165 of file PrimitiveStructure.hpp.
| friend class torc::packer::packer::PrimitiveStructureUnitTest  [friend] | 
Our unit test class has access to our internals.
Definition at line 53 of file PrimitiveStructure.hpp.
| const PrimitiveDef* torc::packer::PrimitiveStructure::mPrimitiveDefPtr  [protected] | 
Pointer to the associated primitive definition.
Definition at line 71 of file PrimitiveStructure.hpp.
Map of pre-classified elements (typically by a subclass).
Definition at line 78 of file PrimitiveStructure.hpp.
Map of all configurable muxes (including switches and inverters).
Definition at line 86 of file PrimitiveStructure.hpp.
| boost::regex torc::packer::PrimitiveStructure::sRoutethroughRegEx  [static, protected] | 
| boost::regex torc::packer::PrimitiveStructure::sPrincipalRegEx  [static, protected] | 
Regular expression for additional principal elements.
Definition at line 115 of file PrimitiveStructure.hpp.
| boost::regex torc::packer::PrimitiveStructure::sLUTRegEx  [static, protected] | 
| boost::regex torc::packer::PrimitiveStructure::sFlopRegEx  [static, protected] | 
| boost::regex torc::packer::PrimitiveStructure::sPowerRegEx  [static, protected] | 
| boost::regex torc::packer::PrimitiveStructure::sGroundRegEx  [static, protected] | 
| boost::regex torc::packer::PrimitiveStructure::sInvertingInputRegEx  [static, protected] | 
 1.5.6
 1.5.6