template class RawData

Overview

Wrapper class for DataPacks with no name and no engine association. More…

#include <datapack.h>

template <class DATA_TYPE>
class RawData: public DataPack {
public:
    // methods

    static void create_python(const std::string& name);
};

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

    DataPackInterface& operator = (const DataPackInterface&);
    DataPackInterface& operator = (DataPackInterface&&);
    const std::string& name() const;
    void setName(const std::string& name);
    const std::string& type() const;
    void setType(const std::string& type);
    const std::string& engineName() const;
    void setEngineName(const std::string& engineName);
    const DataPackIdentifier& id() const;
    void setID(const DataPackIdentifier& id);
    virtual DataPackInterface* clone() const;
    bool isEmpty() const;
    bool isUpdated() const;
    void resetIsUpdated() const;
    DataPack& operator = (const DataPack&);
    DataPack& operator = (DataPack&&);
    const DATA_TYPE& getData() const;
    PyObject* toPythonString();
    virtual DataPackInterface* clone() const;
    static std::string getType();

    static DataPackIdentifier createID(
        const std::string& name,
        const std::string& engineName
    );

    static void create_python(const std::string& name);

Detailed Documentation

Wrapper class for DataPacks with no name and no engine association.

Technically it’s possible to alias the DataPack class with two different Python names, for example JsonDataPack and JsonRawData, but in that case boost::python will complain about duplicated converter functions. Having this thin wrapper/alias class prevents that.