/** * Exercise object * $Id$ * $HeadURL$ * $Author$ */ #pragma once #include "dds_handler.h" #include "logger.h" #include #include namespace Core { class FunctionReplyObject; } namespace AudioVideoManagement { class ObjectVideoReceiver { public: explicit ObjectVideoReceiver(Interface::Dts *dts, DatabaseInterface *db); ~ObjectVideoReceiver(); Core::FunctionReplyObject createObject(const VideoReceiver &data); Core::FunctionReplyObject updateObject(const VideoReceiver &data); Core::FunctionReplyObject removeObject(); int getId() const { return m_data.id(); } VideoReceiver getData() const { return m_data; } static Database::AvmVideoReceiver toDbData(const VideoReceiver &ddsData); // dds -> db static AudioVideoManagement::VideoReceiver toDdsData(const Database::AvmVideoReceiver &dbData); // db -> dds bool isValid() const { return (m_data.id() > 0); } protected: void onPublishData(); private: Interface::Dts *m_dts; DatabaseInterface *m_db; VideoReceiver m_data; LOGGER_T &m_logger; }; }