aGrUM  0.20.3
a C++ library for (probabilistic) graphical models
completeProjections4MultiDim.h File Reference

Copyright (c) 2005-2021 by Pierre-Henri WUILLEMIN() & Christophe GONZALES() info_at_agrum_dot_org. More...

+ Include dependency graph for completeProjections4MultiDim.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  gum::CompleteProjections4MultiDimInitialize< GUM_SCALAR >
 a class used to register complete projections over non-pointers typesThis class is of course completely redundant with function completeProjections4MultiDimInit. More...
 
struct  gum::CompleteProjections4MultiDimInitialize< GUM_SCALAR *>
 a class used to register complete projections over pointers typesThis class is of course completely redundant with function pointerCompleteProjections4MultiDimInit. More...
 

Namespaces

 gum
 Copyright (c) 2005-2021 by Pierre-Henri WUILLEMIN() & Christophe GONZALES() info_at_agrum_dot_org.
 

Functions

template<typename GUM_SCALAR >
GUM_SCALAR gum::projectMax (const MultiDimImplementation< GUM_SCALAR > &table, Instantiation *instantiation=0)
 the function to be used to project a MultiDimImplementation using a Max More...
 
template<typename GUM_SCALAR >
GUM_SCALAR gum::projectMin (const MultiDimImplementation< GUM_SCALAR > &table, Instantiation *instantiation=0)
 the function to be used to project a MultiDimImplementation using a Min More...
 
template<typename GUM_SCALAR >
GUM_SCALAR gum::projectSum (const MultiDimImplementation< GUM_SCALAR > &table, Instantiation *instantiation=0)
 the function to be used to project a MultiDimImplementation using a sum More...
 
template<typename GUM_SCALAR >
GUM_SCALAR gum::projectProduct (const MultiDimImplementation< GUM_SCALAR > &table, Instantiation *instantiation=0)
 the function to be used to project a MultiDimImplementation using a Product More...
 
template<typename GUM_SCALAR >
void gum::completeProjections4MultiDimInit ()
 the function used to register all the complete projection operators on multidimImplementations over non-pointers types. More...
 
template<typename GUM_SCALAR >
void gum::pointerCompleteProjections4MultiDimInit ()
 The function used to register all the complete projections on multidimImplementations over pointers types. More...
 
Project Max Operators
template<typename GUM_SCALAR >
GUM_SCALAR gum::projectMaxMultiDimArray (const MultiDimArray< GUM_SCALAR > *table, Instantiation *instantiation=0)
 A specialized function for projecting a multiDimArray using a Max operator. More...
 
template<typename GUM_SCALAR >
GUM_SCALAR gum::projectMaxMultiDimArray (const MultiDimImplementation< GUM_SCALAR > *table, Instantiation *instantiation=0)
 A specialized function for projecting a multiDimArray using a Max operator. More...
 
template<typename GUM_SCALAR >
GUM_SCALAR * gum::projectMaxMultiDimArray4Pointers (const MultiDimArray< GUM_SCALAR * > *table, Instantiation *instantiation=0)
 A specialized function for projecting a multiDimArray using a Max operator. More...
 
template<typename GUM_SCALAR >
GUM_SCALAR * gum::projectMaxMultiDimArray4Pointers (const MultiDimImplementation< GUM_SCALAR * > *table, Instantiation *instantiation=0)
 A specialized function for projecting a multiDimArray using a Max operator. More...
 
Project Min Operators
template<typename GUM_SCALAR >
GUM_SCALAR gum::projectMinMultiDimArray (const MultiDimArray< GUM_SCALAR > *table, Instantiation *instantiation=0)
 A specialized function for projecting a multiDimArray using a Min operator. More...
 
template<typename GUM_SCALAR >
GUM_SCALAR gum::projectMinMultiDimArray (const MultiDimImplementation< GUM_SCALAR > *table, Instantiation *instantiation=0)
 A specialized function for projecting a multiDimArray using a Min operator. More...
 
template<typename GUM_SCALAR >
GUM_SCALAR * gum::projectMinMultiDimArray4Pointers (const MultiDimArray< GUM_SCALAR * > *table, Instantiation *instantiation=0)
 A specialized function for projecting a multiDimArray using a Min operator. More...
 
template<typename GUM_SCALAR >
GUM_SCALAR * gum::projectMinMultiDimArray4Pointers (const MultiDimImplementation< GUM_SCALAR * > *table, Instantiation *instantiation=0)
 A specialized function for projecting a multiDimArray using a Min operator. More...
 
Project Sum Operators
template<typename GUM_SCALAR >
GUM_SCALAR gum::projectSumMultiDimArray (const MultiDimArray< GUM_SCALAR > *table, Instantiation *instantiation=0)
 a specialized function for projecting a multiDimArray using a Sum operatorThe function projects a table over all its variables and, thus, returns the sum of the values stored in the table More...
 
template<typename GUM_SCALAR >
GUM_SCALAR gum::projectSumMultiDimArray (const MultiDimImplementation< GUM_SCALAR > *table, Instantiation *instantiation=0)
 a specialized function for projecting a multiDimArray using a Sum operatorThe function projects a table over all its variables and, thus, returns the sum of the values stored in the table More...
 
template<typename GUM_SCALAR >
GUM_SCALAR * gum::projectSumMultiDimArray4Pointers (const MultiDimArray< GUM_SCALAR * > *table, Instantiation *instantiation=0)
 a specialized function for projecting a multiDimArray using a Sum operatorThe function projects a table over all its variables and, thus, returns the sum of the values stored in the table More...
 
template<typename GUM_SCALAR >
GUM_SCALAR * gum::projectSumMultiDimArray4Pointers (const MultiDimImplementation< GUM_SCALAR * > *table, Instantiation *instantiation=0)
 a specialized function for projecting a multiDimArray using a Sum operatorThe function projects a table over all its variables and, thus, returns the sum of the values stored in the table More...
 
Project Multiply Operators
template<typename GUM_SCALAR >
GUM_SCALAR gum::projectProductMultiDimArray (const MultiDimArray< GUM_SCALAR > *table, Instantiation *instantiation=0)
 a function for projecting a multiDimArray using a Product operatorThe function projects a table over all its variables and, thus, returns the product of the values stored in the table More...
 
template<typename GUM_SCALAR >
GUM_SCALAR gum::projectProductMultiDimArray (const MultiDimImplementation< GUM_SCALAR > *table, Instantiation *instantiation=0)
 a function for projecting a multiDimArray using a Product operatorThe function projects a table over all its variables and, thus, returns the product of the values stored in the table More...
 
template<typename GUM_SCALAR >
GUM_SCALAR * gum::projectProductMultiDimArray4Pointers (const MultiDimArray< GUM_SCALAR * > *table, Instantiation *instantiation=0)
 a function for projecting a multiDimArray using a Product operatorThe function projects a table over all its variables and, thus, returns the product of the values stored in the table More...
 
template<typename GUM_SCALAR >
GUM_SCALAR * gum::projectProductMultiDimArray4Pointers (const MultiDimImplementation< GUM_SCALAR * > *table, Instantiation *instantiation=0)
 a function for projecting a multiDimArray using a Product operatorThe function projects a table over all its variables and, thus, returns the product of the values stored in the table More...
 

Detailed Description

Copyright (c) 2005-2021 by Pierre-Henri WUILLEMIN() & Christophe GONZALES() info_at_agrum_dot_org.

This library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library. If not, see http://www.gnu.org/licenses/.

Efficient functionals for projecting multidim tables over all their variables

Author
Christophe GONZALES() and Pierre-Henri WUILLEMIN()

Definition in file completeProjections4MultiDim.h.