Todo List

Member torc::ArchitectureBrowser::getTilewireDetail (const string &inString)
SegmentReference with internal segment data?

Member torc::architecture::ArcUsage::getArcOffset (const Tilewire &inTilewire1, const Tilewire &inTilewire2) const
Throw a meaningful exception.

Member torc::architecture::ArcUsage::use (const Tilewire &inTilewire1, const Tilewire &inTilewire2)
Throw a meaningful exception.

Member torc::architecture::ArcUsage::release (const Tilewire &inTilewire1, const Tilewire &inTilewire2)
Throw a meaningful exception.

Member torc::architecture::ArcUsage::isUsed (const Tilewire &inTilewire1, const Tilewire &inTilewire2) const
Throw a meaningful exception.

Member torc::architecture::ArcUsage::getArcUsageCount (void) const
Question: can we get away with only checking dirty bitsets? / skip this tile if it isn't dirty

Member torc::bitstream::Bitstream::string
Bitstream access needs to be changed from public back to protected.

Member torc::bitstream::Bitstream::initializeDeviceInfo (const std::string &inDeviceName)
This function should be made pure virtual.

Class torc::physical::Circuit
May want to replace the instance and net vector and map combinations with a Boost multi-index.

Member torc::physical::Circuit::addInstance (InstanceSharedPtr &inInstancePtr)
Acquire mutex.

Member torc::physical::Circuit::addInstance (InstanceSharedPtr &inInstancePtr)
Release mutex.

Member torc::physical::Circuit::removeInstance (InstanceSharedPtr &inInstancePtr)
Acquire mutex.

Member torc::physical::Circuit::removeInstance (InstanceSharedPtr &inInstancePtr)
Release mutex.

Member torc::physical::Circuit::unplace (void)
Acquire mutex.

Member torc::physical::Circuit::unplace (void)
Release mutex.

Member torc::physical::Circuit::addNet (NetSharedPtr &inNetPtr)
Acquire mutex.

Member torc::physical::Circuit::addNet (NetSharedPtr &inNetPtr)
Release mutex.

Member torc::physical::Circuit::removeNet (NetSharedPtr &inNetPtr)
Acquire mutex.

Member torc::physical::Circuit::removeNet (NetSharedPtr &inNetPtr)
Release mutex.

Member torc::physical::Circuit::unroute (void)
Acquire mutex.

Member torc::physical::Circuit::unroute (void)
Release mutex.

Member torc::physical::CombinationalPath::addRoutingNet (RoutingNetSharedPtr &inRoutingNetPtr)
Acquire mutex.

Member torc::physical::CombinationalPath::addRoutingNet (RoutingNetSharedPtr &inRoutingNetPtr)
Release mutex.

Member torc::physical::CombinationalPath::removeRoutingNet (RoutingNetSharedPtr &inRoutingNetPtr)
Acquire mutex.

Member torc::physical::CombinationalPath::removeRoutingNet (RoutingNetSharedPtr &inRoutingNetPtr)
Release mutex.

Member torc::physical::Component::addPrimitivePin (PrimitivePinSharedPtr &inPrimitivePinPtr)
Acquire mutex.

Member torc::physical::Component::addPrimitivePin (PrimitivePinSharedPtr &inPrimitivePinPtr)
Release mutex.

Member torc::physical::Component::removePrimitivePin (PrimitivePinSharedPtr &inPrimitivePinPtr)
Acquire mutex.

Member torc::physical::Component::removePrimitivePin (PrimitivePinSharedPtr &inPrimitivePinPtr)
Release mutex.

Member torc::physical::Config::mValue
Consider typing mValue to something like SettingValueString.

Member torc::physical::ConfigMap::hasConfig (const string &inSetting) const
Acquire mutex.

Member torc::physical::ConfigMap::hasConfig (const string &inSetting) const
Release mutex.

Member torc::physical::ConfigMap::getConfig (const string &inSetting, string &outName, string &outValue)
Acquire mutex.

