Vuo
2.0.0
type
VuoBlendMode.c
Go to the documentation of this file.
1
10
#include <stdlib.h>
11
#include <string.h>
12
#include "
type.h
"
13
15
#ifdef VUO_COMPILER
16
VuoModuleMetadata
({
17
"title"
:
"Blend Mode"
,
18
"description"
:
"Blend Mode Enum."
,
19
"keywords"
: [
"blend, mix"
],
20
"version"
:
"1.0.0"
,
21
"dependencies"
: [
22
"VuoList_VuoBlendMode"
23
]
24
});
25
#endif
26
32
VuoBlendMode
VuoBlendMode_makeFromJson
(
json_object
*js)
33
{
34
const
char
*valueAsString =
""
;
35
if
(json_object_get_type(js) == json_type_string)
36
valueAsString = json_object_get_string(js);
37
38
VuoBlendMode
value =
VuoBlendMode_Normal
;
39
40
if
( !strcmp(valueAsString,
"normal"
) ) {
41
value =
VuoBlendMode_Normal
;
42
}
else
43
if
( !strcmp(valueAsString,
"multiply"
) ) {
44
value =
VuoBlendMode_Multiply
;
45
}
else
46
if
( !strcmp(valueAsString,
"darker-components"
) ) {
47
value =
VuoBlendMode_DarkerComponents
;
48
}
else
49
if
( !strcmp(valueAsString,
"darker-component"
) ) {
// deprecated in 1.2.4
50
value =
VuoBlendMode_DarkerComponents
;
51
}
else
52
if
( !strcmp(valueAsString,
"darker-color"
) ) {
53
value =
VuoBlendMode_DarkerColor
;
54
}
else
55
if
( !strcmp(valueAsString,
"linear-burn"
) ) {
56
value =
VuoBlendMode_LinearBurn
;
57
}
else
58
if
( !strcmp(valueAsString,
"color-burn"
) ) {
59
value =
VuoBlendMode_ColorBurn
;
60
}
else
61
if
( !strcmp(valueAsString,
"screen"
) ) {
62
value =
VuoBlendMode_Screen
;
63
}
else
64
if
( !strcmp(valueAsString,
"lighter-components"
) ) {
65
value =
VuoBlendMode_LighterComponents
;
66
}
else
67
if
( !strcmp(valueAsString,
"lighter-component"
) ) {
// deprecated in 1.2.4
68
value =
VuoBlendMode_LighterComponents
;
69
}
else
70
if
( !strcmp(valueAsString,
"lighter-color"
) ) {
71
value =
VuoBlendMode_LighterColor
;
72
}
else
73
if
( !strcmp(valueAsString,
"linear-dodge"
) ) {
74
value =
VuoBlendMode_LinearDodge
;
75
}
else
76
if
( !strcmp(valueAsString,
"color-dodge"
) ) {
77
value =
VuoBlendMode_ColorDodge
;
78
}
else
79
if
( !strcmp(valueAsString,
"overlay"
) ) {
80
value =
VuoBlendMode_Overlay
;
81
}
else
82
if
( !strcmp(valueAsString,
"soft-light"
) ) {
83
value =
VuoBlendMode_SoftLight
;
84
}
else
85
if
( !strcmp(valueAsString,
"hard-light"
) ) {
86
value =
VuoBlendMode_HardLight
;
87
}
else
88
if
( !strcmp(valueAsString,
"vivid-light"
) ) {
89
value =
VuoBlendMode_VividLight
;
90
}
else
91
if
( !strcmp(valueAsString,
"linear-light"
) ) {
92
value =
VuoBlendMode_LinearLight
;
93
}
else
94
if
( !strcmp(valueAsString,
"pin-light"
) ) {
95
value =
VuoBlendMode_PinLight
;
96
}
else
97
if
( !strcmp(valueAsString,
"hard-mix"
) ) {
98
value =
VuoBlendMode_HardMix
;
99
}
else
100
if
( !strcmp(valueAsString,
"difference"
) ) {
101
value =
VuoBlendMode_Difference
;
102
}
else
103
if
( !strcmp(valueAsString,
"exclusion"
) ) {
104
value =
VuoBlendMode_Exclusion
;
105
}
else
106
if
( !strcmp(valueAsString,
"subtract"
) ) {
107
value =
VuoBlendMode_Subtract
;
108
}
else
109
if
( !strcmp(valueAsString,
"divide"
) ) {
110
value =
VuoBlendMode_Divide
;
111
}
else
112
if
( !strcmp(valueAsString,
"hue"
) ) {
113
value =
VuoBlendMode_Hue
;
114
}
else
115
if
( !strcmp(valueAsString,
"saturation"
) ) {
116
value =
VuoBlendMode_Saturation
;
117
}
else
118
if
( !strcmp(valueAsString,
"color"
) ) {
119
value =
VuoBlendMode_Color
;
120
}
else
121
if
( !strcmp(valueAsString,
"luminosity"
) ) {
122
value =
VuoBlendMode_Luminosity
;
123
}
124
else
if
(strcmp(valueAsString,
"power"
) == 0)
return
VuoBlendMode_Power
;
125
126
return
value;
127
}
128
133
json_object
*
VuoBlendMode_getJson
(
const
VuoBlendMode
value)
134
{
135
char
*valueAsString =
""
;
136
137
switch
(value)
138
{
139
case
VuoBlendMode_Normal
:
140
valueAsString =
"normal"
;
141
break
;
142
case
VuoBlendMode_Multiply
:
143
valueAsString =
"multiply"
;
144
break
;
145
case
VuoBlendMode_DarkerComponents
:
146
valueAsString =
"darker-components"
;
147
break
;
148
case
VuoBlendMode_DarkerColor
:
149
valueAsString =
"darker-color"
;
150
break
;
151
case
VuoBlendMode_LinearBurn
:
152
valueAsString =
"linear-burn"
;
153
break
;
154
case
VuoBlendMode_ColorBurn
:
155
valueAsString =
"color-burn"
;
156
break
;
157
case
VuoBlendMode_Screen
:
158
valueAsString =
"screen"
;
159
break
;
160
case
VuoBlendMode_LighterComponents
:
161
valueAsString =
"lighter-components"
;
162
break
;
163
case
VuoBlendMode_LighterColor
:
164
valueAsString =
"lighter-color"
;
165
break
;
166
case
VuoBlendMode_LinearDodge
:
167
valueAsString =
"linear-dodge"
;
168
break
;
169
case
VuoBlendMode_ColorDodge
:
170
valueAsString =
"color-dodge"
;
171
break
;
172
case
VuoBlendMode_Overlay
:
173
valueAsString =
"overlay"
;
174
break
;
175
case
VuoBlendMode_SoftLight
:
176
valueAsString =
"soft-light"
;
177
break
;
178
case
VuoBlendMode_HardLight
:
179
valueAsString =
"hard-light"
;
180
break
;
181
case
VuoBlendMode_VividLight
:
182
valueAsString =
"vivid-light"
;
183
break
;
184
case
VuoBlendMode_LinearLight
:
185
valueAsString =
"linear-light"
;
186
break
;
187
case
VuoBlendMode_PinLight
:
188
valueAsString =
"pin-light"
;
189
break
;
190
case
VuoBlendMode_HardMix
:
191
valueAsString =
"hard-mix"
;
192
break
;
193
case
VuoBlendMode_Difference
:
194
valueAsString =
"difference"
;
195
break
;
196
case
VuoBlendMode_Exclusion
:
197
valueAsString =
"exclusion"
;
198
break
;
199
case
VuoBlendMode_Subtract
:
200
valueAsString =
"subtract"
;
201
break
;
202
case
VuoBlendMode_Divide
:
203
valueAsString =
"divide"
;
204
break
;
205
case
VuoBlendMode_Hue
:
206
valueAsString =
"hue"
;
207
break
;
208
case
VuoBlendMode_Saturation
:
209
valueAsString =
"saturation"
;
210
break
;
211
case
VuoBlendMode_Color
:
212
valueAsString =
"color"
;
213
break
;
214
case
VuoBlendMode_Luminosity
:
215
valueAsString =
"luminosity"
;
216
break
;
217
case
VuoBlendMode_Power
:
218
valueAsString =
"power"
;
219
break
;
220
}
221
return
json_object_new_string(valueAsString);
222
}
223
227
VuoList_VuoBlendMode
VuoBlendMode_getAllowedValues
(
void
)
228
{
229
VuoList_VuoBlendMode
l =
VuoListCreate_VuoBlendMode
();
230
for
(
VuoBlendMode
b =
VuoBlendMode_Normal
; b <=
VuoBlendMode_Power
; ++b)
231
VuoListAppendValue_VuoBlendMode
(l, b);
232
return
l;
233
}
234
239
char
*
VuoBlendMode_getSummary
(
const
VuoBlendMode
value)
240
{
241
char
*valueAsString =
""
;
242
243
switch
(value)
244
{
245
case
VuoBlendMode_Normal
:
246
valueAsString =
"Normal — Alpha"
;
247
break
;
248
case
VuoBlendMode_Multiply
:
249
valueAsString =
"Multiply — b•f"
;
250
break
;
251
case
VuoBlendMode_DarkerComponents
:
252
valueAsString =
"Darker Components — min(b,f)"
;
253
break
;
254
case
VuoBlendMode_DarkerColor
:
255
valueAsString =
"Darker Color — min(b,f)"
;
256
break
;
257
case
VuoBlendMode_LinearBurn
:
258
valueAsString =
"Linear Burn — b+f-1"
;
259
break
;
260
case
VuoBlendMode_ColorBurn
:
261
valueAsString =
"Color Burn — 1-(1-b)/f"
;
262
break
;
263
case
VuoBlendMode_Screen
:
264
valueAsString =
"Screen — 1-(1-b)•(1-f)"
;
265
break
;
266
case
VuoBlendMode_LighterComponents
:
267
valueAsString =
"Lighter Components — max(b,f)"
;
268
break
;
269
case
VuoBlendMode_LighterColor
:
270
valueAsString =
"Lighter Color — max(b,f)"
;
271
break
;
272
case
VuoBlendMode_LinearDodge
:
273
valueAsString =
"Linear Dodge (Add) — b+f"
;
274
break
;
275
case
VuoBlendMode_ColorDodge
:
276
valueAsString =
"Color Dodge — b/(1-f)"
;
277
break
;
278
case
VuoBlendMode_Overlay
:
279
valueAsString =
"Overlay"
;
280
break
;
281
case
VuoBlendMode_SoftLight
:
282
valueAsString =
"Soft Light"
;
283
break
;
284
case
VuoBlendMode_HardLight
:
285
valueAsString =
"Hard Light"
;
286
break
;
287
case
VuoBlendMode_VividLight
:
288
valueAsString =
"Vivid Light"
;
289
break
;
290
case
VuoBlendMode_LinearLight
:
291
valueAsString =
"Linear Light"
;
292
break
;
293
case
VuoBlendMode_PinLight
:
294
valueAsString =
"Pin Light"
;
295
break
;
296
case
VuoBlendMode_HardMix
:
297
valueAsString =
"Hard Mix"
;
298
break
;
299
case
VuoBlendMode_Difference
:
300
valueAsString =
"Difference — abs(b-f)"
;
301
break
;
302
case
VuoBlendMode_Exclusion
:
303
valueAsString =
"Exclusion — b+f-2•b•f"
;
304
break
;
305
case
VuoBlendMode_Subtract
:
306
valueAsString =
"Subtract — b-f"
;
307
break
;
308
case
VuoBlendMode_Divide
:
309
valueAsString =
"Divide — b/f"
;
310
break
;
311
case
VuoBlendMode_Hue
:
312
valueAsString =
"Hue"
;
313
break
;
314
case
VuoBlendMode_Saturation
:
315
valueAsString =
"Saturation"
;
316
break
;
317
case
VuoBlendMode_Color
:
318
valueAsString =
"Color"
;
319
break
;
320
case
VuoBlendMode_Luminosity
:
321
valueAsString =
"Luminosity"
;
322
break
;
323
case
VuoBlendMode_Power
:
324
valueAsString =
"Power — b^f"
;
325
break
;
326
}
327
return
strdup(valueAsString);
328
}
Generated on Wed Feb 26 2020 23:19:44 for Vuo by
1.8.17