OceanDirectLighthouseC++  3.1.1
OceanDirect Lighthouse C++/C API
SingleStrobeAPI.h
1 /*****************************************************
2  * @file SingleStrobeAPI.h
3  * @date October 2019
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 SINGLE_STROBE_API_H
31 #define SINGLE_STROBE_API_H
32 
33 #include "api/DllDecl.h"
34 
41 namespace oceandirect {
42  namespace api {
43 
44  class DLL_DECL SingleStrobeAPI {
45  public:
47  virtual ~SingleStrobeAPI();
48  static SingleStrobeAPI *getInstance();
49 
50  static void shutdown();
51 
63  virtual void setStrobeEnable(long deviceID, int *errorCode, bool strobeEnable);
64 
76  virtual void setStrobeDelayMicroseconds(long deviceID, int *errorCode, unsigned long microseconds);
77 
89  virtual void setStrobeWidthMicroseconds(long deviceID, int *errorCode, unsigned long microseconds);
90 
102  virtual bool getStrobeEnable(long deviceID, int *errorCode);
103 
115  virtual unsigned long getStrobeDelayMicroseconds(long deviceID, int *errorCode);
116 
128  virtual unsigned long getStrobeWidthMicroseconds(long deviceID, int *errorCode);
129 
141  virtual unsigned long getStrobeDelayMinimumMicroseconds(long featureID, int *errorCode);
142 
154  virtual unsigned long getStrobeDelayMaximumMicroseconds(long featureID, int *errorCode);
155 
167  virtual unsigned long getStrobeWidthMinimumMicroseconds(long featureID, int *errorCode);
168 
180  virtual unsigned long getStrobeWidthMaximumMicroseconds(long featureID, int *errorCode);
181 
193  virtual unsigned long getStrobeCycleMaximumMicroseconds(long featureID, int *errorCode);
194 
206  virtual unsigned long getStrobeDelayIncrementMicroseconds(long featureID, int *errorCode);
207 
219  virtual unsigned long getStrobeWidthIncrementMicroseconds(long featureID, int *errorCode);
220 
221  protected:
222 
223  static SingleStrobeAPI *instance;
224 
225  };
226  }
227 }
228 #endif /* SINGLE_STROBE_API_H */
Definition: SingleStrobeAPI.h:44
virtual unsigned long getStrobeDelayMaximumMicroseconds(long featureID, int *errorCode)
virtual unsigned long getStrobeWidthMaximumMicroseconds(long featureID, int *errorCode)
virtual bool getStrobeEnable(long deviceID, int *errorCode)
virtual unsigned long getStrobeDelayIncrementMicroseconds(long featureID, int *errorCode)
virtual unsigned long getStrobeDelayMicroseconds(long deviceID, int *errorCode)
virtual unsigned long getStrobeCycleMaximumMicroseconds(long featureID, int *errorCode)
virtual void setStrobeEnable(long deviceID, int *errorCode, bool strobeEnable)
virtual unsigned long getStrobeWidthMicroseconds(long deviceID, int *errorCode)
virtual unsigned long getStrobeWidthIncrementMicroseconds(long featureID, int *errorCode)
virtual void setStrobeDelayMicroseconds(long deviceID, int *errorCode, unsigned long microseconds)
virtual void setStrobeWidthMicroseconds(long deviceID, int *errorCode, unsigned long microseconds)
virtual unsigned long getStrobeWidthMinimumMicroseconds(long featureID, int *errorCode)
virtual unsigned long getStrobeDelayMinimumMicroseconds(long featureID, int *errorCode)
This is an interface to OceanDirect that allows the user to connect to devices over USB and other bus...
Definition: OceanDirectAPI.h:147