Member torc::physical::ConfigMap::getConfig (const string &inSetting, string &outName, string &outValue)
Release mutex.

Member torc::physical::ConfigMap::setConfig (const string &inSetting, const string &inName, const string &inValue)
Acquire mutex.

Member torc::physical::ConfigMap::setConfig (const string &inSetting, const string &inName, const string &inValue)
Release mutex.

Member torc::physical::ConfigMap::addConfigs (const ConfigMap &inConfigMap)
Acquire mutex.

Member torc::physical::ConfigMap::addConfigs (const ConfigMap &inConfigMap)
Release mutex.

Member torc::physical::Connection::addConnectionPin (ConnectionPin &inConnectionPinPtr)
Acquire mutex.

Member torc::physical::Connection::addConnectionPin (ConnectionPin &inConnectionPinPtr)
Release mutex.

Member torc::physical::Connection::removeConnectionPin (ConnectionPin &inConnectionPinPtr)
Acquire mutex.

Member torc::physical::Connection::removeConnectionPin (ConnectionPin &inConnectionPinPtr)
Release mutex.

Member torc::architecture::DDB::readFamilyName (class DigestStream &inStream)
Throw a proper exception.

Member torc::architecture::DDB::readSpeedGrades (class DigestStream &inStream)
Throw a proper exception.

Member torc::architecture::DDB::lookupTilewire (const std::string &inTileName, const std::string &inWireName)
Add to unit tests.

Member torc::physical::Design::addModule (ModuleSharedPtr &inModulePtr)
Acquire mutex.

Member torc::physical::Design::addModule (ModuleSharedPtr &inModulePtr)
Release mutex.

Member torc::physical::Design::removeModule (ModuleSharedPtr &inModulePtr)
Acquire mutex.

Member torc::physical::Design::removeModule (ModuleSharedPtr &inModulePtr)
Release mutex.

Member torc::bitstream::DeviceInfoHelper::buildFamilyDeviceInfo (const std::string &inFamilyName, const std::string &inTemplateName, const std::string &inOutputName, const torc::common::DeviceVector &inDeviceNames, Bitstream &inBitstream)
Reinstate check for existing static device information file.

Member torc::physical::Element::addConnection (ConnectionSharedPtr &inConnectionPtr)
Acquire mutex.

Member torc::physical::Element::addConnection (ConnectionSharedPtr &inConnectionPtr)
Release mutex.

Member torc::physical::Element::removeConnection (ConnectionSharedPtr &inConnectionPtr)
Acquire mutex.

Member torc::physical::Element::removeConnection (ConnectionSharedPtr &inConnectionPtr)
Release mutex.

Member torc::physical::Element::removeConnection (ConnectionSharedPtrIterator inConnectionIter)
Acquire mutex.

Member torc::physical::Element::removeConnection (ConnectionSharedPtrIterator inConnectionIter)
Release mutex.

Member torc::physical::Element::addConfig (string &inConfigPtr)
Acquire mutex.

Member torc::physical::Element::addConfig (string &inConfigPtr)
Release mutex.

Member torc::physical::Element::removeConfig (string &inConfigPtr)
Acquire mutex.

Member torc::physical::Element::removeConfig (string &inConfigPtr)
Release mutex.

Class torc::physical::Instance
Need a good way of finding the direction of each instance pin.

Member torc::physical::Module::addPort (PortSharedPtr &inPortPtr)
Acquire mutex.

Member torc::physical::Module::addPort (PortSharedPtr &inPortPtr)
Release mutex.

Member torc::physical::Module::removePort (PortSharedPtr &inPortPtr)
Acquire mutex.

Member torc::physical::Module::removePort (PortSharedPtr &inPortPtr)
Release mutex.

Member torc::physical::ModuleTransformer::cloneNet (NetSharedPtr inNetPtr, const string &inNetCloneName, const string &inModuleInstanceName)
We are dropping routethrough instances.

