Instrument Neutral Distributed Interface INDI
2.0.2
|
Class to provide basic client functionality based on Qt5 toolkit and is therefore suitable for cross-platform development. More...
#include <baseclientqt.h>
Public Member Functions | |
BaseClientQt (QObject *parent=Q_NULLPTR) | |
virtual | ~BaseClientQt () |
bool | connectServer () override |
Connect to INDI server. More... | |
bool | disconnectServer (int exit_code=0) override |
Disconnect from INDI server. Any devices previously created will be deleted and memory cleared. More... | |
Public Member Functions inherited from INDI::AbstractBaseClient | |
AbstractBaseClient ()=delete | |
virtual | ~AbstractBaseClient () |
void | setServer (const char *hostname, unsigned int port) |
Set the server host name and port. More... | |
const char * | getHost () const |
Get the server host name. More... | |
int | getPort () const |
Get the port number. More... | |
bool | isServerConnected () const |
Get status of the connection. More... | |
void | setConnectionTimeout (uint32_t seconds, uint32_t microseconds) |
setConnectionTimeout Set connection timeout. By default it is 3 seconds. More... | |
void | setVerbose (bool enable) |
setVerbose Set verbose mode More... | |
bool | isVerbose () const |
isVerbose Is client in verbose mode? More... | |
void | watchDevice (const char *deviceName) |
Add a device to the watch list. More... | |
void | watchDevice (const char *deviceName, const std::function< void(BaseDevice)> &callback) |
void | watchProperty (const char *deviceName, const char *propertyName) |
watchProperties Add a property to the watch list. When communicating with INDI server. More... | |
void | connectDevice (const char *deviceName) |
Disconnect INDI driver. More... | |
void | disconnectDevice (const char *deviceName) |
Disconnect INDI driver. More... | |
INDI::BaseDevice | getDevice (const char *deviceName) |
std::vector< INDI::BaseDevice > | getDevices () const |
bool | getDevices (std::vector< INDI::BaseDevice > &deviceList, uint16_t driverInterface) |
getDevices Returns list of devices that belong to a particular DRIVER_INTERFACE class. More... | |
void | setBLOBMode (BLOBHandling blobH, const char *dev, const char *prop=nullptr) |
Set Binary Large Object policy mode. More... | |
BLOBHandling | getBLOBMode (const char *dev, const char *prop=nullptr) |
getBLOBMode Get Binary Large Object policy mode IF set previously by setBLOBMode More... | |
void | sendNewProperty (INDI::Property pp) |
Send new Property command to server. More... | |
void | sendNewText (INDI::Property pp) |
Send new Text command to server. More... | |
void | sendNewText (const char *deviceName, const char *propertyName, const char *elementName, const char *text) |
Send new Text command to server. More... | |
void | sendNewNumber (INDI::Property pp) |
Send new Number command to server. More... | |
void | sendNewNumber (const char *deviceName, const char *propertyName, const char *elementName, double value) |
Send new Number command to server. More... | |
void | sendNewSwitch (INDI::Property pp) |
Send new Switch command to server. More... | |
void | sendNewSwitch (const char *deviceName, const char *propertyName, const char *elementName) |
Send new Switch command to server. More... | |
void | startBlob (const char *devName, const char *propName, const char *timestamp) |
Send opening tag for BLOB command to server. More... | |
void | sendOneBlob (IBLOB *bp) |
Send ONE blob content to server. The BLOB data in raw binary format and will be converted to base64 and sent to server. More... | |
void | sendOneBlob (INDI::WidgetViewBlob *blob) |
void | sendOneBlob (const char *blobName, unsigned int blobSize, const char *blobFormat, void *blobBuffer) |
Send ONE blob content to server. The BLOB data in raw binary format and will be converted to base64 and sent to server. More... | |
void | finishBlob () |
Send closing tag for BLOB command to server. More... | |
void | sendPingRequest (const char *uid) |
Send one ping request, the server will answer back with the same uuid. More... | |
void | sendPingReply (const char *uid) |
Send a ping reply for the given uuid. More... | |
Public Member Functions inherited from INDI::BaseMediator | |
virtual | ~BaseMediator ()=default |
virtual void | newDevice (INDI::BaseDevice baseDevice) |
Emmited when a new device is created from INDI server. More... | |
virtual void | removeDevice (INDI::BaseDevice baseDevice) |
Emmited when a device is deleted from INDI server. More... | |
virtual void | newProperty (INDI::Property property) |
Emmited when a new property is created for an INDI driver. More... | |
virtual void | updateProperty (INDI::Property property) |
Emmited when a new property value arrives from INDI server. More... | |
virtual void | removeProperty (INDI::Property property) |
Emmited when a property is deleted for an INDI driver. More... | |
virtual void | newMessage (INDI::BaseDevice baseDevice, int messageID) |
Emmited when a new message arrives from INDI server. More... | |
virtual void | serverConnected () |
Emmited when the server is connected. More... | |
virtual void | serverDisconnected (int exit_code) |
Emmited when the server gets disconnected. More... | |
virtual void | newDevice (INDI::BaseDevice *dp) |
Emmited when a new device is created from INDI server. More... | |
virtual void | removeDevice (INDI::BaseDevice *dp) |
Emmited when a device is deleted from INDI server. More... | |
virtual void | newProperty (INDI::Property *property) |
Emmited when a new property is created for an INDI driver. More... | |
virtual void | removeProperty (INDI::Property *property) |
Emmited when a property is deleted for an INDI driver. More... | |
virtual void | newSwitch (ISwitchVectorProperty *svp) |
Emmited when a new switch value arrives from INDI server. More... | |
virtual void | newNumber (INumberVectorProperty *nvp) |
Emmited when a new number value arrives from INDI server. More... | |
virtual void | newText (ITextVectorProperty *tvp) |
Emmited when a new text value arrives from INDI server. More... | |
virtual void | newLight (ILightVectorProperty *lvp) |
Emmited when a new light value arrives from INDI server. More... | |
virtual void | newBLOB (IBLOB *bp) |
Emmited when a new property value arrives from INDI server. More... | |
virtual void | newMessage (INDI::BaseDevice *dp, int messageID) |
Emmited when a new message arrives from INDI server. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from INDI::AbstractBaseClient | |
virtual void | newPingReply (std::string uid) |
pingReply are sent by the server on response to pingReply (see above). More... | |
virtual void | newUniversalMessage (std::string message) |
newUniversalMessage Universal messages are sent from INDI server without a specific device. It is addressed to the client overall. More... | |
AbstractBaseClient (std::unique_ptr< AbstractBaseClientPrivate > &&dd) | |
Protected Attributes inherited from INDI::AbstractBaseClient | |
std::unique_ptr< AbstractBaseClientPrivate > | d_ptr_indi |
Class to provide basic client functionality based on Qt5 toolkit and is therefore suitable for cross-platform development.
BaseClientQt enables accelerated development of INDI Clients by providing a framework that facilitates communication, device handling, and event notification. By subclassing BaseClientQt, clients can quickly connect to an INDI server, and query for a set of INDI::BaseDevice devices, and read and write properties seamlessly. Event driven programming is possible due to notifications upon reception of new devices or properties.
Definition at line 47 of file baseclientqt.h.
INDI::BaseClientQt::BaseClientQt | ( | QObject * | parent = Q_NULLPTR | ) |
Definition at line 86 of file baseclientqt.cpp.
|
virtual |
Definition at line 115 of file baseclientqt.cpp.
|
overridevirtual |
Connect to INDI server.
Implements INDI::AbstractBaseClient.
Definition at line 121 of file baseclientqt.cpp.
|
overridevirtual |
Disconnect from INDI server. Any devices previously created will be deleted and memory cleared.
Implements INDI::AbstractBaseClient.
Definition at line 143 of file baseclientqt.cpp.