FLOPC++
Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Attributes | Static Private Attributes | List of all members
flopc::MP_index Class Reference

Representation of an index.This is one of the main public interface classes. It is used to iterate through, or index into an MP_domain. It is also used to share the 'current' index offsets between expressions which share an index. More...

#include <MP_index.hpp>

Inheritance diagram for flopc::MP_index:
Inheritance graph
[legend]
Collaboration diagram for flopc::MP_index:
Collaboration graph
[legend]

Public Member Functions

 MP_index ()
 Default constructor. More...
 
int evaluate () const
 
bool isInstantiated () const
 
void assign (int i)
 
void unInstantiate ()
 
void instantiate ()
 
MP_indexgetIndex () const
 
virtual MP_domain getDomain (MP_set *s) const
 Getter for domain over which this index is applied. More...
 
- Public Member Functions inherited from flopc::MP_index_base
virtual void display () const
 

Static Public Member Functions

static MP_indexgetEmpty ()
 returns a reference to the distinct "empty" index. More...
 

Static Public Attributes

static MP_indexAny = *new MP_index()
 

Private Attributes

int index
 
bool instantiated
 

Static Private Attributes

static MP_indexEmpty = *new MP_index()
 

Additional Inherited Members

- Protected Member Functions inherited from flopc::MP_index_base
 MP_index_base ()
 
virtual ~MP_index_base ()
 

Detailed Description

Representation of an index.

This is one of the main public interface classes. It is used to iterate through, or index into an MP_domain. It is also used to share the 'current' index offsets between expressions which share an index.

Definition at line 53 of file MP_index.hpp.

Constructor & Destructor Documentation

flopc::MP_index::MP_index ( )
inline

Default constructor.

Definition at line 56 of file MP_index.hpp.

Member Function Documentation

void flopc::MP_index::assign ( int  i)
inline

Setter for the index.

Todo:

should this be private?

should this assert "instatiated"?

Definition at line 70 of file MP_index.hpp.

References index.

Referenced by flopc::MP_domain_set::operator()().

int flopc::MP_index::evaluate ( ) const
inlinevirtual
MP_domain MP_index::getDomain ( MP_set s) const
virtual

Getter for domain over which this index is applied.

Implements flopc::MP_index_base.

Definition at line 97 of file MP_index.cpp.

MP_index & flopc::MP_index::getEmpty ( )
static

returns a reference to the distinct "empty" index.

Definition at line 20 of file MP_index.cpp.

References Empty.

Referenced by flopc::MP_domain_subset< nbr >::operator()().

MP_index* flopc::MP_index::getIndex ( ) const
inlinevirtual

getter for MP_index * data type.

Todo:

should this be private?

should this be virtual?

Implements flopc::MP_index_base.

Definition at line 89 of file MP_index.hpp.

void flopc::MP_index::instantiate ( )
inline

setter for instatiated.

Todo:
should this be private?

Definition at line 82 of file MP_index.hpp.

References instantiated.

Referenced by flopc::MP_domain_set::operator()().

bool flopc::MP_index::isInstantiated ( ) const
inline

interrogate state of instatiation of data.

Todo:
should this be private?

Definition at line 63 of file MP_index.hpp.

References instantiated.

Referenced by flopc::MP_domain_set::operator()().

void flopc::MP_index::unInstantiate ( )
inline

unsetter for instatiated.

Todo:
should this be private?

Definition at line 76 of file MP_index.hpp.

References instantiated.

Referenced by flopc::MP_domain_set::operator()().

Member Data Documentation

MP_index & flopc::MP_index::Any = *new MP_index()
static
Todo:

should this be private?

doc purpose.

Definition at line 97 of file MP_index.hpp.

MP_index & flopc::MP_index::Empty = *new MP_index()
staticprivate

Definition at line 102 of file MP_index.hpp.

Referenced by getEmpty().

int flopc::MP_index::index
private

Definition at line 103 of file MP_index.hpp.

Referenced by assign(), and evaluate().

bool flopc::MP_index::instantiated
private

Definition at line 104 of file MP_index.hpp.

Referenced by instantiate(), isInstantiated(), and unInstantiate().


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