Pothos  0.4.0-gd11861cd
The Pothos dataflow programming software suite
 All Classes Namespaces Files Functions Variables Typedefs Friends Macros Pages
Public Member Functions | Protected Member Functions | List of all members
Pothos::CallInterface Class Referenceabstract

#include <CallInterface.hpp>

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

Public Member Functions

virtual ~CallInterface (void)
 
template<typename ReturnType , typename... ArgsType>
ReturnType call (ArgsType &&...args) const
 Call a bound method/function with a return type and variable args. More...
 
template<typename... ArgsType>
Object callObject (ArgsType &&...args) const
 Call a bound method/function with an Object return and variable args. More...
 
template<typename... ArgsType>
void callVoid (ArgsType &&...args) const
 Call a bound method/function with a void return and variable args. More...
 

Protected Member Functions

virtual Object opaqueCall (const Object *inputArgs, const size_t numArgs) const =0
 

Detailed Description

CallInterface provides a set of templated call functions. Derived classes overload opaqueCall() to handle the call.

Constructor & Destructor Documentation

virtual Pothos::CallInterface::~CallInterface ( void  )
virtual

virtual destructor for inheritance

Member Function Documentation

template<typename ReturnType , typename... ArgsType>
ReturnType Pothos::CallInterface::call ( ArgsType &&...  args) const

Call a bound method/function with a return type and variable args.

template<typename... ArgsType>
Object Pothos::CallInterface::callObject ( ArgsType &&...  args) const

Call a bound method/function with an Object return and variable args.

template<typename... ArgsType>
void Pothos::CallInterface::callVoid ( ArgsType &&...  args) const

Call a bound method/function with a void return and variable args.

virtual Object Pothos::CallInterface::opaqueCall ( const Object inputArgs,
const size_t  numArgs 
) const
protectedpure virtual

Call into the function/method with opaque input and return types. For a void return type of call, the returned Object will be null.

Parameters
inputArgsan array of call arguments of type Object
numArgsthe number of arguments in inputArgs
Returns
the return value of the call as type Object

Implemented in Pothos::Callable.


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