1#ifndef LOCAL_DEVICE_ADDON_H
2#define LOCAL_DEVICE_ADDON_H
3
4#include <bluetooth/LocalDevice.h>
5#include <bluetooth/RemoteDevice.h>
6
7class LocalDeviceAddOn {
8
9public:
10
11	virtual const char* GetName()=0;
12
13	virtual status_t	InitCheck(LocalDevice* lDevice)=0;
14
15	virtual const char* GetActionDescription()=0;
16	virtual status_t	TakeAction(LocalDevice* lDevice)=0;
17
18	virtual const char* GetActionOnRemoteDescription()=0;
19	virtual status_t 	TakeActionOnRemote(LocalDevice* lDevice, RemoteDevice* rDevice)=0;
20
21	virtual const char* GetOverridenPropertiesDescription()=0;
22	virtual BMessage*	OverridenProperties(LocalDevice* lDevice, const char* property)=0;
23
24};
25
26#define INSTANTIATE_LOCAL_DEVICE_ADDON(addon) LocalDeviceAddOn* InstantiateLocalDeviceAddOn(){return new addon();}
27#define EXPORT_LOCAL_DEVICE_ADDON extern "C" __declspec(dllexport) LocalDeviceAddOn* InstantiateLocalDeviceAddOn();
28
29
30
31#endif
32