Class torc::physical::Named
Add a setName() accessor to support renaming. For many design elements, this may require permission from the parent, to avoid name collisions. We could make the function virtual, but that would come at the cost of a vtable, and that's very expensive for things like Config objects. In general, the renaming should probably be managed by the Progeny<T> template.

Class torc::physical::Net
Consider checking for duplicates whenever a source, sink, or pip is added. On the other hand, we provide the functions to check for existing resources, so perhaps we can just leave it to the user.

Member torc::physical::Net::addSource (InstancePinSharedPtr &inInstancePinPtr)
Acquire mutex.

Member torc::physical::Net::addSource (InstancePinSharedPtr &inInstancePinPtr)
Release mutex.

Member torc::physical::Net::addSink (InstancePinSharedPtr &inInstancePinPtr)
Acquire mutex.

Member torc::physical::Net::addSink (InstancePinSharedPtr &inInstancePinPtr)
Release mutex.

Member torc::physical::Net::removeSource (InstancePinSharedPtr &inInstancePinPtr)
Acquire mutex.

Member torc::physical::Net::removeSource (InstancePinSharedPtr &inInstancePinPtr)
Release mutex.

Member torc::physical::Net::removeSink (InstancePinSharedPtr &inInstancePinPtr)
Acquire mutex.

Member torc::physical::Net::removeSink (InstancePinSharedPtr &inInstancePinPtr)
Release mutex.

Member torc::physical::Net::addPip (const Pip &inPip)
Acquire mutex.

Member torc::physical::Net::addPip (const Pip &inPip)
Release mutex.

Member torc::physical::Net::removePip (const Pip &inPip)
Acquire mutex.

Member torc::physical::Net::removePip (const Pip &inPip)
Release mutex.

Member torc::router::NetRouter::routeNet (RouteNet &net)
Throw appropriate exception.

Member torc::router::NetRouter::graphSearch (const Tilewire &inSource, TilewireVector &inSinks, RouteNodePtrVector &outRoute)
Count new RouteNodes?

Member torc::router::NetRouter::graphSearch (const Tilewire &inSource, TilewireVector &inSinks, RouteNodePtrVector &outRoute)
Set initial cost

Member torc::router::NetRouter::graphSearchLoop (const Tilewire &inSource, const Tilewire &inSink, RouteNodePtrVector &outRoute)
Throw route failed exception.

Member torc::router::NetRouter::graphSearchLoop (const Tilewire &inSource, const Tilewire &inSink, RouteNodePtrVector &outRoute)
Throw route limited exception.

Member torc::router::NetRouter::graphSearchLoop (const Tilewire &inSource, const Tilewire &inSink, RouteNodePtrVector &outRoute)
adjust the node cost to be just the path cost?

Member torc::router::NetRouter::graphSearchFilter (RouteNode *inParent, const Arc &inArc, RouteNodePtrVector &outRoute)
Need to check to see if we should be adjusting pointers in here.

Member torc::router::NetRouter::graphSearchFilter (RouteNode *inParent, const Arc &inArc, RouteNodePtrVector &outRoute)
Heuristic check if node is filtered

Member torc::router::NetRouter::graphSearchFilter (RouteNode *inParent, const Arc &inArc, RouteNodePtrVector &outRoute)
Heuristic cost of node

Member torc::router::NetRouter::graphSearchFilter (RouteNode *inParent, const Arc &inArc, RouteNodePtrVector &outRoute)
Cases for different places the node can go.

Member torc::router::NetRouter::clearContainers ()
Report statistics on nodes deleted?

Member torc::router::NetRouterHeuristic::nodeCost (RouteNode &inNode)
provide an additional field in RouteNode to store path cost

Member torc::router::PathFinderNetRouterHeuristic::nodeCost (RouteNode &inNode)
provide an additional field in RouteNode to store path cost

Member torc::PhysicalDiff::PhysicalDiff (std::ostream &inOutStream)
Improve Pip comparison.

Member torc::PhysicalDiff::PhysicalDiff (std::ostream &inOutStream)
Port comparison should use port name.

