INDI Alignment Layer
0.0
|
00001 #ifndef ALIGNMENTLAYER_H 00002 #define ALIGNMENTLAYER_H 00003 00004 00005 #include <inditelescope.h> 00006 #include <baseclient.h> 00007 00008 #include "AlignmentDatabase.h" 00009 00010 class CAlignmentLayer : public INDI::DefaultDevice, INDI::BaseClient 00011 { 00012 public: 00013 CAlignmentLayer(); 00014 virtual const char *getDefaultName() { return "indi_alignment_layer"; } 00015 virtual bool initProperties(); 00016 // INDI::DefaultDevice virtual functions 00017 virtual void ISGetProperties (const char *dev); 00018 virtual bool ISNewNumber(const char *dev, const char *name, double values[], char *names[], int n); 00019 virtual bool ISNewSwitch (const char *dev, const char *name, ISState *states, char *names[], int n); 00020 virtual bool ISNewText (const char *dev, const char *name, char *texts[], char *names[], int n); 00021 virtual bool ISNewBLOB (const char *dev, const char *name, int sizes[], int blobsizes[], char *blobs[], char *formats[], char *names[], int n); 00022 00023 protected: 00024 // INDI::BaseMediator pure virtual functions 00025 virtual void newDevice(INDI::BaseDevice *dp); 00026 virtual void newProperty(INDI::Property *property); 00027 virtual void removeProperty(INDI::Property *property); 00028 virtual void newBLOB(IBLOB *bp); 00029 virtual void newSwitch(ISwitchVectorProperty *svp); 00030 virtual void newNumber(INumberVectorProperty *nvp); 00031 virtual void newMessage(INDI::BaseDevice *dp, int messageID); 00032 virtual void newText(ITextVectorProperty *tvp); 00033 virtual void newLight(ILightVectorProperty *lvp); 00034 virtual void serverConnected(); 00035 virtual void serverDisconnected(int exit_code); 00036 // INDI::DefaultDevice pure virtual functions 00037 virtual bool Connect() { return true; } 00038 virtual bool Disconnect() { return true; } 00039 00040 private: 00041 INDI::BaseDevice *pLowerLayerDevice; 00042 CAlignmentDatabase AlignmentDatabase; 00043 }; 00044 00045 #endif // ALIGNMENTLAYER_H