39 lines
771 B
C++
39 lines
771 B
C++
#ifndef __NEODEVICE_H_
|
|
#define __NEODEVICE_H_
|
|
|
|
#include <stdint.h>
|
|
#include "icsneo/device/devicetype.h"
|
|
|
|
#ifdef __cplusplus
|
|
// A forward declaration is needed as there is a circular dependency
|
|
namespace icsneo {
|
|
|
|
class Device;
|
|
class FoundDevice;
|
|
|
|
}
|
|
typedef icsneo::Device* devicehandle_t;
|
|
#else
|
|
typedef void* devicehandle_t;
|
|
#endif
|
|
|
|
typedef int32_t neodevice_handle_t;
|
|
|
|
#pragma pack(push, 1)
|
|
|
|
#ifdef __cplusplus
|
|
typedef struct neodevice_t {
|
|
neodevice_t();
|
|
neodevice_t(const icsneo::FoundDevice& found, devicetype_t inType);
|
|
#else
|
|
typedef struct {
|
|
#endif
|
|
devicehandle_t device; // Pointer back to the C++ device object
|
|
neodevice_handle_t handle; // Handle for use by the underlying driver
|
|
devicetype_t type;
|
|
char serial[7];
|
|
} neodevice_t;
|
|
|
|
#pragma pack(pop)
|
|
|
|
#endif |