Lines 20-26
Link Here
|
20 |
*/ |
20 |
*/ |
21 |
|
21 |
|
22 |
#include "DynamicDll.h" |
22 |
#include "DynamicDll.h" |
23 |
#include "lib/libhdhomerun/hdhomerun.h" |
23 |
#include <hdhomerun/hdhomerun.h> |
24 |
|
24 |
|
25 |
class DllHdHomeRunInterface |
25 |
class DllHdHomeRunInterface |
26 |
{ |
26 |
{ |
Lines 41-70
Link Here
|
41 |
|
41 |
|
42 |
class DllHdHomeRun : public DllDynamic, public DllHdHomeRunInterface |
42 |
class DllHdHomeRun : public DllDynamic, public DllHdHomeRunInterface |
43 |
{ |
43 |
{ |
44 |
DECLARE_DLL_WRAPPER(DllHdHomeRun, DLL_PATH_LIBHDHOMERUN) |
44 |
virtual ~DllHdHomeRun () {}; |
45 |
DEFINE_METHOD5(int, discover_find_devices_custom, (uint32_t p1, uint32_t p2, uint32_t p3, struct hdhomerun_discover_device_t p4[], int p5)) |
45 |
|
46 |
DEFINE_METHOD2(struct hdhomerun_device_t*, device_create_from_str, (const char* p1, struct hdhomerun_debug_t *p2)) |
46 |
virtual int discover_find_devices_custom (uint32_t p1, uint32_t p2, uint32_t p3, struct hdhomerun_discover_device_t p4[], int p5) |
47 |
DEFINE_METHOD1(void, device_destroy, (struct hdhomerun_device_t* p1)) |
47 |
{ return ::hdhomerun_discover_find_devices_custom (p1, p2, p3, p4, p5); } |
48 |
DEFINE_METHOD1(int, device_stream_start, (struct hdhomerun_device_t* p1)) |
48 |
|
49 |
DEFINE_METHOD3(uint8_t*, device_stream_recv, (struct hdhomerun_device_t* p1, size_t p2, size_t* p3)) |
49 |
virtual struct hdhomerun_device_t *device_create_from_str (const char* p1, struct hdhomerun_debug_t *p2) |
50 |
DEFINE_METHOD1(void, device_stream_stop, (struct hdhomerun_device_t* p1)) |
50 |
{ return ::hdhomerun_device_create_from_str (p1, p2); } |
51 |
DEFINE_METHOD2(int, device_set_tuner_channel, (struct hdhomerun_device_t *p1, const char *p2)) |
51 |
|
52 |
DEFINE_METHOD2(int, device_set_tuner_program, (struct hdhomerun_device_t *p1, const char *p2)) |
52 |
virtual void device_destroy (struct hdhomerun_device_t* p1) |
53 |
DEFINE_METHOD2(int, device_set_tuner_from_str, (struct hdhomerun_device_t *p1, const char *p2)) |
53 |
{ ::hdhomerun_device_destroy (p1); } |
54 |
DEFINE_METHOD2(void, device_set_tuner, (struct hdhomerun_device_t *p1, unsigned int p2)) |
54 |
|
55 |
DEFINE_METHOD3(int, device_get_tuner_status, (struct hdhomerun_device_t *p1, char **p2, struct hdhomerun_tuner_status_t *p3)); |
55 |
virtual int device_stream_start (struct hdhomerun_device_t* p1) |
56 |
BEGIN_METHOD_RESOLVE() |
56 |
{ return ::hdhomerun_device_stream_start (p1); } |
57 |
RESOLVE_METHOD_RENAME(hdhomerun_discover_find_devices_custom, discover_find_devices_custom) |
57 |
|
58 |
RESOLVE_METHOD_RENAME(hdhomerun_device_create_from_str, device_create_from_str) |
58 |
|
59 |
RESOLVE_METHOD_RENAME(hdhomerun_device_destroy, device_destroy) |
59 |
virtual uint8_t *device_stream_recv (struct hdhomerun_device_t* p1, size_t p2, size_t* p3) |
60 |
RESOLVE_METHOD_RENAME(hdhomerun_device_stream_start, device_stream_start) |
60 |
{ |
61 |
RESOLVE_METHOD_RENAME(hdhomerun_device_stream_recv, device_stream_recv) |
61 |
uint8_t *retval; |
62 |
RESOLVE_METHOD_RENAME(hdhomerun_device_stream_stop, device_stream_stop) |
62 |
|
63 |
RESOLVE_METHOD_RENAME(hdhomerun_device_set_tuner_channel, device_set_tuner_channel) |
63 |
size_t tmp = *p3; |
64 |
RESOLVE_METHOD_RENAME(hdhomerun_device_set_tuner_program, device_set_tuner_program) |
64 |
retval = ::hdhomerun_device_stream_recv (p1, p2, &tmp); |
65 |
RESOLVE_METHOD_RENAME(hdhomerun_device_set_tuner_from_str, device_set_tuner_from_str) |
65 |
*p3 = tmp; |
66 |
RESOLVE_METHOD_RENAME(hdhomerun_device_set_tuner, device_set_tuner) |
66 |
|
67 |
RESOLVE_METHOD_RENAME(hdhomerun_device_get_tuner_status, device_get_tuner_status) |
67 |
return retval; |
68 |
END_METHOD_RESOLVE() |
68 |
} |
|
|
69 |
virtual void device_stream_stop (struct hdhomerun_device_t* p1) |
70 |
{ ::hdhomerun_device_stream_stop (p1); } |
71 |
|
72 |
virtual int device_set_tuner_channel (struct hdhomerun_device_t *p1, const char *p2) |
73 |
{ return ::hdhomerun_device_set_tuner_channel (p1, p2); } |
74 |
|
75 |
virtual int device_set_tuner_program (struct hdhomerun_device_t *p1, const char *p2) |
76 |
{ return ::hdhomerun_device_set_tuner_program (p1, p2); } |
77 |
|
78 |
|
79 |
virtual int device_set_tuner_from_str (struct hdhomerun_device_t *p1, const char *p2) |
80 |
{ return ::hdhomerun_device_set_tuner_from_str (p1, p2); } |
81 |
|
82 |
|
83 |
virtual void device_set_tuner (struct hdhomerun_device_t *p1, unsigned int p2) |
84 |
{ ::hdhomerun_device_set_tuner (p1, p2); } |
85 |
|
86 |
virtual int device_get_tuner_status (struct hdhomerun_device_t *p1, char **p2, struct hdhomerun_tuner_status_t *p3) |
87 |
{ return ::hdhomerun_device_get_tuner_status (p1, p2, p3); } |
88 |
|
89 |
// DLL faking. |
90 |
virtual bool ResolveExports() { return true; } |
91 |
virtual bool Load() { return true; } |
92 |
virtual void Unload() {} |
69 |
}; |
93 |
}; |
70 |
|
94 |
|