Pothos  0.7.0-gf7fbae99
The Pothos dataflow programming software suite
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 call (ArgsType &&... args) const
 Call a bound method/function with an Object return and variable args. More...
 
template<typename... ArgsType>
Object callObject (ArgsType &&... args) const
 
template<typename... ArgsType>
void callVoid (ArgsType &&... args) const
 

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

◆ ~CallInterface()

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

virtual destructor for inheritance

Member Function Documentation

◆ call() [1/2]

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

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

◆ call() [2/2]

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

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

◆ callObject()

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

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

Deprecated:
use call overload without return type

◆ callVoid()

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

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

Deprecated:
use call overload without return type

◆ opaqueCall()

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: