diff --git a/src/api/class/include/class/class_cb.hpp b/src/api/class/include/class/class_cb.hpp new file mode 100644 index 0000000000000000000000000000000000000000..c7e7f79fac69028cb949d0761124f54c4d1585c0 --- /dev/null +++ b/src/api/class/include/class/class_cb.hpp @@ -0,0 +1,115 @@ +/** + * @file class_cb.hpp + * @author Alfonso Dominguez <alfonso.dominguez@tecnalia.com> and Leire Querejeta Lomas <leire.querejeta@tecnalia.com> + * @date 2020 + * + * Copyright 2020 Tecnalia Research & Innovation. + * Distributed under the GNU GPL v3. + * For full terms see https://www.gnu.org/licenses/gpl.txt + * + * @brief Callbacks for Class + */ + +#pragma once +#include <string> + +//! Abstract class (interface) for receiving callbacks from device. +class ClassCallback +{ +public: + + /*! + \brief Handle for battery status callbacks + \param battery Received battery percentage + */ + virtual void batteryHandle(double battery) = 0; + + /*! + \brief Handle for buzzer status callbacks + \param buzzerstatus Received buzzer status message + */ + virtual void buzzerHandle(std::string buzzerstatus) = 0; + + /*! + \brief Handle for device name callbacks + \param device Received device name + */ + virtual void deviceNameHandle(std::string device) = 0; + + /*! + \brief Handle for frequncy callbacks + \param frequencystatus Received frequency + */ + virtual void frequencyHandle(std::string frequencystatus) = 0; + + /*! + \brief Handle for firmware callbacks + \param firmware Received firmware version + */ + virtual void firmwareHandle(std::string firmware) = 0; + + /*! + \brief Handle for hardware callbacks + \param hardware Received hardware version + */ + virtual void hardwareHandle(std::string hardware) = 0; + + /*! + \brief Handle for high voltage callbacks + \param hvstatus Received high voltage status + */ + virtual void hvHandle(std::string hvstatus) = 0; + + /*! + \brief Handle for interval callbacks + \param intervalstatus Received stimulation inter pulses interval + */ + virtual void intervalHandle(std::string intervalstatus) = 0; + + /*! + \brief Handle for logevents callbacks + \param logevents Received logevents message + */ + virtual void logeventsHandle(std::string logevents) = 0; + + /*! + \brief Handle for pattern callbacks + \param patternstatus Received pattern message + */ + virtual void patternHandle(std::string patternstatus) = 0; + + /*! + \brief Handle for rtc callbacks + \param rtcstatus Received rtc values + */ + virtual void rtcHandle(std::string rtcstatus) = 0; + + /*! + \brief Handle for sd function callbacks + \param sdfunctionstatus Received name of the sd card folder where patterns are saved + */ + virtual void sdfunctionHandle(std::string sdfunctionstatus) = 0; + + /*! + \brief Handle for sd user name callbacks + \param sdunamestatus Received name of the sd card folder where the folder containing patterns is saved + */ + virtual void sdunameHandle(std::string sdunamestatus) = 0; + + /*! + \brief Handle for tic callbacks + \param tic Received tic message + */ + virtual void ticHandle(std::string tic) = 0; + + /*! + \brief Handle for turning off callbacks + */ + virtual void turnOffHandle() = 0; + + /*! + \brief Handle for virtual electrodes callbacks + \param velecstatus Received virtual electrode message + */ + virtual void velecstatusHandle(std::string velecstatus) = 0; +}; \ No newline at end of file