#pragma once // Qt #include #include // DOtherSide #include "DOtherSideTypesCpp.h" #include "DOtherSide/IDosQObject.h" namespace DOS { /// This class model a QObject class DosQObject : public QObject, public IDosQObject { public: /// Constructor DosQObject(); /// Emit a signal bool emitSignal(const QString& name, const std::vector& arguments) override; /// Return the metaobject const QMetaObject* metaObject() const override; /// qt metacall int qt_metacall(QMetaObject::Call callType, int index, void**args) override; /// Set the implementation void setImpl(std::unique_ptr impl); private: std::unique_ptr m_impl; }; } // namespace DOS