Member torc::PhysicalDiff::PhysicalDiff (std::ostream &inOutStream)
Config sequence index is not used.

Member torc::PhysicalDiff::PhysicalDiff (std::ostream &inOutStream)
Instance does not check the reference pointer.

Member torc::physical::Primitive::addElement (ElementSharedPtr &inElementPtr)
Acquire mutex.

Member torc::physical::Primitive::addElement (ElementSharedPtr &inElementPtr)
Release mutex.

Member torc::physical::Primitive::removeElement (ElementSharedPtr &inElementPtr)
Acquire mutex.

Member torc::physical::PrimitiveSet::addPrimitive (PrimitiveSharedPtr &inPrimitivePtr)
Acquire mutex.

Member torc::physical::PrimitiveSet::addPrimitive (PrimitiveSharedPtr &inPrimitivePtr)
Release mutex.

Member torc::physical::PrimitiveSet::removePrimitive (PrimitiveSharedPtr &inPrimitivePtr)
Acquire mutex.

Member torc::physical::PrimitiveSet::removePrimitive (PrimitiveSharedPtr &inPrimitivePtr)
Release mutex.

Class torc::physical::Progenitor< T >
Rename Progenitor to SelfReferent, since some childless objects need to refer to themselves. c.f. InstancePin.

Member torc::physical::Progeny::getParentSharedPtr (void) const
Figure out why Progeny<T>::getParentSharedPtr() yields a "Returning reference to temporary" warning.

Class torc::router::RouteNode
Have to justify the packing decision, and its impact on memory footprint versus performance.

Class torc::router::RouteTreeNode
Have to justify the packing decision, and its impact on memory footprint versus performance.

Member torc::architecture::Segments::readTilewireSegments (DigestStream &inStream)
Throw a proper exception.

Member torc::architecture::Segments::readSegments (DigestStream &inStream, bool inExtendedAnchorTileCount)
Throw a proper exception.

Member torc::architecture::Segments::readIrregularArcs (DigestStream &inStream)
Throw a proper exception.

Member torc::architecture::Sites::readPrimitiveTypes (DigestStream &inStream)
Throw a proper exception.

Member torc::architecture::Sites::readPrimitiveTypes (DigestStream &inStream)
Throw a proper exception

Member torc::architecture::Sites::readPrimitivePinMaps (DigestStream &inStream)
Throw a proper exception.

Member torc::architecture::Sites::readSites (DigestStream &inStream)
Throw a proper exception.

Member torc::architecture::Sites::readSites (DigestStream &inStream)
Throw a proper exception.

Member torc::architecture::Sites::readPackages (DigestStream &inStream)
Throw a proper exception.

Member torc::architecture::Sites::readPackages (DigestStream &inStream)
Throw a proper exception.

Member torc::bitstream::Spartan6BuildHelper::buildFamilyDeviceInfo (const std::string &inFamilyName, const std::string &inTemplateName, const std::string &inOutputName, const torc::common::DeviceVector &inDeviceNames, Bitstream &inBitstream)
Reinstate check for existing static device information file.

Member torc::bitstream::Spartan6Packet::read (std::istream &inStream)
we should throw an exception on invalid packet types

Member torc::bitstream::Spartan6Packet::makeHeader (EPacketType inType, EOpcode inOpcode, uint16_t inAddress, uint32_t inCount)
Generate an error or throw an exception on invalid packet types?

Member torc::bitstream::SpartanPacket::read (std::istream &inStream)
we should throw an exception on invalid packet types

Member torc::bitstream::SpartanPacket::makeHeader (EPacketType inType, EOpcode inOpcode, uint32_t inAddress, uint32_t inCount)
Generate an error or throw an exception on invalid packet types?

Member torc::architecture::Tiles::readTileTypes (DigestStream &inStream)
Throw a proper exception.

Member torc::architecture::Tiles::readTileWireInfo (DigestStream &inStream)
Throw a proper exception.

Member torc::architecture::Tiles::readTileMap (DigestStream &inStream)
Throw a proper exception.

