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

#include <Virtex5.hpp>

+ Inheritance diagram for torc::bitstream::Virtex5::FrameAddress:
+ Collaboration diagram for torc::bitstream::Virtex5::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 Virtex5::FrameAddress &rhs)
 

Detailed Description

Definition at line 269 of file Virtex5.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::Virtex5::FrameAddress::FrameAddress ( void  )
inline
torc::bitstream::Virtex5::FrameAddress::FrameAddress ( EFarTopBottom  inTopBottom,
EFarBlockType  inBlockType,
uint32_t  inRow,
uint32_t  inMajor,
uint32_t  inMinor 
)
inline

Definition at line 281 of file Virtex5.hpp.

282  : mTopBottom(inTopBottom),
283  mBlockType(inBlockType), mRow(inRow), mMajor(inMajor), mMinor(inMinor) {}
torc::bitstream::Virtex5::FrameAddress::FrameAddress ( uint32_t  inAddress)
inline

Definition at line 284 of file Virtex5.hpp.

284 { assign(inAddress); }
virtual void assign(uint32_t inAddress)
Definition: Virtex5.hpp:271

+ Here is the call graph for this function:

Member Function Documentation

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

Implements torc::bitstream::VirtexFrameAddress.

Definition at line 271 of file Virtex5.hpp.

271  {
274  mRow = (inAddress & eFarMaskRow) >> eFarShiftRow;
275  mMajor = (inAddress & eFarMaskMajor) >> eFarShiftMajor;
276  mMinor = (inAddress & eFarMaskMinor) >> eFarShiftMinor;
277  }
EFarTopBottom
Frame Address Register top and bottom constants.
Definition: Virtex5.hpp:82
EFarBlockType
Frame Address Register block type constants.
Definition: Virtex5.hpp:85

+ Here is the caller graph for this function:

torc::bitstream::Virtex5::FrameAddress::operator uint32_t ( void  ) const
inline

Definition at line 307 of file Virtex5.hpp.

307  {
310  | ((mRow << eFarShiftRow) & eFarMaskRow)
312  | ((mMinor << eFarShiftMinor) & eFarMaskMinor));
313  }
boost::uint32_t uint32_t
Imported type name.
virtual bool torc::bitstream::Virtex5::FrameAddress::operator< ( const VirtexFrameAddress vrhs) const
inlinevirtual

Implements torc::bitstream::VirtexFrameAddress.

Definition at line 295 of file Virtex5.hpp.

295  {
296  const FrameAddress& rhs = reinterpret_cast<const FrameAddress&>(vrhs);
297  int diffBlockType = mBlockType - rhs.mBlockType;
298  if(diffBlockType) return diffBlockType < 0;
299  int diffTopBottom = mTopBottom - rhs.mTopBottom;
300  if(diffTopBottom) return diffTopBottom < 0;
301  int diffRow = mRow - rhs.mRow;
302  if(diffRow) return diffRow < 0;
303  int diffMajor = mMajor - rhs.mMajor;
304  if(diffMajor) return diffMajor < 0;
305  return mMinor < rhs.mMinor;
306  }
virtual bool torc::bitstream::Virtex5::FrameAddress::operator== ( const VirtexFrameAddress vrhs) const
inlinevirtual

Implements torc::bitstream::VirtexFrameAddress.

Definition at line 290 of file Virtex5.hpp.

290  {
291  const FrameAddress& rhs = reinterpret_cast<const FrameAddress&>(vrhs);
292  return mTopBottom == rhs.mTopBottom && mBlockType == rhs.mBlockType
293  && mRow == rhs.mRow && mMajor == rhs.mMajor && mMinor == rhs.mMinor;
294  }

Friends And Related Function Documentation

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

Definition at line 314 of file Virtex5.hpp.

314  {
315  return os << (rhs.mTopBottom == Virtex5::eFarTop ? 'T' : 'B')
316  << "" << rhs.mBlockType << "(" << rhs.mRow << "," << rhs.mMajor << "."
317  << rhs.mMinor << ")";
318  }

Field Documentation

EFarBlockType torc::bitstream::Virtex5::FrameAddress::mBlockType

Definition at line 286 of file Virtex5.hpp.

uint32_t torc::bitstream::Virtex5::FrameAddress::mMajor

Definition at line 288 of file Virtex5.hpp.

uint32_t torc::bitstream::Virtex5::FrameAddress::mMinor

Definition at line 289 of file Virtex5.hpp.

uint32_t torc::bitstream::Virtex5::FrameAddress::mRow

Definition at line 287 of file Virtex5.hpp.

EFarTopBottom torc::bitstream::Virtex5::FrameAddress::mTopBottom

Definition at line 285 of file Virtex5.hpp.


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