Om  1.0.0
A universal framework for multimedia simulation
Public Types | Public Member Functions | List of all members
om::lang::Function< R() > Class Template Reference

Specialization of the function template class for a method with 0 parameters. More...

#include <omFunction.h>

Public Types

typedef R ReturnType
 The return type of this function object. More...
 

Public Member Functions

 Function ()
 Create a new default function object with a NULL function pointer. More...
 
 Function (R(*functionPointer)())
 Create a new function object that wraps the specified non-member function pointer. More...
 
template<typename ObjectType , typename ObjectType2 >
 Function (R(ObjectType2::*functionPointer)(), ObjectType *objectPointer)
 Create a new function object that wraps the specified object and member function pointer. More...
 
template<typename ObjectType , typename ObjectType2 >
 Function (R(ObjectType2::*functionPointer)() const, const ObjectType *objectPointer)
 Create a new function object that wraps the specified object and const member function pointer. More...
 
ReturnType operator() () const
 Call this function and return its return value. More...
 
Bool operator== (const Function &other) const
 Return whether or not this function references the same function as another function object. More...
 
Bool operator!= (const Function &other) const
 Return whether or not this function references a different function as onother function object. More...
 
Bool isNull () const
 Return whether or not this function object has a function/object pointer that is NULL. More...
 
Bool isSet () const
 Return whether or not this function object has a function/object pointer that is not NULL. More...
 
Bool isMember () const
 Return whether or not this function object refers to a member function of a class object. More...
 

Detailed Description

template<typename R>
class om::lang::Function< R() >

Specialization of the function template class for a method with 0 parameters.

Member Typedef Documentation

template<typename R >
typedef R om::lang::Function< R() >::ReturnType

The return type of this function object.

Constructor & Destructor Documentation

template<typename R >
om::lang::Function< R() >::Function ( )
inline

Create a new default function object with a NULL function pointer.

template<typename R >
om::lang::Function< R() >::Function ( R(*)()  functionPointer)
inline

Create a new function object that wraps the specified non-member function pointer.

template<typename R >
template<typename ObjectType , typename ObjectType2 >
om::lang::Function< R() >::Function ( R(ObjectType2::*)()  functionPointer,
ObjectType *  objectPointer 
)
inline

Create a new function object that wraps the specified object and member function pointer.

template<typename R >
template<typename ObjectType , typename ObjectType2 >
om::lang::Function< R() >::Function ( R(ObjectType2::*)() const  functionPointer,
const ObjectType *  objectPointer 
)
inline

Create a new function object that wraps the specified object and const member function pointer.

Member Function Documentation

template<typename R >
ReturnType om::lang::Function< R() >::operator() ( ) const
inline

Call this function and return its return value.

Calling a NULL function object will cause an assertion to be raised.

template<typename R >
Bool om::lang::Function< R() >::operator== ( const Function< R() > &  other) const
inline

Return whether or not this function references the same function as another function object.

template<typename R >
Bool om::lang::Function< R() >::operator!= ( const Function< R() > &  other) const
inline

Return whether or not this function references a different function as onother function object.

template<typename R >
Bool om::lang::Function< R() >::isNull ( ) const
inline

Return whether or not this function object has a function/object pointer that is NULL.

If this method returns TRUE, calling the function will result in an assertion being raised.

template<typename R >
Bool om::lang::Function< R() >::isSet ( ) const
inline

Return whether or not this function object has a function/object pointer that is not NULL.

If this method returns FALSE, calling the function will result in an assertion being raised.

template<typename R >
Bool om::lang::Function< R() >::isMember ( ) const
inline

Return whether or not this function object refers to a member function of a class object.

Member Data Documentation

template<typename R >
void* om::lang::Function< R() >::object

A pointer to the object that receives the member function call.

template<typename R >
R(* om::lang::Function< R() >::staticFunctionPointer) ()

A non-member function pointer to use when the function object represents a non-member function.

template<typename R >
UByte om::lang::Function< R() >::memberFunctionStorage[MEMBER_FUNCTION_STORAGE_SIZE]

A local buffer of bytes that stores an opaque member function.


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