FunctionBinding< T, R > Class Template Reference

#include <FunctionBinding.h>

Inheritance diagram for FunctionBinding< T, R >:

ValueSource< R >

Detailed Description

template<class T, typename R>
class FunctionBinding< T, R >

Definition at line 44 of file FunctionBinding.h.


Public Types

typedef R(T::* Operation )() const
 Type of the function to execute.

Public Member Functions

ValueSource< R > * copy () const
 FunctionBinding (T *source, Operation operation)
getValue () const
ValueSource< SUMOReal > * makeSUMORealReturningCopy () const
 ~FunctionBinding ()
 Destructor.

Private Attributes

Operation myOperation
 The object's operation to perform.
T * mySource
 The object the action is directed to.

Member Typedef Documentation

template<class T, typename R>
typedef R(T::* FunctionBinding< T, R >::Operation)() const

Type of the function to execute.


Constructor & Destructor Documentation

template<class T, typename R>
FunctionBinding< T, R >::FunctionBinding ( T *  source,
Operation  operation 
) [inline]

Definition at line 49 of file FunctionBinding.h.

00049                                                     :
00050             mySource(source),
00051             myOperation(operation) {}

template<class T, typename R>
FunctionBinding< T, R >::~FunctionBinding (  )  [inline]

Destructor.

Definition at line 54 of file FunctionBinding.h.

00054 {}


Member Function Documentation

template<class T, typename R>
ValueSource<R>* FunctionBinding< T, R >::copy (  )  const [inline, virtual]

Implements ValueSource< R >.

Definition at line 60 of file FunctionBinding.h.

References FunctionBinding< T, R >::myOperation, and FunctionBinding< T, R >::mySource.

00060                                  {
00061         return new FunctionBinding<T, R>(mySource, myOperation);
00062     }

template<class T, typename R>
R FunctionBinding< T, R >::getValue (  )  const [inline, virtual]

Implements ValueSource< R >.

Definition at line 56 of file FunctionBinding.h.

References FunctionBinding< T, R >::myOperation, and FunctionBinding< T, R >::mySource.

00056                        {
00057         return (mySource->*myOperation)();
00058     }

template<class T, typename R>
ValueSource<SUMOReal>* FunctionBinding< T, R >::makeSUMORealReturningCopy (  )  const [inline, virtual]


Field Documentation

template<class T, typename R>
Operation FunctionBinding< T, R >::myOperation [private]

template<class T, typename R>
T* FunctionBinding< T, R >::mySource [private]

The object the action is directed to.

Definition at line 70 of file FunctionBinding.h.

Referenced by FunctionBinding< T, R >::copy(), FunctionBinding< T, R >::getValue(), and FunctionBinding< T, R >::makeSUMORealReturningCopy().


The documentation for this class was generated from the following file:

Generated on Wed May 5 00:06:41 2010 for Sumo - Simulation of Urban MObility by  doxygen 1.5.6