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 >:

List of all members.

Public Types

typedef M::Key Key
 
typedef M::Value Value
 

Public Member Functions

 ShiftMap (const M &m, const C &v)
 Constructor.
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.

Constructor & Destructor Documentation

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

Constructor.

Parameters:
mThe undelying map.
vThe constant value.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines