Vuo  2.0.0
VuoFileType.c
Go to the documentation of this file.
1 
10 #include <string.h>
11 #include "type.h"
12 #include "VuoFileFormat.h"
13 #include "VuoFileType.h"
14 #include "VuoList_VuoFileType.h"
15 
17 #ifdef VUO_COMPILER
19  "title" : "File Type",
20  "description" : "The type of information in a file.",
21  "keywords" : [ ],
22  "version" : "1.0.0",
23  "dependencies" : [
24  "VuoList_VuoFileType"
25  ]
26  });
27 #endif
28 
35 {
36  const char *valueAsString = "";
37  if (json_object_get_type(js) == json_type_string)
38  valueAsString = json_object_get_string(js);
39 
40  if (strcmp(valueAsString, "any") == 0)
41  return VuoFileType_AnyFile;
42  else if (strcmp(valueAsString, "audio") == 0)
43  return VuoFileType_Audio;
44  else if (strcmp(valueAsString, "image") == 0)
45  return VuoFileType_Image;
46  else if (strcmp(valueAsString, "mesh") == 0)
47  return VuoFileType_Mesh;
48  else if (strcmp(valueAsString, "movie") == 0)
49  return VuoFileType_Movie;
50  else if (strcmp(valueAsString, "scene") == 0)
51  return VuoFileType_Scene;
52  else if (strcmp(valueAsString, "feed") == 0)
53  return VuoFileType_Feed;
54  else if (strcmp(valueAsString, "folder") == 0)
55  return VuoFileType_Folder;
56 
57  return VuoFileType_AnyFile;
58 }
59 
65 {
66  char *valueAsString = "any";
67 
68  if (value == VuoFileType_Audio)
69  valueAsString = "audio";
70  else if (value == VuoFileType_Image)
71  valueAsString = "image";
72  else if (value == VuoFileType_Mesh)
73  valueAsString = "mesh";
74  else if (value == VuoFileType_Movie)
75  valueAsString = "movie";
76  else if (value == VuoFileType_Scene)
77  valueAsString = "scene";
78  else if (value == VuoFileType_Feed)
79  valueAsString = "feed";
80  else if (value == VuoFileType_Folder)
81  valueAsString = "folder";
82 
83  return json_object_new_string(valueAsString);
84 }
85 
90 {
92  VuoListAppendValue_VuoFileType(l, VuoFileType_AnyFile);
93  VuoListAppendValue_VuoFileType(l, VuoFileType_Audio);
94  VuoListAppendValue_VuoFileType(l, VuoFileType_Image);
95  VuoListAppendValue_VuoFileType(l, VuoFileType_Mesh);
96  VuoListAppendValue_VuoFileType(l, VuoFileType_Movie);
97  VuoListAppendValue_VuoFileType(l, VuoFileType_Scene);
98  VuoListAppendValue_VuoFileType(l, VuoFileType_Feed);
99  VuoListAppendValue_VuoFileType(l, VuoFileType_Folder);
100  return l;
101 }
102 
108 {
109  char *valueAsString = "Any File";
110 
111  if (value == VuoFileType_Audio)
112  valueAsString = "Audio";
113  else if (value == VuoFileType_Image)
114  valueAsString = "Image";
115  else if (value == VuoFileType_Mesh)
116  valueAsString = "Projection Mesh";
117  else if (value == VuoFileType_Movie)
118  valueAsString = "Movie";
119  else if (value == VuoFileType_Scene)
120  valueAsString = "Scene";
121  else if (value == VuoFileType_Feed)
122  valueAsString = "Feed";
123  else if (value == VuoFileType_Folder)
124  valueAsString = "Folder";
125 
126  return strdup(valueAsString);
127 }
128 
133 bool VuoFileType_isFileOfType(const VuoText path, VuoFileType fileType)
134 {
135  if (fileType == VuoFileType_AnyFile)
136  return true;
137  else if (fileType == VuoFileType_Audio)
139  else if (fileType == VuoFileType_Image)
141  else if (fileType == VuoFileType_Mesh)
143  else if (fileType == VuoFileType_Movie)
145  else if (fileType == VuoFileType_Scene)
147  else if (fileType == VuoFileType_Feed)
149 
150  return false;
151 }