torc-master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
torc::bitstream::Virtex6::FrameAddress Class Reference

#include <Virtex6.hpp>

+ Inheritance diagram for torc::bitstream::Virtex6::FrameAddress:
+ Collaboration diagram for torc::bitstream::Virtex6::FrameAddress:

Public Member Functions

 FrameAddress (void)
 
 FrameAddress (EFarTopBottom inTopBottom, EFarBlockType inBlockType, uint32_t inRow, uint32_t inMajor, uint32_t inMinor)
 
 FrameAddress (uint32_t inAddress)
 
virtual bool operator== (const VirtexFrameAddress &vrhs) const
 
virtual bool operator< (const VirtexFrameAddress &vrhs) const
 
 operator uint32_t (void) const
 

Data Fields

EFarTopBottom mTopBottom
 
EFarBlockType mBlockType
 
uint32_t mRow
 
uint32_t mMajor
 
uint32_t mMinor
 

Protected Types

typedef boost::uint32_t uint32_t
 Imported type name. More...
 

Protected Member Functions

virtual void assign (uint32_t inAddress)
 

Friends

std::ostream & operator<< (std::ostream &os, const Virtex6::FrameAddress &rhs)
 

Detailed Description

Definition at line 238 of file Virtex6.hpp.

Member Typedef Documentation

typedef boost::uint32_t torc::bitstream::VirtexFrameAddress::uint32_t
protectedinherited

Imported type name.

Definition at line 32 of file VirtexFrameAddress.hpp.

Constructor & Destructor Documentation

torc::bitstream::Virtex6::FrameAddress::FrameAddress ( void  )
inline
torc::bitstream::Virtex6::FrameAddress::FrameAddress ( EFarTopBottom  inTopBottom,
EFarBlockType  inBlockType,
uint32_t  inRow,
uint32_t  inMajor,
uint32_t  inMinor 
)
inline

Definition at line 250 of file Virtex6.hpp.

251  : mTopBottom(inTopBottom),
252  mBlockType(inBlockType), mRow(inRow), mMajor(inMajor), mMinor(inMinor) {}
torc::bitstream::Virtex6::FrameAddress::FrameAddress ( uint32_t  inAddress)
inline

Definition at line 253 of file Virtex6.hpp.

253 { assign(inAddress); }
virtual void assign(uint32_t inAddress)
Definition: Virtex6.hpp:240

+ Here is the call graph for this function:

Member Function Documentation

virtual void torc::bitstream::Virtex6::FrameAddress::assign ( uint32_t  inAddress)
inlineprotectedvirtual

Implements torc::bitstream::VirtexFrameAddress.

Definition at line 240 of file Virtex6.hpp.

240  {
243  mRow = (inAddress & eFarMaskRow) >> eFarShiftRow;
244  mMajor = (inAddress & eFarMaskMajor) >> eFarShiftMajor;
245  mMinor = (inAddress & eFarMaskMinor) >> eFarShiftMinor;
246  }
EFarBlockType
Frame Address Register block type constants.
Definition: Virtex6.hpp:85
EFarTopBottom
Frame Address Register top and bottom constants.
Definition: Virtex6.hpp:82

+ Here is the caller graph for this function:

torc::bitstream::Virtex6::FrameAddress::operator uint32_t ( void  ) const
inline
virtual bool torc::bitstream::Virtex6::FrameAddress::operator< ( const VirtexFrameAddress vrhs) const
inlinevirtual

Implements torc::bitstream::VirtexFrameAddress.

Definition at line 264 of file Virtex6.hpp.

264  {
265  const FrameAddress& rhs = reinterpret_cast<const FrameAddress&>(vrhs);
266  int diffBlockType = mBlockType - rhs.mBlockType;
267  if(diffBlockType) return diffBlockType < 0;
268  int diffTopBottom = mTopBottom - rhs.mTopBottom;
269  if(diffTopBottom) return diffTopBottom < 0;
270  int diffRow = mRow - rhs.mRow;
271  if(diffRow) return diffRow < 0;
272  int diffMajor = mMajor - rhs.mMajor;
273  if(diffMajor) return diffMajor < 0;
274  return mMinor < rhs.mMinor;
275  }
virtual bool torc::bitstream::Virtex6::FrameAddress::operator== ( const VirtexFrameAddress vrhs) const
inlinevirtual

Implements torc::bitstream::VirtexFrameAddress.

Definition at line 259 of file Virtex6.hpp.

259  {
260  const FrameAddress& rhs = reinterpret_cast<const FrameAddress&>(vrhs);
261  return mTopBottom == rhs.mTopBottom && mBlockType == rhs.mBlockType
262  && mRow == rhs.mRow && mMajor == rhs.mMajor && mMinor == rhs.mMinor;
263  }

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const Virtex6::FrameAddress rhs 
)
friend

Definition at line 284 of file Virtex6.hpp.

284  {
285  return os << (rhs.mTopBottom == Virtex6::eFarTop ? 'T' : 'B')
286  << "" << rhs.mBlockType << "(" << rhs.mRow << "," << rhs.mMajor << "."
287  << rhs.mMinor << ")";
288  }

Field Documentation

EFarBlockType torc::bitstream::Virtex6::FrameAddress::mBlockType

Definition at line 255 of file Virtex6.hpp.

uint32_t torc::bitstream::Virtex6::FrameAddress::mMajor

Definition at line 257 of file Virtex6.hpp.

uint32_t torc::bitstream::Virtex6::FrameAddress::mMinor

Definition at line 258 of file Virtex6.hpp.

uint32_t torc::bitstream::Virtex6::FrameAddress::mRow

Definition at line 256 of file Virtex6.hpp.

EFarTopBottom torc::bitstream::Virtex6::FrameAddress::mTopBottom

Definition at line 254 of file Virtex6.hpp.


The documentation for this class was generated from the following file: