aGrUM  0.20.3
a C++ library for (probabilistic) graphical models
multidimensional tables
+ Collaboration diagram for multidimensional tables:

Detailed Description

Modules

 Operators on multidimensional tables
 
 Aggregators
 
 Function Graphs
 
 Patterns for multidimensional tables
 

Classes

class  gum::LabelizedVariable
 class LabelizedVariable More...
 
class  gum::MultiDimICIModel< GUM_SCALAR >
 abstract class for Conditional Indepency Models More...
 
class  gum::MultiDimLogit< GUM_SCALAR >
 Logit representation. More...
 
class  gum::MultiDimNoisyAND< GUM_SCALAR >
 Noisy AND representation. More...
 
class  gum::MultiDimNoisyORCompound< GUM_SCALAR >
 Noisy OR representation. More...
 
class  gum::MultiDimNoisyORNet< GUM_SCALAR >
 Noisy OR representation. More...
 
class  gum::MultiDimAdressable
 Abstract base class for all multi dimensionnal addressable. More...
 
class  gum::MultiDimArray< GUM_SCALAR >
 Multidimensional matrix stored as an array in memory. More...
 
class  gum::MultiDimBijArray< GUM_SCALAR >
 Decorator of a MultiDimArray, using a bijection over the variables. More...
 
class  gum::MultiDimBucket< GUM_SCALAR >
 A multidim implementation for buckets. More...
 
class  gum::MultiDimContainer< GUM_SCALAR >
 Abstract base class for all multi dimensionnal containers. More...
 
class  gum::MultiDimDecorator< GUM_SCALAR >
 Decorator design pattern in order to separate implementations from multidimensional matrix concepts. More...
 
class  gum::MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy >
 Class implementingting a function graph. More...
 
class  gum::MultiDimFunctionGraphGenerator
 Class implementing a function graph generator with template type double. More...
 
class  gum::MultiDimFunctionGraphManager< GUM_SCALAR, TerminalNodePolicy >
 Class implementingting a function graph manager. More...
 
class  gum::MultiDimFunctionGraphTreeManager< GUM_SCALAR, TerminalNodePolicy >
 
class  gum::MultiDimImplementation< GUM_SCALAR >
 <agrum/tools/multidim/multiDimImplementation.h> More...
 
class  gum::MultiDimInterface
 Interface for all classes addressing in a multiDim fashion. More...
 
class  gum::MultiDimPartialInstantiation< GUM_SCALAR, TABLE >
 A generic class to instantiate a subset of variables of a multidimensional table. More...
 
class  gum::MultiDimReadOnly< GUM_SCALAR >
 Abstract base class for all multi dimensionnal read only structure. More...
 
class  gum::MultiDimSparse< GUM_SCALAR >
 Multidimensional matrix stored as a sparse array in memory. More...
 
class  gum::MultiDimWithOffset< GUM_SCALAR >
 Abstract class for Multidimensional matrix stored as an array in memory and with an offset associated with each slave instantiation. More...
 
class  gum::Instantiation
 Class for assigning/browsing values to tuples of discrete variables. More...
 
class  gum::Potential< GUM_SCALAR >
 aGrUM's Potential is a multi-dimensional array with tensor operators. More...
 
class  gum::SetInst
 Class for assigning/browsing values to tuples of discrete variables. More...
 
class  gum::Parent
 Represent a node's parent. More...
 
class  gum::InternalNode
 Structure used to represent a node internal structure. More...
 
class  gum::Link< T >
 Link of a chain list allocated using the SmallObjectAllocator. More...
 
class  gum::LinkedList< T >
 Chain list allocated using the SmallObjectAllocator. More...
 
class  gum::MultiDimFunctionGraphOperator< GUM_SCALAR, FUNCTOR, TerminalNodePolicy >
 Class used to perform Function Graph Operations. More...
 
class  gum::MultiDimFunctionGraphProjector< GUM_SCALAR, FUNCTOR, TerminalNodePolicy >
 Class used to perform Function Graph projections. More...
 
class  gum::O4DGContext
 Class used to manipulate context during Function Graph Operations. More...
 
class  gum::Regress< GUM_SCALAR, COMBINEOPERATOR, PROJECTOPERATOR, TerminalNodePolicy >
 Class used to perform Function Graph Operations in the FMDP Framework. More...
 
class  gum::TreeOperator< GUM_SCALAR, COMBINEOPERATOR, TerminalNodePolicy >
 Class used to perform Decision Tree Operation in the FMDP Framework. More...
 
class  gum::TreeRegress< GUM_SCALAR, COMBINEOPERATOR, PROJECTOPERATOR, TerminalNodePolicy >
 Class used to perform Decision Tree Regression in the FMDP Framework. More...
 
class  gum::ExactTerminalNodePolicy< GUM_SCALAR >
 Implementation of a Terminal Node Policy that maps nodeid directly to value. More...
 
class  gum::ITerminalNodePolicy< GUM_SCALAR >
 Interface specifying the methods to be implemented by any TerminalNodePolicy. More...
 
class  gum::SetTerminalNodePolicy< GUM_SCALAR >
 Implementation of a Terminal Node Policy that maps nodeid to a set of value. More...
 
class  gum::PartialInstantiationRegister4MultiDim< GUM_SCALAR >
 A container for registering partial instantiation functions on multiDimImplementations, i.e., functions assigning values to subsets of the variables of some tables. More...
 
class  gum::DiscreteVariable
 Base class for discrete random variable. More...
 
class  gum::DiscretizedVariable< T_TICKS >
 Class for discretized random variable. More...
 
class  gum::IContinuousVariable
 A base class for continuous variables, independent of the GUM_SCALAR type. More...
 
class  gum::IDiscretizedVariable
 A base class for discretized variables, independent of the ticks type. More...
 
class  gum::Variable
 Base class for every random variable. More...
 

Functions

template<typename GUM_SCALAR >
std::ostream & gum::operator<< (std::ostream &, const MultiDimImplementation< GUM_SCALAR > &)
 For friendly displaying the content of the array. More...
 
MultiDimInterfacegum::operator<< (MultiDimInterface &c, const DiscreteVariable &v)
 Adds a new var to the sequence of vars. More...
 
MultiDimInterfacegum::operator>> (MultiDimInterface &c, const DiscreteVariable &v)
 Removes a var from the variables of the MutliDimAdressing. More...
 

Function Documentation

◆ operator<<() [1/2]

MultiDimInterface & gum::operator<< ( MultiDimInterface c,
const DiscreteVariable v 
)

Adds a new var to the sequence of vars.

This function is not VIRTUAL (call of add which IS virtual).

Warning
Note that the variable passed in argument is not duplicated, that is, only a pointer toward the variable is kept by the MultiDimInterface
mat << var1 << var2;

will insert

var1

first.

Parameters
cthe multidim container
vthe new var
Returns
a reference to *this
Exceptions
DuplicateElementRaised if the variable already belongs to the sequence of variables.
OperationNotAllowedRaised if *this is non mutable.

Definition at line 36 of file multiDimInterface.cpp.

36  {
37  c.add(v);
38  return c;
39  }

◆ operator<<() [2/2]

template<typename GUM_SCALAR >
std::ostream& gum::operator<< ( std::ostream &  ,
const MultiDimImplementation< GUM_SCALAR > &   
)

For friendly displaying the content of the array.

Definition at line 297 of file multiDimImplementation_tpl.h.

References gum::Set< Key, Alloc >::emplace().

298  {
299  return out << static_cast< const MultiDimContainer< GUM_SCALAR >& >(array);
300  }
+ Here is the call graph for this function:

◆ operator>>()

MultiDimInterface & gum::operator>> ( MultiDimInterface c,
const DiscreteVariable v 
)

Removes a var from the variables of the MutliDimAdressing.

Exceptions
OperationNotAllowedRaised if this object is non mutable.
NotFoundRaised if v does not belong to this

Definition at line 41 of file multiDimInterface.cpp.

41  {
42  c.erase(v);
43  return c;
44  }