#include <Placement.hpp>
Public Member Functions | |
Placement (DeviceWrapper &inDevice, DesignSharedPtr inDesign) | |
void | initialPlacement () |
void | writePlacementToDesign () |
uint32 | getCost () |
void | updateCostFull (bool debug) |
bool | randomMove (bool debug) |
void | undoMove (bool debug) |
void | updateCostRemoveInstances (InstanceSharedPtrVector &inInstances) |
void | updateCostRemovePair (InstanceSharedPtr inInstance1, InstanceSharedPtr inInstance2) |
void | updateCostAddInstances (InstanceSharedPtrVector &inInstances) |
void | updateCostAddPair (InstanceSharedPtr inInstance1, InstanceSharedPtr inInstance2) |
void | updateCostHelper (InstanceSharedPtrVector &inInstances, bool addCost) |
void | updateCostHelper (InstanceSharedPtr inInstance1, InstanceSharedPtr inInstance2, bool addCost) |
uint32 | getNetCost (NetSharedPtr inNet) |
Protected Types | |
typedef architecture::DDB | DDB |
typedef architecture::Sites | Sites |
typedef architecture::Site | Site |
typedef std::vector< const Site * > | SitePtrVector |
typedef std::vector < SitePtrVector > | SitePtrVectorVector |
typedef physical::DesignSharedPtr | DesignSharedPtr |
typedef boost::uint32_t | uint32 |
typedef boost::uint64_t | uint64 |
typedef physical::ENetType | ENetType |
typedef physical::NetSharedPtr | NetSharedPtr |
typedef physical::NetSharedPtrVector | NetSharedPtrVector |
typedef physical::InstanceSharedPtr | InstanceSharedPtr |
typedef physical::InstanceSharedPtrVector | InstanceSharedPtrVector |
typedef std::vector < InstanceSharedPtrVector > | InstanceSharedPtrVectorVector |
typedef physical::InstancePinSharedPtr | InstancePinSharedPtr |
typedef physical::InstancePinSharedPtrVector | InstancePinSharedPtrVector |
typedef boost::unordered_map < const Site *, uint32 > | SitePtrToIntMap |
typedef boost::unordered_map < const Site *, InstanceSharedPtr > | SitePtrToInstanceSharedPtrMap |
typedef boost::unordered_map < InstanceSharedPtr, Site * > | InstanceSharedPtrToSitePtrMap |
typedef boost::mt19937 | mt19937 |
typedef boost::uniform_int < uint32 > | uinform_range |
typedef boost::variate_generator < mt19937 &, uinform_range > | random_generator |
Protected Attributes | |
DeviceWrapper & | mDevice |
DesignSharedPtr | mDesign |
const architecture::Array < const Site > & | mAllSites |
SitePtrVectorVector | mAllSitesByType |
SitePtrVectorVector | mCandidatesByType |
SitePtrToIntMap | mSiteTypeLookup |
SitePtrToInstanceSharedPtrMap | mAssignedSites |
InstanceSharedPtrVector | mAllInstances |
InstanceSharedPtrVectorVector | mAllInstancesByType |
NetSharedPtrVector | mAllNets |
boost::mt19937 | mRandomSource |
boost::uniform_int< uint32 > | mUniformInstanceRange |
boost::variate_generator < mt19937 &, boost::uniform_int< uint32 > > | mInstanceRandomGen |
std::vector < boost::uniform_int< uint32 > > | mUniformTypeRanges |
std::vector < boost::variate_generator < mt19937 &, boost::uniform_int< uint32 > > * > | mTypeRandomGen |
uint32 | mCost |
bool | mDebug |
InstanceSharedPtr | mSelectedInstance |
InstanceSharedPtr | mEvictedInstance |
Site * | mDepartureSite |
Site * | mTargetSite |
Definition at line 39 of file Placement.hpp.