/* CD Utils - Control-Debug utilites Ivan Pelipenko peri4ko@yandex.ru, Andrey Bychkov work.a.b@yandex.ru This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program 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 Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . */ #ifndef CDUTILS_X_H #define CDUTILS_X_H #include "cd_core_export.h" #include "cdutils_interface.h" namespace CDUtils { class CD_CORE_EXPORT XInterface: public Interface { PIOBJECT_SUBCLASS(XInterface, Interface); public: XInterface(); EVENT1(keepNamesRequest, bool *, xn); EVENT1(receivedX, PIVector>, pathes); void enable(const CDType & x) { setEnabled(x, true); } void disable(const CDType & x) { setEnabled(x, false); } void setEnabled(const CDType & x, bool en); void setDisabled(const CDType & x, bool dis) { setEnabled(x, !dis); } PIVector> enabledList() const; void setEnabledList(const PIVector> & l); void lock(); void unlock(); void start(double freq = 20.); void stop(); }; } // namespace CDUtils extern CD_CORE_EXPORT CDUtils::XInterface X; #endif // CDUTILS_X_H