Vuo  2.4.0
VuoArtNetOutputDevice.c
Go to the documentation of this file.
1
10#include "type.h"
12
14#ifdef VUO_COMPILER
16 "title" : "Art-Net Output Device",
17 "description" : "Information about an Art-Net output device.",
18 "keywords" : [ ],
19 "version" : "1.0.0",
20 "dependencies" : [
21 "VuoArtNetInputDevice",
22 "VuoInteger",
23 "VuoText"
24 ]
25 });
26#endif
28
44{
45 return (VuoArtNetOutputDevice){
46 VuoJson_getObjectValue(VuoText, js, "name", NULL),
47 VuoJson_getObjectValue(VuoText, js, "ipAddress", NULL),
48 VuoJson_getObjectValue(VuoText, js, "ethernetAddress", NULL),
49 {
51 VuoJson_getObjectValue(VuoInteger, js, "subNet", 0),
52 VuoJson_getObjectValue(VuoInteger, js, "universe", 0),
53 }};
54}
55
60{
61 json_object *js = json_object_new_object();
62
63 if (value.name)
64 json_object_object_add(js, "name", VuoText_getJson(value.name));
65
66 if (value.ipAddress)
67 json_object_object_add(js, "ipAddress", VuoText_getJson(value.ipAddress));
68
69 if (value.ethernetAddress)
70 json_object_object_add(js, "ethernetAddress", VuoText_getJson(value.ethernetAddress));
71
72 json_object_object_add(js, "net", VuoInteger_getJson(value.address.net));
73
74 json_object_object_add(js, "subNet", VuoInteger_getJson(value.address.subNet));
75
76 json_object_object_add(js, "universe", VuoInteger_getJson(value.address.universe));
77
78 return js;
79}
80
85{
86 if (value.name && value.ipAddress && value.ethernetAddress)
87 return VuoText_format("%s<br>%s (%s)<br>Net %lld, Sub-Net %lld, Universe %lld",
88 value.name,
89 value.ipAddress, value.ethernetAddress,
90 value.address.net, value.address.subNet, value.address.universe);
91 else if (value.ipAddress)
92 return VuoText_format("%s<br>Net %lld, Sub-Net %lld, Universe %lld",
93 value.ipAddress,
94 value.address.net, value.address.subNet, value.address.universe);
95 else
96 return VuoText_format("Net %lld, Sub-Net %lld, Universe %lld", value.address.net, value.address.subNet, value.address.universe);
97}
98
103{
105 bzero(&d, sizeof(VuoArtNetOutputDevice));
106 d.address.net = net;
107 d.address.subNet = subNet;
108 d.address.universe = universe;
109 return d;
110}
111
116{
118 bzero(&d, sizeof(VuoArtNetOutputDevice));
119 d.ipAddress = ipAddress;
120 d.address.net = net;
121 d.address.subNet = subNet;
122 d.address.universe = universe;
123 return d;
124}
125
134{
135 if (!VuoArtNetAddress_areEqual(value1.address, value2.address))
136 return false;
137
138 if (!VuoText_areEqual(value1.ipAddress, value2.ipAddress))
139 return false;
140
141 if (!VuoText_areEqual(value1.name, value2.name))
142 return false;
143
144 if (!VuoText_areEqual(value1.ethernetAddress, value2.ethernetAddress))
145 return false;
146
147 return true;
148}
149
154{
155 VuoType_returnInequality(VuoText, a.name, b.name);
156 VuoType_returnInequality(VuoText, a.ipAddress, b.ipAddress);
157 VuoType_returnInequality(VuoText, a.ethernetAddress, b.ethernetAddress);
158 VuoType_returnInequality(VuoArtNetAddress, a.address, b.address);
159 return false;
160}