# flopc::MP_domain_subset< nbr > Class Template Reference
[Public interface]

Range over which some other constuct is defined. More...

`#include <MP_domain.hpp>`

Inheritance diagram for flopc::MP_domain_subset< nbr >:
[legend]
Collaboration diagram for flopc::MP_domain_subset< nbr >:
[legend]

List of all members.

## Public Member Functions
| MP_domain_subset (MP_subset< nbr > *s, const std::vector< MP_index * > &i)
int | evaluate () const
| Evaluates the index within the domain.
MP_set_base * | getSet () const
| getter for obtaining the set used in construction
MP_index * | getIndex () const
| getter for obtaining the index used in construction
MP_domain | getDomain (MP_set *s) const
void | operator() () const
Functor * | makeInsertFunctor () const
## Private Attributes
MP_subset< nbr > * | S
std::vector< MP_index * > | I
## Friends
class | insertFunctor< nbr >

## Detailed Description

### template<int nbr>
class flopc::MP_domain_subset< nbr >

Range over which some other constuct is defined.

Uses subsetting.

This is one of the main public interface classes. One uses this in the context of a constraint, objective, variable, or data. This class in the MP_domain family uses an MP_subset and a vector of indexes for defining the Range over which the construct is defined.

- This defines the domain as the contents of the subset when referred into by the indexes.

Definition at line 166 of file MP_domain.hpp.

## Constructor & Destructor Documentation

template<int nbr>

flopc::MP_domain_subset< nbr >::MP_domain_subset | ( | MP_subset< nbr > * | s,
|  | const std::vector< MP_index * > & | i |
| ) |  |  | `[inline]`

## Member Function Documentation

template<int nbr>

int flopc::MP_domain_subset< nbr >::evaluate | ( |  | ) | const`[inline, virtual]`

Evaluates the index within the domain.

Note:
  For internal use

Implements flopc::MP_index_base.

Definition at line 175 of file MP_domain.hpp.

template<int nbr>

MP_set_base* flopc::MP_domain_subset< nbr >::getSet | ( |  | ) | const`[inline, virtual]`

getter for obtaining the set used in construction

Implements flopc::MP_domain_base.

Definition at line 179 of file MP_domain.hpp.

template<int nbr>

MP_index* flopc::MP_domain_subset< nbr >::getIndex | ( |  | ) | const`[inline, virtual]`

getter for obtaining the index used in construction

Implements flopc::MP_domain_base.

Definition at line 183 of file MP_domain.hpp.

template<int nbr>

MP_domain flopc::MP_domain_subset< nbr >::getDomain | ( | MP_set * | s | ) | const`[inline, virtual]`

Note:
  Internal use.

Todo:
  Is internal? can be private? or needs more doc.

Implements flopc::MP_index_base.

Definition at line 189 of file MP_domain.hpp.

template<int nbr>

void flopc::MP_domain_subset< nbr >::operator() | ( |  | ) | const`[inline, virtual]`

Todo:
  should this be public? Should it be called? If so, needs doc.

Implements flopc::Functor.

Definition at line 193 of file MP_domain.hpp.

template<int nbr>

Functor* flopc::MP_domain_subset< nbr >::makeInsertFunctor | ( |  | ) | const`[inline, virtual]`

Todo:
  should this be public? Should it be called? If so, needs doc.

Reimplemented from flopc::MP_domain_base.

Definition at line 240 of file MP_domain.hpp.

## Friends And Related Function Documentation

template<int nbr>

friend class insertFunctor< nbr >`[friend]`

Definition at line 167 of file MP_domain.hpp.

## Member Data Documentation

template<int nbr>

MP_subset<nbr>* flopc::MP_domain_subset< nbr >::S`[private]`

Definition at line 245 of file MP_domain.hpp.

template<int nbr>

std::vector<MP_index*> flopc::MP_domain_subset< nbr >::I`[private]`

Definition at line 246 of file MP_domain.hpp.

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

- /home/coin/svn-release/Smi-0.93.1/FlopCpp/src/MP_domain.hpp