OceanDirectLighthouse  3.1.1
OceanDirect Lighthouse C++/C API
LHFlashAPI.h
1 #ifndef LH_FLASH_API_H
2 #define LH_FLASH_API_H
3 /*****************************************************
4  * @file LHFlashAPI.h
5  * @date December 2023
6  * @author Ocean Insight, Inc.
7  *
8  * This is an interface to OceanDirect that allows
9  * the user to connect to devices over USB and other buses.
10  * This is intended as a usable and extensible API.
11  */
12  /************************************************************************
13  *
14  * OCEAN INSIGHT CONFIDENTIAL
15  * __________________
16  *
17  * [2018] - [2023] Ocean Insight Incorporated
18  * All Rights Reserved.
19  *
20  * NOTICE: All information contained herein is, and remains
21  * the property of Ocean Insight Incorporated and its suppliers,
22  * if any. The intellectual and technical concepts contained
23  * herein are proprietary to Ocean Insight Incorporated
24  * and its suppliers and may be covered by U.S. and Foreign Patents,
25  * patents in process, and are protected by trade secret or copyright law.
26  * Dissemination of this information or reproduction of this material
27  * is strictly forbidden unless prior written permission is obtained
28  * from Ocean Insight Incorporated.
29  *
30  **************************************************************************/
31 
32 #include "lighthouse/api/LighthouseDllDecl.h"
33 #include "lighthouse/api/lhdefs.h"
37 namespace oceandirect {
38  namespace api {
39  class LIGHTHOUSE_DLL_DECL LHFlashAPI {
40  public:
41  virtual ~LHFlashAPI() = default;
42 
52  virtual void setI2CData(lh_device_id_t deviceID, lh_error_code_t* errorCode, uint32_t i2cBusIndex, uint32_t i2cTargetAddress,
53  const uint8_t data[], size_t dataLength);
54 
61  virtual bool getAccessoryBoardAvailable(lh_device_id_t deviceID, lh_error_code_t* errorCode);
62 
73  virtual void setFlashSlotData(lh_device_id_t deviceID, lh_error_code_t* errorCode, uint32_t slotNumber, const uint8_t data[], size_t dataLength);
74 
85  virtual size_t getFlashSlotData(lh_device_id_t deviceID, lh_error_code_t* errorCode, uint32_t slotNumber, uint8_t data[], size_t dataLength);
86  };
87  }
88 }
89 #endif /* LH_FLASH_API_H */
Definition: LHFlashAPI.h:39
virtual void setI2CData(lh_device_id_t deviceID, lh_error_code_t *errorCode, uint32_t i2cBusIndex, uint32_t i2cTargetAddress, const uint8_t data[], size_t dataLength)
virtual void setFlashSlotData(lh_device_id_t deviceID, lh_error_code_t *errorCode, uint32_t slotNumber, const uint8_t data[], size_t dataLength)
virtual size_t getFlashSlotData(lh_device_id_t deviceID, lh_error_code_t *errorCode, uint32_t slotNumber, uint8_t data[], size_t dataLength)
virtual bool getAccessoryBoardAvailable(lh_device_id_t deviceID, lh_error_code_t *errorCode)
This is the API for controlling the autonulling functionality of a device.
Definition: LighthouseAPI.h:54