OceanDirect  1.30.1-rc.4
OceanDirect C++/C API
RawBusAccessFeatureAdapter.h
1 /*****************************************************
2  * @file RawBusAccessFeatureAdapter.h
3  * @date February 2022
4  * @author Ocean Insight, Inc.
5  *
6  * This is a wrapper that allows
7  * access to OceanDirect RawBusAccessFeatureInterface instances.
8  */
9  /************************************************************************
10  *
11  * OCEAN INSIGHT CONFIDENTIAL
12  * __________________
13  *
14  * [2018] - [2022] Ocean Insight Incorporatesd
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_RAW_BUS_ACCESS_FEATURE_ADAPTER_H
30 #define OCEANDIRECT_RAW_BUS_ACCESS_FEATURE_ADAPTER_H
31 
32 #include "api/adapters/FeatureAdapterTemplate.h"
33 #include "vendors/OceanOptics/features/raw_bus_access/RawBusAccessFeatureInterface.h"
34 
35 namespace oceandirect {
36  namespace api {
37 
38  class RawBusAccessFeatureAdapter : public FeatureAdapterTemplate<RawBusAccessFeatureInterface> {
39  public:
40  RawBusAccessFeatureAdapter(RawBusAccessFeatureInterface *intf,
41  const FeatureFamily &f,
42  Protocol *p, Bus *b, unsigned short instanceIndex);
43  virtual ~RawBusAccessFeatureAdapter() = default;
44 
45  int readUSB(int *errorCode, unsigned char *buffer, unsigned int bufferLength, unsigned char usbEndpoint);
46  int writeUSB(int *errorCode, unsigned char *buffer, unsigned int bufferLength, unsigned char usbEndpoint);
47  int read(int *errorCode, unsigned char *buffer, unsigned int bufferLength);
48  int write(int *errorCode, unsigned char *buffer, unsigned int bufferLength);
49  std::string getStringDescriptor(int *errorCode, int index);
50  };
51 
52  }
53 }
54 
55 #endif /* OCEANDIRECT_RAW_BUS_ACCESS_FEATURE_ADAPTER_H */
Definition: FeatureAdapterTemplate.h:44
Definition: RawBusAccessFeatureAdapter.h:38
This is an interface to Advance features of OceanDirect that allow access to less common controls....
Definition: AcquisitionDelayFeatureAdapter.h:35