OceanDirectLighthouseC++  3.1.1
OceanDirect Lighthouse C++/C API
LightSourceAPI.h
1 /*****************************************************
2  * @file LightSourceAPI.h
3  * @date October 2018
4  * @author Ocean Optics, Inc.
5  *
6  * This is an interface to OceanDirect that allows
7  * the user to connect to devices over USB and other buses.
8  * This is intended as a usable and extensible API.
9  */
10  /************************************************************************
11  *
12  * OCEAN INSIGHT CONFIDENTIAL
13  * __________________
14  *
15  * [2018] - [2020] Ocean Insight Incorporated
16  * All Rights Reserved.
17  *
18  * NOTICE: All information contained herein is, and remains
19  * the property of Ocean Insight Incorporated and its suppliers,
20  * if any. The intellectual and technical concepts contained
21  * herein are proprietary to Ocean Insight Incorporated
22  * and its suppliers and may be covered by U.S. and Foreign Patents,
23  * patents in process, and are protected by trade secret or copyright law.
24  * Dissemination of this information or reproduction of this material
25  * is strictly forbidden unless prior written permission is obtained
26  * from Ocean Insight Incorporated.
27  *
28  **************************************************************************/
29 
30 #ifndef LIGHTSOURCEAPI_H
31 #define LIGHTSOURCEAPI_H
32 
33 #include "api/DllDecl.h"
34 
41 namespace oceandirect {
42  namespace api {
43 
44  class DLL_DECL LightSourceAPI {
45  public:
47  virtual ~LightSourceAPI();
48  static LightSourceAPI *getInstance();
49 
50  static void shutdown();
51 
63  virtual int getCount(long deviceID, int* errorCode);
64 
77  virtual bool hasEnable(long deviceID, int *errorCode, int lightSourceIndex);
78 
91  virtual bool isEnabled(long deviceID, int *errorCode, int lightSourceIndex);
92 
105  virtual void setEnable(long deviceID, int *errorCode, int lightSourceIndex, bool enable);
106 
118  virtual void setLampStrobeEnable(long deviceID, int *errorCode, bool strobeEnable);
119 
131  virtual bool getLampStrobeEnable(long deviceID, int *errorCode);
132 
133  protected:
134 
135  static LightSourceAPI *instance;
136 
137  };
138  }
139 }
140 #endif /* LIGHTSOURCEAPI_H */
Definition: LightSourceAPI.h:44
virtual int getCount(long deviceID, int *errorCode)
virtual void setEnable(long deviceID, int *errorCode, int lightSourceIndex, bool enable)
virtual bool getLampStrobeEnable(long deviceID, int *errorCode)
virtual bool hasEnable(long deviceID, int *errorCode, int lightSourceIndex)
virtual void setLampStrobeEnable(long deviceID, int *errorCode, bool strobeEnable)
virtual bool isEnabled(long deviceID, int *errorCode, int lightSourceIndex)
This is an interface to OceanDirect that allows the user to connect to devices over USB and other bus...
Definition: OceanDirectAPI.h:147