10 #include "../LH/Commodities API/commodities_api.h"
15 const uint32_t SE3_TIMEOUT = 10000;
17 class L0 :
public CommoditiesApi,
public CommunicationApi,
public ProvisionApi {
23 bool Se3Info(uint64_t deadline, se3DiscoverInfo* info);
25 void L0DiscoverInit();
26 bool L0DiscoverNext();
29 bool Se3Open(uint64_t deadline, se3File* phFile, se3DiscoverInfo* disco);
30 uint16_t L0TX(uint16_t cmd, uint16_t cmdFlags, uint16_t len,
const uint8_t* data);
31 uint16_t L0RX(uint16_t* respStatus, uint16_t* respLen, uint8_t* respData);
38 bool L0DiscoverSerialNo(uint8_t* serialNo);
40 void L0Open(uint8_t devPtr);
42 void L0Close(uint8_t devPtr);
44 void L0TXRX(uint16_t reqCmd, uint16_t reqCmdFlags, uint16_t reqLen,
const uint8_t* reqData, uint16_t* respStatus, uint16_t* respLen, uint8_t* respData);
45 uint16_t L0Echo(
const uint8_t* dataIn, uint16_t dataInLen, uint8_t* dataOut);
47 uint16_t L0FactoryInit(
const uint8_t* serialno);
50 uint8_t GetNumberDevices();
51 bool SwitchToDevice(
int devPos);
52 uint8_t* GetDeviceHelloMsg();
53 se3Char* GetDevicePath(){
return this->base.GetDeviceInfoPath();}
54 uint8_t* GetDeviceSn(){
return this->base.GetDeviceInfoSerialNo();}
56 bool Se3CreateLogFile(
char* path, uint32_t file_dim);
57 char* Se3CreateLogFilePath(
char *name);