|
FLOPC++
|
Representation of a set for indexing into some other construct.This is one of the main public interface classes. One uses this when constructing MP_domains, and subsets. It is frequent that one would directly construct sets of indices, then use expressions to subset or slice the data. More...
#include <MP_set.hpp>


Public Member Functions | |
| MP_set (int i=0) | |
| constructs a set with specific cardinality. More... | |
| MP_domain | operator() (const MP_index_exp &i) const |
| Constructs an MP_domain on the stack given an index expression into the set. More... | |
| operator MP_domain () const | |
| constructs an MP_domain from the MP_set. More... | |
| MP_domain | such_that (const MP_boolean &b) |
| constructs a domain by subsetting this MP_set where the MP_boolean evaluates to 'true' More... | |
| void | cyclic () |
| virtual int | size () const |
| getter for the cardinality of this MP_set. More... | |
| int | last () |
Public Member Functions inherited from flopc::MP_set_base | |
| MP_set_base () | |
| void | display () const |
| int | check (int i) const |
| int | checkStage (int i) const |
| virtual int | isStage () const |
Public Member Functions inherited from flopc::MP_index | |
| MP_index () | |
| Default constructor. More... | |
| int | evaluate () const |
| bool | isInstantiated () const |
| void | assign (int i) |
| void | unInstantiate () |
| void | instantiate () |
| MP_index * | getIndex () 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::Named | |
| std::string | getName () const |
| void | setName (const std::string &n) |
Static Public Member Functions | |
| static MP_set & | getEmpty () |
| gets the distinct 'empty' MP_set. More... | |
Static Public Member Functions inherited from flopc::MP_index | |
| static MP_index & | getEmpty () |
| returns a reference to the distinct "empty" index. More... | |
Private Attributes | |
| int | cardinality |
Static Private Attributes | |
| static MP_set | Empty = *new MP_set(1) |
Additional Inherited Members | |
Public Attributes inherited from flopc::MP_set_base | |
| bool | Cyclic |
Static Public Attributes inherited from flopc::MP_index | |
| static MP_index & | Any = *new MP_index() |
Protected Member Functions inherited from flopc::MP_index_base | |
| MP_index_base () | |
| virtual | ~MP_index_base () |
Representation of a set for indexing into some other construct.
This is one of the main public interface classes. One uses this when constructing MP_domains, and subsets. It is frequent that one would directly construct sets of indices, then use expressions to subset or slice the data.
Definition at line 78 of file MP_set.hpp.
|
inline |
constructs a set with specific cardinality.
Definition at line 81 of file MP_set.hpp.
|
inline |
setter for 'cyclic' property
Definition at line 102 of file MP_set.hpp.
References flopc::MP_set_base::Cyclic.
|
static |
gets the distinct 'empty' MP_set.
Definition at line 17 of file MP_set.cpp.
Referenced by flopc::MP_domain::getEmpty(), flopc::MP_data::operator()(), and flopc::MP_variable::operator()().
|
inline |
Definition at line 109 of file MP_set.hpp.
References cardinality.
|
inlinevirtual |
constructs an MP_domain from the MP_set.
Implements flopc::MP_set_base.
Definition at line 90 of file MP_set.hpp.
|
inlinevirtual |
Constructs an MP_domain on the stack given an index expression into the set.
Implements flopc::MP_set_base.
Definition at line 86 of file MP_set.hpp.
|
inlinevirtual |
getter for the cardinality of this MP_set.
Implements flopc::MP_set_base.
Reimplemented in flopc::MP_subset< nbr >.
Definition at line 106 of file MP_set.hpp.
References cardinality.
Referenced by flopc::MP_domain_set::operator()().
|
inline |
constructs a domain by subsetting this MP_set where the MP_boolean evaluates to 'true'
Definition at line 96 of file MP_set.hpp.
References flopc::MP_domain::such_that().
|
private |
Definition at line 116 of file MP_set.hpp.
Definition at line 115 of file MP_set.hpp.
1.8.5