![]() |
aGrUM
0.20.3
a C++ library for (probabilistic) graphical models
|
#include <scheduleProject.h>
Public Member Functions | |
Constructors / Destructors | |
ScheduleProject (const ScheduleMultiDim< GUM_SCALAR > &table, const Set< const DiscreteVariable * > &del_vars, MultiDimImplementation< GUM_SCALAR > *(*project)(const MultiDimImplementation< GUM_SCALAR > &, const Set< const DiscreteVariable * > &)) | |
default constructor More... | |
ScheduleProject (const ScheduleProject< GUM_SCALAR > &) | |
copy constructor More... | |
virtual ScheduleProject< GUM_SCALAR > * | newFactory () const |
virtual copy constructor: creates a clone of the operation More... | |
virtual | ~ScheduleProject () |
destructor More... | |
Operators | |
ScheduleProject< GUM_SCALAR > & | operator= (const ScheduleProject< GUM_SCALAR > &) |
copy operator More... | |
bool | operator== (const ScheduleOperation< GUM_SCALAR > &) const |
operator == More... | |
bool | operator!= (const ScheduleOperation< GUM_SCALAR > &) const |
operator != More... | |
Accessors/Modifiers | |
void | execute () |
executes the operation More... | |
float | nbOperations () const |
returns an estimation of the number of elementary operations needed to perform the ScheduleOperation More... | |
std::pair< long, long > | memoryUsage () const |
returns the memory consumption used during the operation More... | |
const ScheduleMultiDim< GUM_SCALAR > & | result () const |
returns the scheduleMultidim resulting from the execution of the operation More... | |
const Sequence< const ScheduleMultiDim< GUM_SCALAR > *> & | multiDimArgs () const |
returns the set of multidims passed in argument to the operation More... | |
const Sequence< const ScheduleMultiDim< GUM_SCALAR > *> & | multiDimResults () const |
returns the set of multidims that should be the result of the operation More... | |
std::string | toString () const |
displays the content of the operation More... | |
Accessors/Modifiers | |
Type | type () const |
returns the name of the operation More... | |
Idx | id () const |
returns the id of the operation More... | |
Public Types | |
enum | Type : char { Type::COMBINE_MULTIDIM, Type::PROJECT_MULTIDIM, Type::DELETE_MULTIDIM, Type::CLIQUE_STORE_MULTIDIM, Type::SEPARATOR_STORE_MULTIDIM } |
the currently supported types of operations More... | |
Definition at line 46 of file scheduleProject.h.
|
stronginherited |
the currently supported types of operations
Enumerator | |
---|---|
COMBINE_MULTIDIM | combine 2 ScheduleMultiDims |
PROJECT_MULTIDIM | project a ScheduleMultiDim over a subset of its variables |
DELETE_MULTIDIM | delete a MultiDim from memory |
CLIQUE_STORE_MULTIDIM | store a Multidim into a clique |
SEPARATOR_STORE_MULTIDIM | store a multidim into a separator |
Definition at line 44 of file scheduleOperation.h.
gum::ScheduleProject< GUM_SCALAR >::ScheduleProject | ( | const ScheduleMultiDim< GUM_SCALAR > & | table, |
const Set< const DiscreteVariable * > & | del_vars, | ||
MultiDimImplementation< GUM_SCALAR > *(*)(const MultiDimImplementation< GUM_SCALAR > &, const Set< const DiscreteVariable * > &) | project | ||
) |
default constructor
gum::ScheduleProject< GUM_SCALAR >::ScheduleProject | ( | const ScheduleProject< GUM_SCALAR > & | ) |
copy constructor
|
virtual |
destructor
|
virtual |
executes the operation
Implements gum::ScheduleOperation< GUM_SCALAR >.
|
inherited |
returns the id of the operation
|
virtual |
returns the memory consumption used during the operation
Actually, this function does not return a precise account of the memory used by the ScheduleOperation but a rough estimate based on the sizes of the tables involved in the operation.
Implements gum::ScheduleOperation< GUM_SCALAR >.
|
virtual |
returns the set of multidims passed in argument to the operation
Implements gum::ScheduleOperation< GUM_SCALAR >.
|
virtual |
returns the set of multidims that should be the result of the operation
Implements gum::ScheduleOperation< GUM_SCALAR >.
|
virtual |
returns an estimation of the number of elementary operations needed to perform the ScheduleOperation
Implements gum::ScheduleOperation< GUM_SCALAR >.
|
virtual |
virtual copy constructor: creates a clone of the operation
Implements gum::ScheduleOperation< GUM_SCALAR >.
|
virtual |
operator !=
Two operations are identical if and only if they have the same arguments and their types are identical (combine, project, etc)
Implements gum::ScheduleOperation< GUM_SCALAR >.
ScheduleProject< GUM_SCALAR >& gum::ScheduleProject< GUM_SCALAR >::operator= | ( | const ScheduleProject< GUM_SCALAR > & | ) |
copy operator
|
virtual |
operator ==
Two operations are identical if and only if they have the same arguments and their types are identical (combine, project, etc)
Implements gum::ScheduleOperation< GUM_SCALAR >.
const ScheduleMultiDim< GUM_SCALAR >& gum::ScheduleProject< GUM_SCALAR >::result | ( | ) | const |
returns the scheduleMultidim resulting from the execution of the operation
|
virtual |
displays the content of the operation
Implements gum::ScheduleOperation< GUM_SCALAR >.
|
inherited |
returns the name of the operation
|
mutableprivate |
the set of ScheduleMultidims passed in arguments
Definition at line 141 of file scheduleProject.h.
|
private |
Definition at line 135 of file scheduleProject.h.
|
private |
the projection operator
Definition at line 147 of file scheduleProject.h.
|
private |
the result of the operation
Definition at line 138 of file scheduleProject.h.
|
mutableprivate |
the set of ScheduleMultidims resulting from the operation
Definition at line 144 of file scheduleProject.h.
|
private |
Definition at line 132 of file scheduleProject.h.