Vuo
2.4.1
type
inputEditor
VuoInputEditorHidDevice
VuoInputEditorHidDevice.cc
Go to the documentation of this file.
1
10
#include "
VuoInputEditorHidDevice.hh
"
11
12
extern
"C"
13
{
14
#include "
VuoHid.h
"
15
}
16
20
VuoInputEditor
*
VuoInputEditorHidDeviceFactory::newInputEditor
()
21
{
22
return
new
VuoInputEditorHidDevice
();
23
}
24
28
VuoInputEditorMenuItem
*
VuoInputEditorHidDevice::setUpMenuTree
()
29
{
30
VuoInputEditorMenuItem
*optionsTree =
new
VuoInputEditorMenuItem
(
"root"
);
31
32
optionsTree->
addItem
(
new
VuoInputEditorMenuItem
(
"None"
, NULL));
33
34
optionsTree->
addSeparator
();
35
optionsTree->
addItem
(
new
VuoInputEditorMenuItem
(
"First device of type"
, NULL, NULL,
false
));
36
37
vector<pair<int,int>> usages{{1,6},{1,2},{1,4},{1,5}};
38
VuoHidDevice
device;
39
bzero(&device,
sizeof
(device));
40
device.
matchType
= VuoHidDevice_MatchUsage;
41
for
(
auto
usage : usages)
42
{
43
device.usagePage = usage.first;
44
device.usage = usage.second;
45
char
*label =
VuoHid_getUsageText
(device.usagePage, device.usage);
46
optionsTree->
addItem
(
new
VuoInputEditorMenuItem
(
VuoText_format
(
" %s"
, label),
VuoHidDevice_getJson
(device)));
47
free(label);
48
}
49
50
optionsTree->
addSeparator
();
51
optionsTree->
addItem
(
new
VuoInputEditorMenuItem
(
"Specific device"
, NULL, NULL,
false
));
52
53
VuoList_VuoHidDevice
devices =
VuoHid_getDeviceList
();
54
55
unsigned
long
deviceCount =
VuoListGetCount_VuoHidDevice
(devices);
56
if
(deviceCount)
57
for
(
unsigned
long
i = 1; i <= deviceCount; ++i)
58
{
59
VuoHidDevice
device =
VuoListGetValue_VuoHidDevice
(devices, i);
60
optionsTree->
addItem
(
new
VuoInputEditorMenuItem
(
VuoText_format
(
" %s"
, device.
name
),
VuoHidDevice_getJson
(device)));
61
}
62
else
63
optionsTree->
addItem
(
new
VuoInputEditorMenuItem
(
" (no devices found)"
, NULL, NULL,
false
));
64
65
return
optionsTree;
66
}
Generated on Mon Feb 7 2022 18:55:37 for Vuo by
1.9.3