41#define MODULE_INTERFACE_VERSION 10
44#ifndef MMDEVICE_CLIENT_BUILD
48# define MODULE_API __declspec(dllexport)
50# define MODULE_API __attribute__((visibility("default")))
110#ifdef MMDEVICE_CLIENT_BUILD
112 typedef void (*fnInitializeModuleData)();
113 typedef MM::Device* (*fnCreateDevice)(
const char*);
115 typedef long (*fnGetModuleVersion)();
116 typedef long (*fnGetDeviceInterfaceVersion) ();
117 typedef unsigned (*fnGetNumberOfDevices)();
118 typedef bool (*fnGetDeviceName)(unsigned,
char*, unsigned);
119 typedef bool (*fnGetDeviceType)(
const char*,
int*);
120 typedef bool (*fnGetDeviceDescription)(
const char*,
char*, unsigned);
124#ifndef MMDEVICE_CLIENT_BUILD
void RegisterDevice(const char *deviceName, MM::DeviceType deviceType, const char *description)
Register a device class provided by the device adapter library.
Definition ModuleInterface.cpp:75
#define MODULE_API
Definition ModuleInterface.h:50
MODULE_API unsigned GetNumberOfDevices()
Definition ModuleInterface.cpp:55
MODULE_API void InitializeModuleData()
Initialize the device adapter module.
MODULE_API long GetModuleVersion()
Definition ModuleInterface.cpp:45
MODULE_API bool GetDeviceName(unsigned deviceIndex, char *name, unsigned bufferLength)
Definition ModuleInterface.cpp:60
MODULE_API long GetDeviceInterfaceVersion()
Definition ModuleInterface.cpp:50
MODULE_API MM::Device * CreateDevice(const char *name)
Instantiate the named device.
MODULE_API void DeleteDevice(MM::Device *pDevice)
Destroy a device instance.
MODULE_API bool GetDeviceDescription(const char *deviceName, char *name, unsigned bufferLength)
Definition ModuleInterface.cpp:70
MODULE_API bool GetDeviceType(const char *deviceName, int *type)
Definition ModuleInterface.cpp:65
Generic device interface.
Definition MMDevice.h:192
DeviceType
Definition MMDeviceConstants.h:236