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

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

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

Go to the source code of this file.

Namespaces

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

Macros

#define GUM_PARTIAL_INSTANTIATION_PATTERN_ALLOWED   1
 
#define GUM_MULTI_DIM_DECORATOR_PARTIAL_INST(NAME)
 
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME   partialInstantiationMultiDimArray
 a specialized partial instantiation function for multiDimArrays More...
 
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_IMPL2ARRAY_NAME   partialInstantiationMultiDimArray
 
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_NAME   partialInstantiationMultiDimArray4Pointers
 
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_IMPL2ARRAY_NAME   partialInstantiationMultiDimArray4Pointers
 
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME   partialInstantiationMultiDimImplementation
 a specialized partial instantiation function for multiDimArrays More...
 
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_NAME   partialInstantiationMultiDimImplementation4Pointers
 
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME   partialInstantiation
 a specialized partial instantiation function for multiDimArrays More...
 

Functions

template<typename GUM_SCALAR >
void gum::partialInstantiation4MultiDimInit ()
 The function used to register all the instantiation operators on multidimImplementations over non-pointers types. More...
 
template<typename GUM_SCALAR >
void gum::pointerPartialInstantiation4MultiDimInit ()
 The function used to register all the instantiations on multidimImplementations over pointers types. 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/.

Implementation for partial instantiation functions.

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

Definition in file partialInstantiation4MultiDim_tpl.h.

Macro Definition Documentation

◆ GUM_MULTI_DIM_DECORATOR_PARTIAL_INST

#define GUM_MULTI_DIM_DECORATOR_PARTIAL_INST (   NAME)
Value:
namespace gum { \
template < typename GUM_SCALAR > \
MultiDimImplementation< GUM_SCALAR >* \
NAME(const MultiDimDecorator< GUM_SCALAR >& table, \
const HashTable< const DiscreteVariable*, Idx >& inst_vars) { \
const MultiDimImplementation< GUM_SCALAR >* impl = table.content(); \
return NAME(*impl, inst_vars); \
} \
}
Copyright (c) 2005-2021 by Pierre-Henri WUILLEMIN() & Christophe GONZALES() info_at_agrum_dot_org.

Definition at line 34 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_IMPL2ARRAY_NAME

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_IMPL2ARRAY_NAME   partialInstantiationMultiDimArray

Definition at line 51 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME [1/3]

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME   partialInstantiationMultiDimArray

a specialized partial instantiation function for multiDimArrays

the function to be used to partially instantiate a MultiDimImplementation

default "basename" functions for instantiating MultiDimImplementations

Definition at line 79 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME [2/3]

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME   partialInstantiationMultiDimImplementation

a specialized partial instantiation function for multiDimArrays

the function to be used to partially instantiate a MultiDimImplementation

default "basename" functions for instantiating MultiDimImplementations

Definition at line 79 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME [3/3]

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME   partialInstantiation

a specialized partial instantiation function for multiDimArrays

the function to be used to partially instantiate a MultiDimImplementation

default "basename" functions for instantiating MultiDimImplementations

Definition at line 79 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_IMPL2ARRAY_NAME

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_IMPL2ARRAY_NAME   partialInstantiationMultiDimArray4Pointers

Definition at line 59 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_NAME [1/2]

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_NAME   partialInstantiationMultiDimArray4Pointers

Definition at line 70 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_NAME [2/2]

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_NAME   partialInstantiationMultiDimImplementation4Pointers

Definition at line 70 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_PARTIAL_INSTANTIATION_PATTERN_ALLOWED

#define GUM_PARTIAL_INSTANTIATION_PATTERN_ALLOWED   1

Definition at line 30 of file partialInstantiation4MultiDim_tpl.h.