Vuo  2.4.0
VuoDiode.c
Go to the documentation of this file.
1
10#include <string.h>
11#include "type.h"
12
14#ifdef VUO_COMPILER
16 "title" : "Diode",
17 "description" : "How to manage signal polarity.",
18 "keywords" : [ ],
19 "version" : "1.0.0",
20 "dependencies" : [
21 "VuoList_VuoDiode"
22 ]
23 });
24#endif
26
35{
36 const char *valueAsString = "";
37 if (json_object_get_type(js) == json_type_string)
38 valueAsString = json_object_get_string(js);
39
40 VuoDiode value = VuoDiode_Unipolar;
41
42 if (strcmp(valueAsString, "bipolar") == 0)
43 value = VuoDiode_Bipolar;
44 else if (strcmp(valueAsString, "absolute") == 0)
45 value = VuoDiode_Absolute;
46
47 return value;
48}
49
54{
55 char *valueAsString = "unipolar";
56
57 if (value == VuoDiode_Bipolar)
58 valueAsString = "bipolar";
59 else if (value == VuoDiode_Absolute)
60 valueAsString = "absolute";
61
62 return json_object_new_string(valueAsString);
63}
64
69{
71 VuoListAppendValue_VuoDiode(l, VuoDiode_Unipolar);
72 VuoListAppendValue_VuoDiode(l, VuoDiode_Bipolar);
73 VuoListAppendValue_VuoDiode(l, VuoDiode_Absolute);
74 return l;
75}
76
80char *VuoDiode_getSummary(const VuoDiode value)
81{
82 const char *valueAsString = "Unipolar";
83
84 if (value == VuoDiode_Bipolar)
85 valueAsString = "Bipolar";
86 else if (value == VuoDiode_Absolute)
87 valueAsString = "Absolute";
88
89 return strdup(valueAsString);
90}
91
95bool VuoDiode_areEqual(const VuoDiode valueA, const VuoDiode valueB)
96{
97 return valueA == valueB;
98}
99
103bool VuoDiode_isLessThan(const VuoDiode valueA, const VuoDiode valueB)
104{
105 return valueA < valueB;
106}