Class torc::architecture::Tilewire
Have to justify the packing decision, and its impact on memory footprint versus performance.

Class torc::router::TraceNode
Have to justify the packing decision, and its impact on memory footprint versus performance.

Member torc::architecture::Versions::readVersions (DigestStream &inStream, bool inShowVersion=false)
Throw a proper exception.

Member torc::bitstream::VirtexPacket::read (std::istream &inStream)
we should throw an exception on invalid packet types

Member torc::bitstream::VirtexPacket::makeHeader (EPacketType inType, EOpcode inOpcode, uint32_t inAddress, uint32_t inCount)
Generate an error or throw an exception on invalid packet types?

Member torc::architecture::WireUsage::getWireUsageCount (void) const
Question: can we get away with only checking dirty bitsets? / skip this tile if it isn't dirty

Member torc::physical::XdlExporter::operator() (const DesignSharedPtr &inDesignPtr)
Acquire mutex.

Member torc::physical::XdlExporter::operator() (const DesignSharedPtr &inDesignPtr)
Release mutex.

Member torc::architecture::XdlImporter::bind (torc::physical::Pip &inPip, EPipType inPipType)
Add routethrough usage support.

Member torc::architecture::BOOST_AUTO_TEST_CASE (PrimitiveDefUnitTest)
Write a unit test for torc::architecture::PrimitiveDef.

Member torc::architecture::BOOST_AUTO_TEST_CASE (PrimitiveElementPinUnitTest)
Test mPrimitiveConn and getPrimitiveConn. Do a better job testing mElementPtr and getElementPtr.

Member torc::architecture::BOOST_AUTO_TEST_CASE (PrimitiveElementUnitTest)
Write a unit test for torc::architecture::PrimitiveElement.

Member torc::architecture::BOOST_AUTO_TEST_CASE (SitesUnitTest)
Write a unit test for torc::architecture::Sites.

Member torc::architecture::BOOST_AUTO_TEST_CASE (SitesUnitTest)
Write a unit test for torc::architecture::Sites.

Member torc::architecture::BOOST_AUTO_TEST_CASE (SiteUnitTest)
Write a unit test for torc::architecture::Site.

Member torc::architecture::BOOST_AUTO_TEST_CASE (TileInfoUnitTest)
Write a unit test for torc::architecture::TileInfo.

Member torc::architecture::BOOST_AUTO_TEST_CASE (VersionsUnitTest)
Write a unit test for torc::architecture::Versions.

Member torc::architecture::BOOST_AUTO_TEST_CASE (WireInfoUnitTest)
Write a unit test for torc::architecture::WireInfo.

Member torc::architecture::BOOST_AUTO_TEST_CASE (WireUsageUnitTest)
Write a unit test for torc::architecture::WireUsage.

Member torc::physical::BOOST_AUTO_TEST_CASE (XdlImporterUnitTest)
Finish testing XdlImporter functionality.

Member torc::bitstream::BOOST_AUTO_TEST_CASE (FactoryUnitTest)
Write unit test for Factory.

Member torc::physical::BOOST_AUTO_TEST_CASE (DesignUnitTest)
Verify that all children can trace their lineage all the way up to the design.

Member while
Need to avoid obscuring IDENTIFIER.

Namespace torc
remove <iostream>

Namespace torc
Warning: this will need to be moved elsewhere.

Namespace torc
Warning: this will need to be moved elsewhere.

Namespace torc
Warning: this will need to be moved elsewhere.

Namespace torc
Warning: this will need to be moved elsewhere.

Namespace torc
Warning: this will need to be moved elsewhere.

Namespace torc
Warning: this will need to be moved elsewhere.

Namespace torc
Warning: this will need to be moved elsewhere.

Namespace torc
Warning: this will need to be moved elsewhere.

Namespace torc
Remove this include

Namespace torc
Warning: this will need to be moved elsewhere.

Generated on Thu Oct 13 16:49:06 2011 for TORC by  doxygen 1.5.6