opengm::SparseFunction< T, I, L, CONTAINER > Class Template Reference

#include <sparsemarray.hxx>

Inheritance diagram for opengm::SparseFunction< T, I, L, CONTAINER >:
Inheritance graph
[legend]
Collaboration diagram for opengm::SparseFunction< T, I, L, CONTAINER >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef CONTAINER ContainerType
typedef ContainerType::key_type KeyType
typedef ContainerType::mapped_type MappedType
typedef std::pair< KeyType,
MappedType
KeyValPairType
typedef T ValueType
typedef I IndexType
typedef L LabelType
typedef
ContainerType::const_iterator 
ConstContainerIteratorType
typedef ContainerType::iterator ContainerIteratorType

Public Member Functions

 SparseFunction ()
template<class SHAPE_ITERATOR >
 SparseFunction (SHAPE_ITERATOR shapeBegin, SHAPE_ITERATOR shapeEnd, const ValueType defaultValue)
size_t size () const
const ContainerTypecontainer () const
ContainerTypecontainer ()
const size_t dimension () const
const LabelType shape (const IndexType i) const
template<class COORDINATE_ITERATOR >
void keyToCoordinate (const KeyType key, COORDINATE_ITERATOR coordinate) const
template<class COORDINATE_ITERATOR >
KeyType coordinateToKey (COORDINATE_ITERATOR coordinate) const
template<class COORDINATE_ITERATOR , size_t DIM>
KeyType coordinateToKeyWithDim (COORDINATE_ITERATOR coordinate) const
template<class COORDINATE_ITERATOR >
ValueType operator() (COORDINATE_ITERATOR coordinate) const
ValueType defaultValue () const
ValueType valueFromKey (const KeyType key) const
template<class COORDINATE_ITERATOR >
void insert (COORDINATE_ITERATOR coordinate, const ValueType value)

Detailed Description

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
class opengm::SparseFunction< T, I, L, CONTAINER >

Definition at line 14 of file datastructures/sparsemarray/sparsemarray.hxx.


Member Typedef Documentation

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
typedef ContainerType::const_iterator opengm::SparseFunction< T, I, L, CONTAINER >::ConstContainerIteratorType

Definition at line 25 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
typedef ContainerType::iterator opengm::SparseFunction< T, I, L, CONTAINER >::ContainerIteratorType

Definition at line 26 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
typedef CONTAINER opengm::SparseFunction< T, I, L, CONTAINER >::ContainerType

Definition at line 16 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
typedef I opengm::SparseFunction< T, I, L, CONTAINER >::IndexType

Definition at line 21 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
typedef ContainerType::key_type opengm::SparseFunction< T, I, L, CONTAINER >::KeyType

Definition at line 17 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
typedef std::pair<KeyType,MappedType> opengm::SparseFunction< T, I, L, CONTAINER >::KeyValPairType

Definition at line 19 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
typedef L opengm::SparseFunction< T, I, L, CONTAINER >::LabelType

Definition at line 22 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
typedef ContainerType::mapped_type opengm::SparseFunction< T, I, L, CONTAINER >::MappedType

Definition at line 18 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
typedef T opengm::SparseFunction< T, I, L, CONTAINER >::ValueType

Definition at line 20 of file datastructures/sparsemarray/sparsemarray.hxx.


Constructor & Destructor Documentation

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
opengm::SparseFunction< T, I, L, CONTAINER >::SparseFunction (  )  [inline]

Definition at line 29 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
template<class SHAPE_ITERATOR >
opengm::SparseFunction< T, I, L, CONTAINER >::SparseFunction ( SHAPE_ITERATOR  shapeBegin,
SHAPE_ITERATOR  shapeEnd,
const ValueType  defaultValue 
) [inline]

Definition at line 40 of file datastructures/sparsemarray/sparsemarray.hxx.


Member Function Documentation

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
ContainerType& opengm::SparseFunction< T, I, L, CONTAINER >::container (  )  [inline]

Definition at line 67 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
const ContainerType& opengm::SparseFunction< T, I, L, CONTAINER >::container (  )  const [inline]

Definition at line 64 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
template<class COORDINATE_ITERATOR >
KeyType opengm::SparseFunction< T, I, L, CONTAINER >::coordinateToKey ( COORDINATE_ITERATOR  coordinate  )  const [inline]

Definition at line 98 of file datastructures/sparsemarray/sparsemarray.hxx.

Here is the caller graph for this function:

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
template<class COORDINATE_ITERATOR , size_t DIM>
KeyType opengm::SparseFunction< T, I, L, CONTAINER >::coordinateToKeyWithDim ( COORDINATE_ITERATOR  coordinate  )  const [inline]
template<class T, class I, class L, class CONTAINER = std::map<I,T>>
ValueType opengm::SparseFunction< T, I, L, CONTAINER >::defaultValue (  )  const [inline]
template<class T, class I, class L, class CONTAINER = std::map<I,T>>
const size_t opengm::SparseFunction< T, I, L, CONTAINER >::dimension (  )  const [inline]

Definition at line 70 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
template<class COORDINATE_ITERATOR >
void opengm::SparseFunction< T, I, L, CONTAINER >::insert ( COORDINATE_ITERATOR  coordinate,
const ValueType  value 
) [inline]

Definition at line 175 of file datastructures/sparsemarray/sparsemarray.hxx.

Here is the call graph for this function:

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
template<class COORDINATE_ITERATOR >
void opengm::SparseFunction< T, I, L, CONTAINER >::keyToCoordinate ( const KeyType  key,
COORDINATE_ITERATOR  coordinate 
) const [inline]

Definition at line 80 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
template<class COORDINATE_ITERATOR >
ValueType opengm::SparseFunction< T, I, L, CONTAINER >::operator() ( COORDINATE_ITERATOR  coordinate  )  const [inline]

Definition at line 117 of file datastructures/sparsemarray/sparsemarray.hxx.

Here is the call graph for this function:

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
const LabelType opengm::SparseFunction< T, I, L, CONTAINER >::shape ( const IndexType  i  )  const [inline]

Definition at line 73 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
size_t opengm::SparseFunction< T, I, L, CONTAINER >::size (  )  const [inline]

Definition at line 56 of file datastructures/sparsemarray/sparsemarray.hxx.

template<class T, class I, class L, class CONTAINER = std::map<I,T>>
ValueType opengm::SparseFunction< T, I, L, CONTAINER >::valueFromKey ( const KeyType  key  )  const [inline]

Definition at line 164 of file datastructures/sparsemarray/sparsemarray.hxx.

Here is the caller graph for this function:

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Mon Jun 17 16:31:10 2013 for OpenGM by  doxygen 1.6.3