19 #ifndef TORC_ARCHITECTURE_SEGMENTS_HPP
20 #define TORC_ARCHITECTURE_SEGMENTS_HPP
29 namespace architecture {
32 namespace architecture {
class architecture_segments; }
33 namespace architecture {
class segments_regression_test_helper; }
34 namespace architecture {
class segments_unit_test_helper; }
190 #endif // TORC_ARCHITECTURE_SEGMENTS_HPP
Encapsulation of a wire belonging to a compact segment.
xilinx::WireIndex WireIndex
Imported type name.
xilinx::TileCount TileCount
Imported type name.
friend class torc::architecture::architecture::segments_regression_test_helper
uint32_t mTrivialSegmentCount
The number of defined trivial segments.
const WireIndex & getWireIndex(void) const
Returns the wire index.
Encapsulation of a tile index in an unsigned 32-bit integer.
friend class torc::architecture::architecture::segments_unit_test_helper
CompactSegmentIndex getCompactSegmentIndex(void) const
WireIndex getWireIndex(void) const
uint32_t getPrunedWireCount(void) const
Return the number of pruned wires in the device.
Encapsulation of a compact segment count in an unsigned 32-bit integer.
CompactSegmentCount mCompactSegmentCount
The number of compact segments in the device.
TileIndex mAnchorTileIndex
uint32_t getTrivialSegmentCount(void) const
Return the total number of trivial segments in the device.
Device database, including complete wiring and logic support.
uint32_t getTotalSegmentCount(void) const
Return the total number of full segments in the device.
uint32_t mNonTrivialSegmentCount
The number of defined non-trivial segments.
TileOffset getTileOffset(void) const
WireIndex mSourceWireIndex
Device database console streams class.
size_t readIrregularArcs(DigestStream &inStream)
Read the irregular arcs for the device.
Encapsulation of an irregular arc.
Array2D< SegmentReference > mTilewireSegments
The segment references for every wire in every tile.
CompactSegmentTilewire(WireIndex inWireIndex, TileOffset inTileOffset)
Encapsulation of a wire index in an unsigned 16-bit integer.
static const SegmentReference & getTrivialSegment(void)
CompactSegmentTilewire(void)
xilinx::TileIndex TileIndex
Imported type name.
IrregularArc(WireIndex inSourceWireIndex, WireIndex inSinkWireIndex)
friend class torc::architecture::architecture::architecture_segments
Our unit test has access to our protected functions.
uint32_t getActualWireCount(void) const
Return the number of actual wires in the device (unpruned and non-trivial).
Encapsulation of a tile offset in an unsigned 32-bit integer.
CompactSegmentIndex mCompactSegmentIndex
SegmentReference(CompactSegmentIndex inCompactSegmentIndex, TileIndex inAnchorTileIndex)
Segments(void)
Protected constructor.
Header for the DDBConsoleStreams class.
TileIndex getAnchorTileIndex(void) const
Encapsulation of a device tile and wire pair.
xilinx::CompactSegmentIndex CompactSegmentIndex
Imported type name.
uint32_t getNonTrivialSegmentCount(void) const
Return the total number of non-trivial segments in the device.
Array2D< CompactSegmentTilewire > mCompactSegments
The compact segments in the device.
WireIndex getSinkWireIndex(void) const
uint32_t mIrregularArcCount
The number of irregular arcs in the device.
Encapsulation of a tile count in an unsigned 32-bit integer.
WireIndex getSourceWireIndex(void) const
Encapsulation of a 2D static array.
xilinx::CompactSegmentCount CompactSegmentCount
Imported type name.
uint32_t mActualWireCount
The number of actual wires on non-trivial segments in the device.
uint32_t mTotalWireCount
The total number of wires in the device (pruned and actual).
Encapsulation of a compact segment index in an unsigned 32-bit integer.
uint32_t mTotalSegmentCount
The total number of defined segments.
Header for the Tilewire class.
bool isDefined(void) const
uint32_t getIrregularArcCount(void) const
Return the total number of irregular args in the device.
std::string string
Imported type name.
const Segments::IrregularArc * getIrregularArc(TileIndex inTileIndex, WireIndex inSourceWireIndex, WireIndex inSinkWireIndex)
Return a pointer to the requested IrregularArc, or 0 if the arc does not exist.
Encapsulation of compact segment index and an anchoring tile index.
Array2D< IrregularArc > mIrregularArcs
The irregular arcs for in the device.
Header for the Array class.
Header for the DigestStream class.
uint32_t getCompactSegmentCount(void) const
Return the number of compact segments in the device.
const Segments::SegmentReference & getTilewireSegment(const Tilewire &inTilewire) const
Return the segment reference for the given tile and wire index.
const TileIndex & getTileIndex(void) const
Returns the tile index.
xilinx::TileOffset TileOffset
Imported type name.
Encapsulation of a device or family digest stream.
Segment and irregular arc data for the device.
size_t readTilewireSegments(DigestStream &inStream)
Read the segment entries for every tile.
static const SegmentReference sTrivialSegmentReference
uint32_t mPrunedWireCount
The number of pruned wires in the device.
bool isTrivial(void) const
size_t readSegments(DigestStream &inStream, bool inExtendedAnchorTileCount)
Read the compact segments for the device.
uint32_t getTotalWireCount(void) const
Return the total number of wires in the device (pruned and actual).
Device database types for Xilinx architectures.