FlopCpp trunk
Loading...
Searching...
No Matches
Public Member Functions | Friends | List of all members
flopc::MP_domain_subset< nbr > Class Template Reference

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

#include <MP_domain.hpp>

+ Inheritance diagram for flopc::MP_domain_subset< nbr >:
+ Collaboration diagram for flopc::MP_domain_subset< nbr >:

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_basegetSet () const
 getter for obtaining the set used in construction
 
MP_indexgetIndex () const
 getter for obtaining the index used in construction
 
MP_domain getDomain (MP_set *s) const
 
void operator() () const
 
FunctormakeInsertFunctor () const
 
- Public Member Functions inherited from flopc::MP_domain_base
 MP_domain_base ()
 
virtual ~MP_domain_base ()
 
virtual FunctormakeInsertFunctor () const
 
virtual MP_indexgetIndex () const =0
 
virtual const MP_set_basegetSet () const =0
 
void display () const
 
virtual size_t size () const
 
virtual void operator() () const =0
 
virtual int evaluate () const =0
 
virtual MP_indexgetIndex () const =0
 
virtual MP_domain getDomain (MP_set *s) const =0
 
virtual void display () const
 

Friends

class insertFunctor< nbr >
 

Additional Inherited Members

- Public Attributes inherited from flopc::MP_domain_base
const Functordonext
 
- Protected Member Functions inherited from flopc::Functor
 Functor ()
 
virtual ~Functor ()
 
- Protected Member Functions inherited from flopc::MP_index_base
 MP_index_base ()
 
virtual ~MP_index_base ()
 

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.

Definition at line 166 of file MP_domain.hpp.

Constructor & Destructor Documentation

◆ MP_domain_subset()

template<int nbr>
flopc::MP_domain_subset< nbr >::MP_domain_subset ( MP_subset< nbr > *  s,
const std::vector< MP_index * > &  i 
)
inline

Definition at line 153 of file MP_domain.hpp.

Member Function Documentation

◆ evaluate()

template<int nbr>
int flopc::MP_domain_subset< nbr >::evaluate ( ) const
inlinevirtual

Evaluates the index within the domain.


Note
For internal use

Implements flopc::MP_index_base.

Definition at line 175 of file MP_domain.hpp.

◆ getSet()

template<int nbr>
MP_set_base * flopc::MP_domain_subset< nbr >::getSet ( ) const
inlinevirtual

getter for obtaining the set used in construction

Implements flopc::MP_domain_base.

Definition at line 179 of file MP_domain.hpp.

◆ getIndex()

template<int nbr>
MP_index * flopc::MP_domain_subset< nbr >::getIndex ( ) const
inlinevirtual

getter for obtaining the index used in construction

Implements flopc::MP_domain_base.

Definition at line 183 of file MP_domain.hpp.

◆ getDomain()

template<int nbr>
MP_domain flopc::MP_domain_subset< nbr >::getDomain ( MP_set s) const
inlinevirtual
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.

◆ operator()()

template<int nbr>
void flopc::MP_domain_subset< nbr >::operator() ( ) const
inlinevirtual
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.

◆ makeInsertFunctor()

template<int nbr>
Functor * flopc::MP_domain_subset< nbr >::makeInsertFunctor ( ) const
inlinevirtual
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 Symbol Documentation

◆ insertFunctor< nbr >

template<int nbr>
friend class insertFunctor< nbr >
friend

Definition at line 153 of file MP_domain.hpp.


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