#ifndef INDIBASE_H #define INDIBASE_H #include "indiapi.h" #include "indidevapi.h" #define MAXRBUF 2048 /** * \namespace INDI \brief Namespace to encapsulate INDI client, device, and mediator classes */ namespace INDI { class BaseMediator; class BaseClient; class BaseDriver; class DefaultDriver; } /** * \class INDI::BaseMediator \brief Meditates event notification as generated by devices and passed to clients. */ class INDI::BaseMediator { public: /** \brief Emmited when a new device is created from INDI server. */ virtual void newDevice() =0; /** \brief Emmited when a new BLOB value arrives from INDI server. \param bp Pointer to filled and process BLOB. */ virtual void newBLOB(IBLOB *bp) =0; /** \brief Emmited when a new switch value arrives from INDI server. \param svp Pointer to a switch vector property. */ virtual void newSwitch(ISwitchVectorProperty *svp) =0; /** \brief Emmited when a new number value arrives from INDI server. \param nvp Pointer to a number vector property. */ virtual void newNumber(INumberVectorProperty *nvp) =0; /** \brief Emmited when a new text value arrives from INDI server. \param tvp Pointer to a text vector property. */ virtual void newText(ITextVectorProperty *tvp) =0; /** \brief Emmited when a new light value arrives from INDI server. \param lvp Pointer to a light vector property. */ virtual void newLight(ILightVectorProperty *lvp) =0; /** \brief Emmited when the server gets disconnected. */ virtual void serverDisconnected() =0; }; #endif // INDIBASE_H