Extent Class Reference

An extent is a subspace in a routing space. More...

#include <Extent.hh>

List of all members.

Public Member Functions

 Extent (size_t)
 Extent constructor.
ULong getRangeLowerBound (DimensionHandle) const throw (ArrayIndexOutOfBounds)
 Get range lower bound.
ULong getRangeUpperBound (DimensionHandle) const throw (ArrayIndexOutOfBounds)
 Get range upper bound.
void setRangeUpperBound (DimensionHandle, ULong) throw (ArrayIndexOutOfBounds)
 Set range upper bound.
void setRangeLowerBound (DimensionHandle, ULong) throw (ArrayIndexOutOfBounds)
 Set range lower bound.
bool overlaps (const Extent &) const
 Check whether both extents overlap.
size_t size () const
 Get the number of ranges in this Extent.

Private Attributes

RangeSet ranges


Detailed Description

An extent is a subspace in a routing space.

It is made of ranges in each dimension of the routing space. Routing regions are described using a set of extents.

See also:
RoutingSpace, Dimension, RegionImp

Definition at line 47 of file Extent.hh.


Constructor & Destructor Documentation

Extent ( size_t  n  ) 

Extent constructor.

Parameters:
n Number of dimensions in the routing space

Definition at line 44 of file Extent.cc.

References Dimension::getLowerBound(), Dimension::getUpperBound(), and Extent::ranges.

Here is the call graph for this function:


Member Function Documentation

ULong getRangeLowerBound ( DimensionHandle  handle  )  const throw (ArrayIndexOutOfBounds)

Get range lower bound.

Definition at line 54 of file Extent.cc.

Referenced by Extent::overlaps(), BasicMessage::serialize(), and BasicMessage::writeExtents().

ULong getRangeUpperBound ( DimensionHandle  handle  )  const throw (ArrayIndexOutOfBounds)

Get range upper bound.

Definition at line 67 of file Extent.cc.

Referenced by Extent::overlaps(), BasicMessage::serialize(), and BasicMessage::writeExtents().

void setRangeUpperBound ( DimensionHandle  handle,
ULong  val 
) throw (ArrayIndexOutOfBounds)

Set range upper bound.

Definition at line 93 of file Extent.cc.

Referenced by RoutingSpace::createExtent(), BasicMessage::deserialize(), and BasicMessage::readExtents().

void setRangeLowerBound ( DimensionHandle  handle,
ULong  val 
) throw (ArrayIndexOutOfBounds)

Set range lower bound.

Definition at line 80 of file Extent.cc.

Referenced by RoutingSpace::createExtent(), BasicMessage::deserialize(), and BasicMessage::readExtents().

bool overlaps ( const Extent e  )  const

Check whether both extents overlap.

Definition at line 115 of file Extent.cc.

References certi::D, Extent::getRangeLowerBound(), Extent::getRangeUpperBound(), pdTrace, and Extent::size().

Here is the call graph for this function:

size_t size (  )  const

Get the number of ranges in this Extent.

Definition at line 106 of file Extent.cc.

References Extent::ranges.

Referenced by Extent::overlaps().


Member Data Documentation

RangeSet ranges [private]

Definition at line 68 of file Extent.hh.

Referenced by Extent::Extent(), and Extent::size().


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

Generated on Thu Apr 30 15:55:06 2009 for CERTIDeveloperDocumentation by doxygen 1.5.5