class protobuf_ops::NRPProtobufOpsIface

#include <protobuf_ops.h>

class NRPProtobufOpsIface {
public:
    // methods

    virtual std::unique_ptr<gpb::Message> unpackProtoAny(const gpb::Any& from) = 0;

    virtual void setDataPackMessageData(
        const gpb::Message& from,
        EngineGrpc::DataPackMessage* to
    ) = 0;

    virtual DataPackInterfaceConstSharedPtr getDataPackInterfaceFromMessage(
        const std::string& engineName,
        const EngineGrpc::DataPackMessage& from
    ) = 0;

    virtual void setDataPackMessageFromInterface(
        const DataPackInterface& from,
        EngineGrpc::DataPackMessage* to
    ) = 0;

    virtual void setTrajectoryMessageFromInterface(
        const DataPackInterface& from,
        NrpCore::TrajectoryMessage* to
    ) = 0;
};

// direct descendants

template <class ... MSG_TYPES>
class NRPProtobufOps;