ltl::Range Class Reference

Class to enable referencing of ltl::MArray index ranges. More...

List of all members.

Public Member Functions

Static Public Member Functions


Detailed Description

Class to enable referencing of ltl::MArray index ranges.

A ltl::Range is a utility object used in the context of ltl::MArray describing a range of integers used for creating arrays and indexing an array along one dimension. For example, the set of indices {-10, -8, ..., 6, 8, 10} is represented by the object Range( -10, 10, 2 ).


Constructor & Destructor Documentation

ltl::Range::Range (  )  [inline]

ltl::Range::Range ( const int  first,
const int  last,
const int  stride = 1 
) [inline]

Construct a Range object.

The stride arguments defaults to 1 and may be omitted. last >= first is required.

ltl::Range::Range ( const Range other  )  [inline]


Member Function Documentation

int ltl::Range::first ( int  lowest = minStart  )  const [inline]

Return the first index.

int ltl::Range::last ( int  highest = minEnd  )  const [inline]

Return the last index.

int ltl::Range::length (  )  const [inline]

Return the number of indices in the range.

int ltl::Range::stride (  )  const [inline]

Return the stride.

static Range ltl::Range::all (  )  [inline, static]

This static member returns a special Range object that represents the entire dimension, wherever used.

This is useful to refer to an entire dimension without having to figure out the actual size.

Range ltl::Range::operator- ( const int  shift  )  const [inline]

Return a negative shifted Range object.

I.e. one whose lower and upper indices are lower by a number shift.

Range ltl::Range::operator+ ( const int  shift  )  const [inline]

Return a positive shifted Range object.

I.e. one whose lower and upper indices are higher by a number shift.


Generated on Wed Mar 11 17:44:36 2009 for LTL by  doxygen 1.5.3