Om  1.0.0
A universal framework for multimedia simulation
Classes | Namespaces | Functions
omFunction.h File Reference
#include "omLanguageConfig.h"
#include "internal/omFunctionDefinition.h"
#include "internal/omMemberFunction.h"

Classes

class  om::lang::Function< Signature >
 Prototype for the function object template class. More...
 
class  om::lang::Function< R(T1) >
 Specialization of the function template class for a method with 1 parameter. More...
 
class  om::lang::Function< R(T1, T2) >
 Specialization of the function template class for a method with 2 parameters. More...
 
class  om::lang::Function< R(T1, T2, T3) >
 Specialization of the function template class for a method with 3 parameters. More...
 
class  om::lang::Function< R(T1, T2, T3, T4) >
 Specialization of the function template class for a method with 4 parameters. More...
 
class  om::lang::Function< R(T1, T2, T3, T4, T5) >
 Specialization of the function template class for a method with 5 parameters. More...
 
class  om::lang::Function< R(T1, T2, T3, T4, T5, T6) >
 Specialization of the function template class for a method with 6 parameters. More...
 
class  om::lang::Function< R(T1, T2, T3, T4, T5, T6, T7) >
 Specialization of the function template class for a method with 7 parameters. More...
 
class  om::lang::Function< R(T1, T2, T3, T4, T5, T6, T7, T8) >
 Specialization of the function template class for a method with 8 parameters. More...
 
class  om::lang::Function< R(T1, T2, T3, T4, T5, T6, T7, T8, T9) >
 Specialization of the function template class for a method with 8 parameters. More...
 
class  om::lang::Function< R(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) >
 Specialization of the function template class for a method with 10 parameters. More...
 

Namespaces

 om
 The enclosing namespace for the entire Om library.
 
 om::lang
 A namespace containing classes that extend the basic functionality of C++.
 

Functions

template<typename R >
Function< R()> om::lang::bind (R(*functionPointer)())
 
template<typename ObjectType , typename ObjectType2 , typename R >
Function< R()> om::lang::bind (R(ObjectType2::*functionPointer)(), ObjectType *objectPointer)
 
template<typename ObjectType , typename ObjectType2 , typename R >
Function< R()> om::lang::bind (R(ObjectType2::*functionPointer)() const, const ObjectType *objectPointer)
 
template<typename R , typename T1 >
Function< R(T1)> om::lang::bind (R(*functionPointer)(T1))
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 >
Function< R(T1)> om::lang::bind (R(ObjectType2::*functionPointer)(T1), ObjectType *objectPointer)
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 >
Function< R(T1)> om::lang::bind (R(ObjectType2::*functionPointer)(T1) const, const ObjectType *objectPointer)
 
template<typename R , typename T1 , typename T2 >
Function< R(T1, T2)> om::lang::bind (R(*functionPointer)(T1, T2))
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 >
Function< R(T1, T2)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2), ObjectType *objectPointer)
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 >
Function< R(T1, T2)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2) const, const ObjectType *objectPointer)
 
template<typename R , typename T1 , typename T2 , typename T3 >
Function< R(T1, T2, T3)> om::lang::bind (R(*functionPointer)(T1, T2, T3))
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 >
Function< R(T1, T2, T3)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3), ObjectType *objectPointer)
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 >
Function< R(T1, T2, T3)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3) const, const ObjectType *objectPointer)
 
template<typename R , typename T1 , typename T2 , typename T3 , typename T4 >
Function< R(T1, T2, T3, T4)> om::lang::bind (R(*functionPointer)(T1, T2, T3, T4))
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 >
Function< R(T1, T2, T3, T4)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4), ObjectType *objectPointer)
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 >
Function< R(T1, T2, T3, T4)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4) const, const ObjectType *objectPointer)
 
template<typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
Function< R(T1, T2, T3, T4, T5)> om::lang::bind (R(*functionPointer)(T1, T2, T3, T4, T5))
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
Function< R(T1, T2, T3, T4, T5)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4, T5), ObjectType *objectPointer)
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
Function< R(T1, T2, T3, T4, T5)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4, T5) const, const ObjectType *objectPointer)
 
template<typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
Function< R(T1, T2, T3, T4, T5, T6)> om::lang::bind (R(*functionPointer)(T1, T2, T3, T4, T5, T6))
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
Function< R(T1, T2, T3, T4, T5, T6)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4, T5, T6), ObjectType *objectPointer)
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
Function< R(T1, T2, T3, T4, T5, T6)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4, T5, T6) const, const ObjectType *objectPointer)
 
template<typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 >
Function< R(T1, T2, T3, T4, T5, T6, T7)> om::lang::bind (R(*functionPointer)(T1, T2, T3, T4, T5, T6, T7))
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 >
Function< R(T1, T2, T3, T4, T5, T6, T7)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4, T5, T6, T7), ObjectType *objectPointer)
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 >
Function< R(T1, T2, T3, T4, T5, T6, T7)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4, T5, T6, T7) const, const ObjectType *objectPointer)
 
template<typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
Function< R(T1, T2, T3, T4, T5, T6, T7, T8)> om::lang::bind (R(*functionPointer)(T1, T2, T3, T4, T5, T6, T7, T8))
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
Function< R(T1, T2, T3, T4, T5, T6, T7, T8)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4, T5, T6, T7, T8), ObjectType *objectPointer)
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
Function< R(T1, T2, T3, T4, T5, T6, T7, T8)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4, T5, T6, T7, T8) const, const ObjectType *objectPointer)
 
template<typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 >
Function< R(T1, T2, T3, T4, T5, T6, T7, T8, T9)> om::lang::bind (R(*functionPointer)(T1, T2, T3, T4, T5, T6, T7, T8, T9))
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 >
Function< R(T1, T2, T3, T4, T5, T6, T7, T8, T9)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4, T5, T6, T7, T8, T9), ObjectType *objectPointer)
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 >
Function< R(T1, T2, T3, T4, T5, T6, T7, T8, T9)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4, T5, T6, T7, T8, T9) const, const ObjectType *objectPointer)
 
template<typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 >
Function< R(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)> om::lang::bind (R(*functionPointer)(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10))
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 >
Function< R(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10), ObjectType *objectPointer)
 
template<typename ObjectType , typename ObjectType2 , typename R , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 >
Function< R(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)> om::lang::bind (R(ObjectType2::*functionPointer)(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) const, const ObjectType *objectPointer)