Instrument Neutral Distributed Interface INDI  0.9.8
tutorial_client.h
Go to the documentation of this file.
1 /*
2  Tutorial Client
3  Copyright (C) 2010 Jasem Mutlaq (mutlaqja@ikarustech.com)
4 
5  This library is free software; you can redistribute it and/or
6  modify it under the terms of the GNU Lesser General Public
7  License as published by the Free Software Foundation; either
8  version 2.1 of the License, or (at your option) any later version.
9 
10  This library is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  Lesser General Public License for more details.
14 
15  You should have received a copy of the GNU Lesser General Public
16  License along with this library; if not, write to the Free Software
17  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18 
19 */
20 
21 #ifndef TUTORIAL_CLIENT_H
22 #define TUTORIAL_CLIENT_H
23 
38 #include "indidevapi.h"
39 #include "indicom.h"
40 #include "indibase/baseclient.h"
41 
42 class MyClient : public INDI::BaseClient
43 {
44  public:
45 
46  MyClient();
47  ~MyClient();
48 
49  void setTemperature();
50  void takeExposure();
51 
52 protected:
53 
54  virtual void newDevice(INDI::BaseDevice *dp);
55  virtual void newProperty(INDI::Property *property);
56  virtual void removeProperty(INDI::Property *property) {}
57  virtual void newBLOB(IBLOB *bp);
58  virtual void newSwitch(ISwitchVectorProperty *svp) {}
59  virtual void newNumber(INumberVectorProperty *nvp);
60  virtual void newMessage(INDI::BaseDevice *dp, int messageID);
61  virtual void newText(ITextVectorProperty *tvp) {}
62  virtual void newLight(ILightVectorProperty *lvp) {}
63  virtual void serverConnected() {}
64  virtual void serverDisconnected(int exit_code) {}
65 
66 private:
67  INDI::BaseDevice * ccd_simulator;
68 
69 };
70 
71 #endif