NRP Core  1.4.1
PreprocessingFunction Class Reference

Dummy alias class for TransceiverFunction, mapped to PreprocessingFunction python decorator. More...

Inheritance diagram for PreprocessingFunction:
TransceiverFunction TransceiverDataPackInterface PtrTemplates< TransceiverFunction > PtrTemplates< TransceiverDataPackInterface >

Additional Inherited Members

- Public Types inherited from PtrTemplates< TransceiverDataPackInterface >
using shared_ptr = std::shared_ptr< TransceiverDataPackInterface >
 
using const_shared_ptr = std::shared_ptr< const TransceiverDataPackInterface >
 
using unique_ptr = std::unique_ptr< TransceiverDataPackInterface >
 
using const_unique_ptr = std::unique_ptr< const TransceiverDataPackInterface >
 
- Public Types inherited from PtrTemplates< TransceiverFunction >
using shared_ptr = std::shared_ptr< TransceiverFunction >
 
using const_shared_ptr = std::shared_ptr< const TransceiverFunction >
 
using unique_ptr = std::unique_ptr< TransceiverFunction >
 
using const_unique_ptr = std::unique_ptr< const TransceiverFunction >
 
- Public Member Functions inherited from TransceiverFunction
 TransceiverFunction (std::string linkedEngine, bool isPreprocessing)
 Constructor. More...
 
virtual ~TransceiverFunction () override=default
 
const std::string & linkedEngineName () const override
 Get name of engine this transceiver is linked to. More...
 
bool isPreprocessing () const override
 Indicates if this is a preprocessing function. More...
 
TransceiverDataPackInterface::shared_ptr pySetup (boost::python::object transceiverFunction)
 Decorator call() function. Takes the Transfer Function as a parameter. Moves this class into a shared_ptr. More...
 
boost::python::object runTf (boost::python::tuple &args, boost::python::dict &kwargs, datapacks_set_t dataPacks) override
 Execute the transfer function. More...
 
- Public Member Functions inherited from TransceiverDataPackInterface
 TransceiverDataPackInterface ()=default
 
virtual ~TransceiverDataPackInterface ()=default
 
template<class TRANSCEIVER_DATAPACK >
TransceiverDataPackInterface::shared_ptr pySetup (const TransceiverDataPackInterface::shared_ptr &tfDataPack)
 Decorator call() function. Takes the lower decorator as a parameter. Moves the given class into a shared_ptr, which will be managed by the next decorator. More...
 
- Static Public Member Functions inherited from TransceiverDataPackInterface
static void setTFInterpreter (FunctionManager *interpreter)
 Set global TF Interpreter. All Transceiver Functions will register themselves with it upon creation. More...
 
static const FunctionManagergetFunctionManager ()
 
- Protected Member Functions inherited from TransceiverFunction
datapack_identifiers_set_t getRequestedDataPackIDs () const override
 Returns datapack IDs of this DataPack that should be requested from the engines. TODO: Make protected. More...
 
datapack_identifiers_set_t updateRequestedDataPackIDs (datapack_identifiers_set_t &&datapackIDs) const override
 Appends its own datapack requests onto datapackIDs. Uses getRequestedDataPackIDs to check which IDs are requested by this datapack. More...
 
- Protected Member Functions inherited from TransceiverDataPackInterface
template<class TRANSCEIVER_DATAPACK >
PtrTemplates< TRANSCEIVER_DATAPACK >::shared_ptr moveToSharedPtr ()
 
- Static Protected Attributes inherited from TransceiverDataPackInterface
static FunctionManager_functionManager = nullptr
 Pointer to TF Interpreter. Will be used to register a new TF function. More...
 

Detailed Description

Dummy alias class for TransceiverFunction, mapped to PreprocessingFunction python decorator.

boost::python doesn't allow to map two different names (TransceiverFunction and PreprocessingFunction in our case) to a single C++ class. This class acts as an 'alias' for TransceiverFunction and allows for two python decorators to be mapped to, effectively, a single class.

There's no special behaviour of PreprocessingFunction with respect to the regular TransceiverFunction, but the decorator was created for semantic clarity and possible future developments.


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