16 #ifndef TORC_PACKER_UNPACKER_HPP
17 #define TORC_PACKER_UNPACKER_HPP
24 #include <boost/smart_ptr.hpp>
32 namespace packer {
class UnpackerUnitTest; }
51 typedef std::map<std::string, PrimitiveStructureSharedPtr>
54 typedef std::vector<const torc::architecture::PrimitiveElementPin*>
60 typedef std::map<std::string, const PrimitiveStructure::PrimitiveElement*>
83 std::vector<std::string> inInstanceInputPins,
87 std::vector<torc::physical::InstanceSharedPtr>
105 #endif // TORC_PACKER_UNPACKER_HPP
virtual ~Unpacker(void)
Virtual destructor.
torc::architecture::DDB DDB
Header for the ConfigMap class.
std::vector< InstanceSharedPtr > InstanceSharedPtrVector
Vector of Instance shared pointers.
Unpacker(DesignSharedPtr &inDesignPtr)
Device database, including complete wiring and logic support.
bool findNextElement(const PrimitiveStructure &inPrimitiveStructure, const torc::architecture::PrimitiveElement &element, torc::physical::InstanceSharedPtr &inInstancePtr, NameToElementPtrMap &inUsedElements, std::vector< std::string > inInstanceInputPins, CandidateNet &inElementPinsForNet, const torc::architecture::PrimitiveElementPin *&outNetSourcePin, std::vector< torc::physical::InstanceSharedPtr > &outNewInstances, ElementPtrToInstancePtrMap &elementToInstanceMap)
Function to find the next element.
Header for the Instance class.
InstanceSharedPtrVector::const_iterator InstanceSharedPtrConstIterator
Constant iterator to Instance shared pointers.
friend class torc::packer::packer::UnpackerUnitTest
Our unit test class has access to our internals.
torc::physical::DesignSharedPtr DesignSharedPtr
Imported type name.
void unpack(void)
Default unpack function.
InstanceSharedPtrVector mInstances
Header for the PrimitiveStructure class.
std::map< const torc::architecture::PrimitiveElement *, torc::physical::InstanceSharedPtr > ElementPtrToInstancePtrMap
Map of Primitive Element Pointer to Instance Shared Pointer.
torc::physical::Circuit::InstanceSharedPtrConstIterator InstanceSharedPtrConstIterator
torc::physical::ConfigMap ConfigMap
std::map< const torc::architecture::PrimitiveElementPin *, PrimitiveElementPinPtrVector > CandidateNet
Map of Candidate Nets.
Header for the Design class.
std::map< std::string, const PrimitiveStructure::PrimitiveElement * > NameToElementPtrMap
Map of Primitive Element Name to Primitive Element.
virtual void initialize(void)
Initialize this object based on the PrimitiveDef information.
boost::shared_ptr< Instance > InstanceSharedPtr
Shared pointer encapsulation of an Instance.
boost::shared_ptr< Design > DesignSharedPtr
Shared pointer encapsulation of a Design.
torc::physical::InstanceSharedPtrVector InstanceSharedPtrVector
std::vector< const torc::architecture::PrimitiveElementPin * > PrimitiveElementPinPtrVector
Vector of Primitive Element Pin Pointers.
Encapsulation of a primitive site element. Primitive elements are subcomponents of logic primitive s...
Encapsulation of a primitive element pin's name, flags, and element pointer. Primitive element pins ...
PrimitiveStructuresSharedPtrMap mPrimitiveStructures
std::string string
Imported type name.
Configuration setting map.
DesignSharedPtr mDesignPtr
Header for the DDB class.
Encapsulation of the site index, pin name, and pin flags for a package.
std::map< std::string, PrimitiveStructureSharedPtr > PrimitiveStructuresSharedPtrMap
Map of PrimitiveStructure Shared Pointers.