OceanDirect  2.4.0
OceanDirect C++/C API
ContinuousStrobeAPI.h
1 /*****************************************************
2  * @file ContinuousStrobeAPI.h
3  * @date January 2020
4  * @author Ocean Insight, 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 CONTINSTROBEAPI_H
31 #define CONTINSTROBEAPI_H
32 
33 #include "api/DllDecl.h"
34 
41 namespace oceandirect {
42  namespace api {
43 
44  class DLL_DECL ContinuousStrobeAPI {
45  public:
47  virtual ~ContinuousStrobeAPI();
48  static ContinuousStrobeAPI *getInstance();
49 
50  static void shutdown();
51 
63  unsigned long getContinuousStrobePeriodMicroseconds(long deviceID, int *errorCode);
64 
76  bool getContinuousStrobeEnable(long deviceID, int *errorCode);
77 
89  unsigned long getContinuousStrobePeriodMinimumMicroseconds(long deviceID, int *errorCode);
90 
102  unsigned long getContinuousStrobePeriodMaximumMicroseconds(long deviceID, int *errorCode);
103 
116  unsigned long getContinuousStrobePeriodIncrementMicroseconds(long deviceID, int *errorCode);
117 
141  unsigned long getContinuousStrobeWidthMicroseconds(long deviceID, int *errorCode);
142 
154  void setStrobeEnable(long deviceID, int *errorCode, bool strobeEnable);
155 
167  void setStrobePeriodMicroseconds(long deviceID, int *errorCode, unsigned long strobePeriodMicroseconds);
168 
180  void setContinuousStrobeWidthMicroseconds(long deviceID, int *errorCode, unsigned long strobeWidthMicroseconds);
181 
182  private:
183  static ContinuousStrobeAPI *instance;
184  };
185  }
186 }
187 #endif /* CONTINSTROBEAPI_H */
Definition: ContinuousStrobeAPI.h:44
unsigned long getContinuousStrobeWidthMicroseconds(long deviceID, int *errorCode)
void setStrobePeriodMicroseconds(long deviceID, int *errorCode, unsigned long strobePeriodMicroseconds)
void setContinuousStrobeWidthMicroseconds(long deviceID, int *errorCode, unsigned long strobeWidthMicroseconds)
unsigned long getContinuousStrobePeriodIncrementMicroseconds(long deviceID, int *errorCode)
unsigned long getContinuousStrobePeriodMicroseconds(long deviceID, int *errorCode)
bool getContinuousStrobeEnable(long deviceID, int *errorCode)
unsigned long getContinuousStrobePeriodMinimumMicroseconds(long deviceID, int *errorCode)
void setStrobeEnable(long deviceID, int *errorCode, bool strobeEnable)
unsigned long getContinuousStrobePeriodMaximumMicroseconds(long deviceID, int *errorCode)
This is an interface to OceanDirect that allows the user to connect to devices over USB and other bus...
Definition: OceanDirectAPI.h:144