Pothos  0.2.1-g9f04573d
The Pothos dataflow programming software suite
 All Classes Namespaces Files Functions Variables Typedefs Friends Macros
Public Member Functions | List of all members
Pothos::CallRegistry Class Referenceabstract

#include <CallRegistry.tmpl.hpp>

Inheritance diagram for Pothos::CallRegistry:
Inheritance graph
[legend]

Public Member Functions

virtual ~CallRegistry (void)
 Virtual destructor for subclassing. More...
 
template< $, typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)($expand('A%d', $NARGS)))
 
template< $, typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)($expand('A%d', $NARGS)) const)
 
virtual void registerCallable (const std::string &name, const Callable &call)=0
 
virtual ~CallRegistry (void)
 Virtual destructor for subclassing. More...
 
template<typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)())
 
template<typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)() const)
 
template<typename A0 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0))
 
template<typename A0 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0) const)
 
template<typename A0 , typename A1 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1))
 
template<typename A0 , typename A1 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1) const)
 
template<typename A0 , typename A1 , typename A2 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2))
 
template<typename A0 , typename A1 , typename A2 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2) const)
 
template<typename A0 , typename A1 , typename A2 , typename A3 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3))
 
template<typename A0 , typename A1 , typename A2 , typename A3 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3) const)
 
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4))
 
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4) const)
 
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5))
 
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5) const)
 
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5, A6))
 
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5, A6) const)
 
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5, A6, A7))
 
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5, A6, A7) const)
 
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5, A6, A7, A8))
 
template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename ReturnType , typename ClassType , typename InstanceType >
void registerCall (InstanceType *instance, const std::string &name, ReturnType(ClassType::*method)(A0, A1, A2, A3, A4, A5, A6, A7, A8) const)
 
virtual void registerCallable (const std::string &name, const Callable &call)=0
 

Detailed Description

CallRegistry is an interface for registering class methods.

Constructor & Destructor Documentation

virtual Pothos::CallRegistry::~CallRegistry ( void  )
virtual

Virtual destructor for subclassing.

virtual Pothos::CallRegistry::~CallRegistry ( void  )
virtual

Virtual destructor for subclassing.

Member Function Documentation

template<typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)()  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template< $, typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)($expand('A%d', $NARGS))  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)() const  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template< $, typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)($expand('A%d', $NARGS)) const  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0)  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0) const  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1)  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1) const  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2)  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2) const  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename A3 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2, A3)  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename A3 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2, A3) const  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2, A3, A4)  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2, A3, A4) const  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2, A3, A4, A5)  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2, A3, A4, A5) const  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2, A3, A4, A5, A6)  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2, A3, A4, A5, A6) const  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2, A3, A4, A5, A6, A7)  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2, A3, A4, A5, A6, A7) const  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2, A3, A4, A5, A6, A7, A8)  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename ReturnType , typename ClassType , typename InstanceType >
void Pothos::CallRegistry::registerCall ( InstanceType *  instance,
const std::string &  name,
ReturnType(ClassType::*)(A0, A1, A2, A3, A4, A5, A6, A7, A8) const  method 
)

Register a class method with the given name. Usage: this->registerCall(this, "foo", &MyClass::foo);

virtual void Pothos::CallRegistry::registerCallable ( const std::string &  name,
const Callable call 
)
pure virtual

Register a bound call with the given name. The first argument of the call should have the class instance bound.

Implemented in Pothos::Block, and Pothos::Topology.

virtual void Pothos::CallRegistry::registerCallable ( const std::string &  name,
const Callable call 
)
pure virtual

Register a bound call with the given name. The first argument of the call should have the class instance bound.

Implemented in Pothos::Block, and Pothos::Topology.


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