14 basic_def(double,Frame_mean);
15 basic_def(double,Frame_std_dev);
16 basic_def(double,Frame_cx);
17 basic_def(double,Frame_cy);
18 basic_def(double,Frame_moment);
19 varray_def(unsigned char,Frame_data);
23 basic_ref(double,Frame_mean);
24 basic_ref(double,Frame_std_dev);
25 basic_ref(double,Frame_cx);
26 basic_ref(double,Frame_cy);
27 basic_ref(double,Frame_moment);
28 varray_ref(unsigned char,Frame_data);
30 class ikey_Frame_weight : public Db::iKey { public:
31 Video_frameObj::t_Frame_mean v_Frame_mean;
33 static int cmpr(char *a, char *b);
34 ikey_Frame_weight(ObjectLoc &loc,
35 double Frame_mean, int id=-1)
36 : iKey("Frame_weight",loc,cmpr),
37 v_Frame_mean(Frame_mean),
40 class rkey_Frame_weight : public Db::rKey { public:
41 static int cmpr(char *a, char *b);
42 rkey_Frame_weight(ObjectLoc &loc) : rKey("Frame_weight",loc,cmpr) {}
45 class ikey_Frame_center : public Db::iKey { public:
46 Video_frameObj::t_Frame_moment v_Frame_moment;
48 static int cmpr(char *a, char *b);
49 ikey_Frame_center(ObjectLoc &loc,
50 double Frame_moment, int id=-1)
51 : iKey("Frame_center",loc,cmpr),
52 v_Frame_moment(Frame_moment),
55 class rkey_Frame_center : public Db::rKey { public:
56 static int cmpr(char *a, char *b);
57 rkey_Frame_center(ObjectLoc &loc) : rKey("Frame_center",loc,cmpr) {}
67 basic_def(unsigned int,Clip_id);
68 basic_def(unsigned int,Sequence_no);
69 basic_def(unsigned int,Frame_id);
70 basic_def(unsigned int,Group);
71 basic_def(double,Time_offset);
75 basic_ref(unsigned int,Clip_id);
76 basic_ref(unsigned int,Sequence_no);
77 basic_ref(unsigned int,Frame_id);
78 basic_ref(unsigned int,Group);
79 basic_ref(double,Time_offset);
81 class ikey_Timelines : public Db::iKey { public:
82 TimelineObj::t_Frame_id v_Frame_id;
84 static int cmpr(char *a, char *b);
85 ikey_Timelines(ObjectLoc &loc,
86 unsigned int Frame_id, int id=-1)
87 : iKey("Timelines",loc,cmpr),
91 class rkey_Timelines : public Db::rKey { public:
92 static int cmpr(char *a, char *b);
93 rkey_Timelines(ObjectLoc &loc) : rKey("Timelines",loc,cmpr) {}
96 class ikey_Sequences : public Db::iKey { public:
97 TimelineObj::t_Clip_id v_Clip_id;
98 TimelineObj::t_Sequence_no v_Sequence_no;
99 static int cmpr(char *a, char *b);
100 ikey_Sequences(ObjectLoc &loc,
101 unsigned int Clip_id,
102 unsigned int Sequence_no)
103 : iKey("Sequences",loc,cmpr),
105 v_Sequence_no(Sequence_no) {}
107 class rkey_Sequences : public Db::rKey { public:
108 static int cmpr(char *a, char *b);
109 rkey_Sequences(ObjectLoc &loc) : rKey("Sequences",loc,cmpr) {}
119 sarray_def(char,Title);
120 sarray_def(char,Asset_path);
121 basic_def(double,Position);
122 basic_def(double,Framerate);
123 basic_def(double,Average_weight);
124 basic_def(unsigned int,Frames);
125 basic_def(unsigned int,Prefix_size);
126 basic_def(unsigned int,Suffix_size);
127 varray_def(unsigned char,Weights);
128 basic_def(long,System_time);
129 basic_def(long,Creation_time);
133 sarray_ref(char,Title);
134 sarray_ref(char,Asset_path);
135 basic_ref(double,Position);
136 basic_ref(double,Framerate);
137 basic_ref(double,Average_weight);
138 basic_ref(unsigned int,Frames);
139 basic_ref(unsigned int,Prefix_size);
140 basic_ref(unsigned int,Suffix_size);
141 varray_ref(unsigned char,Weights);
142 basic_ref(long,System_time);
143 basic_ref(long,Creation_time);
145 class ikey_Clip_title : public Db::iKey { public:
146 Clip_setObj::t_Title v_Title;
148 static int cmpr(char *a, char *b);
149 ikey_Clip_title(ObjectLoc &loc,
150 const Clip_setObj::t_Title &Title, int id=-1)
151 : iKey("Clip_title",loc,cmpr),
155 class rkey_Clip_title : public Db::rKey { public:
156 static int cmpr(char *a, char *b);
157 rkey_Clip_title(ObjectLoc &loc) : rKey("Clip_title",loc,cmpr) {}
160 class ikey_Clip_system_time : public Db::iKey { public:
161 Clip_setObj::t_System_time v_System_time;
163 static int cmpr(char *a, char *b);
164 ikey_Clip_system_time(ObjectLoc &loc,
165 long System_time, int id=-1)
166 : iKey("Clip_system_time",loc,cmpr),
167 v_System_time(System_time),
170 class rkey_Clip_system_time : public Db::rKey { public:
171 static int cmpr(char *a, char *b);
172 rkey_Clip_system_time(ObjectLoc &loc) : rKey("Clip_system_time",loc,cmpr) {}
175 class ikey_Clip_creation_time : public Db::iKey { public:
176 Clip_setObj::t_Creation_time v_Creation_time;
178 static int cmpr(char *a, char *b);
179 ikey_Clip_creation_time(ObjectLoc &loc,
180 long Creation_time, int id=-1)
181 : iKey("Clip_creation_time",loc,cmpr),
182 v_Creation_time(Creation_time),
185 class rkey_Clip_creation_time : public Db::rKey { public:
186 static int cmpr(char *a, char *b);
187 rkey_Clip_creation_time(ObjectLoc &loc) : rKey("Clip_creation_time",loc,cmpr) {}
190 class ikey_Clip_path_pos : public Db::iKey { public:
191 Clip_setObj::t_Asset_path v_Asset_path;
192 Clip_setObj::t_Position v_Position;
194 static int cmpr(char *a, char *b);
195 ikey_Clip_path_pos(ObjectLoc &loc,
196 const Clip_setObj::t_Asset_path &Asset_path,
197 double Position, int id=-1)
198 : iKey("Clip_path_pos",loc,cmpr),
199 v_Asset_path(Asset_path),
200 v_Position(Position),
203 class rkey_Clip_path_pos : public Db::rKey { public:
204 static int cmpr(char *a, char *b);
205 rkey_Clip_path_pos(ObjectLoc &loc) : rKey("Clip_path_pos",loc,cmpr) {}
215 basic_def(unsigned int,Access_clip_id);
216 basic_def(long,Access_time);
217 basic_def(unsigned int,Access_count);
221 basic_ref(unsigned int,Access_clip_id);
222 basic_ref(long,Access_time);
223 basic_ref(unsigned int,Access_count);
225 class ikey_Clip_access : public Db::iKey { public:
226 Clip_viewsObj::t_Access_clip_id v_Access_clip_id;
227 static int cmpr(char *a, char *b);
228 ikey_Clip_access(ObjectLoc &loc,
229 unsigned int Access_clip_id)
230 : iKey("Clip_access",loc,cmpr),
231 v_Access_clip_id(Access_clip_id) {}
233 class rkey_Clip_access : public Db::rKey { public:
234 static int cmpr(char *a, char *b);
235 rkey_Clip_access(ObjectLoc &loc) : rKey("Clip_access",loc,cmpr) {}
238 class ikey_Last_view : public Db::iKey { public:
239 Clip_viewsObj::t_Access_time v_Access_time;
241 static int cmpr(char *a, char *b);
242 ikey_Last_view(ObjectLoc &loc,
243 long Access_time, int id=-1)
244 : iKey("Last_view",loc,cmpr),
245 v_Access_time(Access_time),
248 class rkey_Last_view : public Db::rKey { public:
249 static int cmpr(char *a, char *b);
250 rkey_Last_view(ObjectLoc &loc) : rKey("Last_view",loc,cmpr) {}
253 class ikey_Total_views : public Db::iKey { public:
254 Clip_viewsObj::t_Access_count v_Access_count;
255 Clip_viewsObj::t_Access_clip_id v_Access_clip_id;
257 static int cmpr(char *a, char *b);
258 ikey_Total_views(ObjectLoc &loc,
259 unsigned int Access_count,
260 unsigned int Access_clip_id, int id=-1)
261 : iKey("Total_views",loc,cmpr),
262 v_Access_count(Access_count),
263 v_Access_clip_id(Access_clip_id),
266 class rkey_Total_views : public Db::rKey { public:
267 static int cmpr(char *a, char *b);
268 rkey_Total_views(ObjectLoc &loc) : rKey("Total_views",loc,cmpr) {}
278 class theDb : public Db {
279 int dfd, dkey, no_atime;
285 Entity Video_frame; Video_frameLoc video_frame;
286 Entity Timeline; TimelineLoc timeline;
287 Entity Clip_set; Clip_setLoc clip_set;
288 Entity Clip_views; Clip_viewsLoc clip_views;
290 int create(const char *dfn);
291 int open(const char *dfn, int key=-1);
292 int access(const char *dfn, int key=-1, int rw=0);
294 int attach(int rw=0) { return Db::attach(rw); }
295 int detach() { return Db::detach(); }
298 ~theDb() { finit(objects); }