class EngineDataPack

Overview

Class for input datapacks for transceiver functions, mapped to EngineDataPack python decorator. More…

#include <from_engine_datapack.h>

class EngineDataPack: public TransceiverDataPackInterface {
public:
    // construction

    EngineDataPack(
        const std::string& keyword,
        const DataPackIdentifier& datapackID,
        bool isPreprocessed
    );

    // methods

    virtual datapack_identifiers_set_t getRequestedDataPackIDs() const;

    virtual boost::python::object runTf(
        boost::python::tuple& args,
        boost::python::dict& kwargs,
        datapacks_set_t dataPacks
    );
};

// direct descendants

class PreprocessedDataPack;

Inherited Members

public:
    // typedefs

    typedef std::shared_ptr<T> shared_ptr;
    typedef std::shared_ptr<const T> const_shared_ptr;
    typedef std::unique_ptr<T> unique_ptr;
    typedef std::unique_ptr<const T> const_unique_ptr;

    // methods

    template <class TRANSCEIVER_DATAPACK>
    TransceiverDataPackInterface::shared_ptr pySetup(const TransceiverDataPackInterface::shared_ptr& tfDataPack);

    virtual const std::string& linkedEngineName() const;
    virtual bool isPreprocessing() const;

    virtual boost::python::object runTf(
        boost::python::tuple& args,
        boost::python::dict& kwargs,
        datapacks_set_t dataPacks
    );

    virtual datapack_identifiers_set_t updateRequestedDataPackIDs(datapack_identifiers_set_t&& datapackIDs = datapack_identifiers_set_t()) const;
    virtual datapack_identifiers_set_t getRequestedDataPackIDs() const;
    static void setTFInterpreter(FunctionManager* interpreter);
    static const FunctionManager* getFunctionManager();

Detailed Documentation

Class for input datapacks for transceiver functions, mapped to EngineDataPack python decorator.

Methods

virtual datapack_identifiers_set_t getRequestedDataPackIDs() const

Returns datapack IDs of this DataPack that should be requested from the engines. TODO: Make protected.

virtual boost::python::object runTf(
    boost::python::tuple& args,
    boost::python::dict& kwargs,
    datapacks_set_t dataPacks
)

Execute Transceiver Function. Base class will simply call runTf on _function.

Parameters:

args

Arguments for execution. Can be altered by any TransceiverDataPackInterfaces. Base class will only pass them along

kwargs

Keyword arguments for execution. Can be altered by any TransceiverDataPackInterfaces. Base class will only pass them along

Returns:

Returns result of TransceiverFunction execution.