All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
List of all members | Public Types | Public Member Functions | Related Functions
ShiftMap< M, C > Class Template Reference

Detailed Description

template<typename M, typename C = typename M::Value>
class lemon::ShiftMap< M, C >

This read-only map returns the sum of the given map and a constant value (i.e. it shifts the map with the constant). Its Key and Value are inherited from M.

Actually,

* ShiftMap<M> sh(m,v);
*

is equivalent to

* ConstMap<M::Key, M::Value> cm(v);
* AddMap<M, ConstMap<M::Key, M::Value> > sh(m,cm);
*

The simplest way of using this map is through the shiftMap() function.

See Also
ShiftWriteMap

#include <lemon/maps.h>

+ Inheritance diagram for ShiftMap< M, C >:

Public Types

typedef M::Key Key
 
 
typedef M::Value Value
 
 
- Public Types inherited from MapBase< M::Key, M::Value >
typedef M::Key Key
 The key type of the map.
 
typedef M::Value Value
 The value type of the map. (The type of objects associated with the keys).
 

Public Member Functions

 ShiftMap (const M &m, const C &v)
 Constructor. More...
 
Value operator[] (const Key &k) const
 
 

Related Functions

(Note that these are not member functions.)

template<typename M , typename C >
ShiftMap< M, C > shiftMap (const M &m, const C &v)
 Returns a ShiftMap class. More...
 

Constructor & Destructor Documentation

ShiftMap ( const M &  m,
const C &  v 
)
inline

Constructor.

Parameters
mThe undelying map.
vThe constant value.