/**************************************************************************** * * * This file is part of guh. * * * * Guh is free software: you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation, version 2 of the License. * * * * Guh is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * * GNU General Public License for more details. * * * * You should have received a copy of the GNU General Public License * * along with guh. If not, see . * * * ***************************************************************************/ #ifndef DEVICECLASS_H #define DEVICECLASS_H #include "types/eventtype.h" #include "types/actiontype.h" #include "types/statetype.h" #include #include class DeviceClass { public: DeviceClass(const QUuid &pluginId = QUuid(), const QUuid &id = QUuid()); QUuid id() const; QUuid pluginId() const; bool isValid() const; QString name() const; void setName(const QString &name); QList states() const; void setStates(const QList &stateTypes); QList events() const; void setEvents(const QList &eventTypes); QList actions() const; void setActions(const QList &actionTypes); QVariantList params() const; void setParams(const QVariantList ¶ms); bool operator==(const DeviceClass &device) const; private: QUuid m_id; QUuid m_pluginId; QString m_name; QList m_states; QList m_events; QList m_actions; QVariantList m_params; }; #endif