OceanDirect  1.30.1-rc.4
OceanDirect C++/C API
OpticalBenchFeatureAdapter.h
1 /*****************************************************
2  * @file OpticalBenchFeatureAdapter.h
3  * @date February 2022
4  * @author Ocean Insight, Inc.
5  *
6  * This is a wrapper that allows
7  * access to OceanDirect TemperatureFeatureInterface instances.
8  */
9  /************************************************************************
10  *
11  * OCEAN INSIGHT CONFIDENTIAL
12  * __________________
13  *
14  * [2018] - [2022] Ocean Insight Incorporated
15  * All Rights Reserved.
16  *
17  * NOTICE: All information contained herein is, and remains
18  * the property of Ocean Insight Incorporated and its suppliers,
19  * if any. The intellectual and technical concepts contained
20  * herein are proprietary to Ocean Insight Incorporated
21  * and its suppliers and may be covered by U.S. and Foreign Patents,
22  * patents in process, and are protected by trade secret or copyright law.
23  * Dissemination of this information or reproduction of this material
24  * is strictly forbidden unless prior written permission is obtained
25  * from Ocean Insight Incorporated.
26  *
27  **************************************************************************/
28 
29 #ifndef OCEANDIRECT_OPTICAL_BENCH_FEATURE_ADAPTER_H
30 #define OCEANDIRECT_OPTICAL_BENCH_FEATURE_ADAPTER_H
31 
32 #include "api/adapters/FeatureAdapterTemplate.h"
33 #include "vendors/OceanOptics/features/optical_bench/OpticalBenchFeatureInterface.h"
34 
35 namespace oceandirect {
36  namespace api {
37 
38  class OpticalBenchFeatureAdapter : public FeatureAdapterTemplate<OpticalBenchFeatureInterface> {
39  public:
40  OpticalBenchFeatureAdapter(OpticalBenchFeatureInterface *intf,
41  const FeatureFamily &f,
42  Protocol *p, Bus *b, unsigned short instanceIndex);
43  virtual ~OpticalBenchFeatureAdapter() = default;
44 
45  int readOpticalBenchWavelength(int *errorCode, char *buffer, int buffer_length);
46  unsigned short int readOpticalBenchSlitWidthMicrons(int *errorCode);
47  void writeOpticalBenchSlitWidthMicrons(int *errorCode, unsigned short int widthMicrons);
48  int readOpticalBenchSerialNumber(int *errorCode, char *buffer, int buffer_length);
49  void writeOpticalBenchSerialNumber(int *errorCode, char *buffer, int buffer_length);
50  int readOpticalBenchId(int *errorCode, char *buffer, int buffer_length);
51  void writeOpticalBenchId(int *errorCode, char *buffer, int buffer_length);
52  unsigned short int readOpticalBenchFiberDiameter(int *errorCode);
53  void writeOpticalBenchFiberDiameter(int *errorCode, unsigned short int diameterMicrons);
54 
55  int readOpticalBenchCoating(int *errorCode, char *buffer, int buffer_length);
56  void writeOpticalBenchCoating(int *errorCode, char *buffer, int buffer_length);
57  int readOpticalBenchFilter(int *errorCode, char *buffer, int buffer_length);
58  void writeOpticalBenchFilter(int *errorCode, char *buffer, int buffer_length);
59  int readOpticalBenchGrating(int *errorCode, char *buffer, int buffer_length);
60  void writeOpticalBenchGrating(int *errorCode, char *buffer, int buffer_length);
61  int readOpticalBenchLens(int *errorCode, char *buffer, int buffer_length);
62  };
63  }
64 }
65 
66 #endif /* OCEANDIRECT_OPTICAL_BENCH_FEATURE_ADAPTER_H */
Definition: FeatureAdapterTemplate.h:44
Definition: OpticalBenchFeatureAdapter.h:38
This is an interface to Advance features of OceanDirect that allow access to less common controls....
Definition: AcquisitionDelayFeatureAdapter.h:35