00001 /* libIntegra multimedia module definition interface 00002 * 00003 * Copyright (C) 2007 Jamie Bullock, Henrik Frisk 00004 * 00005 * This program is free software; you can redistribute it and/or modify 00006 * it under the terms of the GNU General Public License as published by 00007 * the Free Software Foundation; either version 2 of the License, or 00008 * (at your option) any later version. 00009 * 00010 * This program is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 * GNU General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU General Public License 00016 * along with this program; if not, write to the Free Software 00017 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, 00018 _resolve * USA. 00019 */ 00020 00021 00022 /* THIS FILE WAS GENERATED AUTOMATICALLY BY introspect.py AT 2009-11-26 22:11. 00023 ANY CHANGES WILL BE OVERWRITTEN */ 00024 00025 #ifndef NTG_CORE_SCHEMA_H 00026 #define NTG_CORE_SCHEMA_H 00027 00028 #ifdef __cplusplus 00029 extern "C" { 00030 #endif 00031 00032 #include <time.h> 00033 extern int schema_version_major; 00034 extern int schema_version_minor; 00035 00036 #include <stdbool.h> 00037 typedef struct _ntg_license ntg_license; 00038 typedef struct _ntg_default_value ntg_default_value; 00039 typedef struct _ntg_attribute ntg_attribute; 00040 typedef struct _ntg_module_attribute ntg_module_attribute; 00041 typedef struct _ntg_permission ntg_permission; 00042 typedef struct _ntg_user ntg_user; 00043 typedef struct _ntg_software ntg_software; 00044 typedef struct _ntg_definition ntg_definition; 00045 typedef struct _ntg_group_permission ntg_group_permission; 00046 typedef struct _ntg_group ntg_group; 00047 typedef struct _ntg_legal_value ntg_legal_value; 00048 typedef struct _ntg_attribute_unit ntg_attribute_unit; 00049 typedef struct _ntg_control_attribute ntg_control_attribute; 00050 typedef struct _ntg_attribute_scale ntg_attribute_scale; 00051 typedef struct _ntg_user_group ntg_user_group; 00052 typedef struct _ntg_implementation_dependency ntg_implementation_dependency; 00053 typedef struct _ntg_attribute_type ntg_attribute_type; 00054 typedef struct _ntg_tag ntg_tag; 00055 typedef struct _ntg_value_label ntg_value_label; 00056 typedef struct _ntg_attribute_scope ntg_attribute_scope; 00057 typedef struct _ntg_database ntg_database; 00058 typedef struct _ntg_target ntg_target; 00059 typedef struct _ntg_control_class ntg_control_class; 00060 typedef struct _ntg_definition_tag ntg_definition_tag; 00061 typedef struct _ntg_uri ntg_uri; 00062 typedef struct _ntg_implementation ntg_implementation; 00063 00064 00065 struct _ntg_license { 00066 int id; 00067 char *name; 00068 char *text; 00069 }; 00070 00071 struct _ntg_default_value { 00072 int id; 00073 int integer_; 00074 float float_; 00075 char *string_; 00076 char *blob_; 00077 }; 00078 00079 struct _ntg_attribute { 00080 int id; 00081 char *name; 00082 char *description; 00083 int id_definition; 00084 int id_scope; 00085 int id_type; 00086 int id_module_attribute; 00087 }; 00088 00089 struct _ntg_module_attribute { 00090 int id; 00091 float minimum; 00092 float maximum; 00093 bool undoable; 00094 int id_default_value; 00095 int id_unit; 00096 int id_control_attribute; 00097 char *control_group; 00098 int id_scale; 00099 }; 00100 00101 struct _ntg_permission { 00102 int id; 00103 char *permission_name; 00104 char *description; 00105 }; 00106 00107 struct _ntg_user { 00108 int id; 00109 char *user_name; 00110 char *first_name; 00111 char *last_name; 00112 char *email_address; 00113 char *password; 00114 struct timeval * last_login; 00115 struct timeval * created; 00116 }; 00117 00118 struct _ntg_software { 00119 int id; 00120 char *name; 00121 char *description; 00122 }; 00123 00124 struct _ntg_definition { 00125 int id; 00126 char *name; 00127 char *label; 00128 bool instantiable; 00129 bool core; 00130 bool system; 00131 char *description; 00132 int id_parent; 00133 int id_documentation; 00134 int id_updated_by; 00135 int absolute_version; 00136 struct timeval * updated_date; 00137 int schema_version_major; 00138 int schema_version_minor; 00139 }; 00140 00141 struct _ntg_group_permission { 00142 int id_group; 00143 int id_permission; 00144 }; 00145 00146 struct _ntg_group { 00147 int id; 00148 char *group_name; 00149 char *display_name; 00150 struct timeval * created; 00151 }; 00152 00153 struct _ntg_legal_value { 00154 int id; 00155 int id_module_attribute; 00156 int integer_; 00157 float float_; 00158 char *string_; 00159 char *blob_; 00160 }; 00161 00162 struct _ntg_attribute_unit { 00163 int id; 00164 char *name; 00165 char *description; 00166 }; 00167 00168 struct _ntg_control_attribute { 00169 int id; 00170 char *name; 00171 int id_control_class; 00172 }; 00173 00174 struct _ntg_attribute_scale { 00175 int id; 00176 char *name; 00177 char *description; 00178 }; 00179 00180 struct _ntg_user_group { 00181 int id_user; 00182 int id_group; 00183 }; 00184 00185 struct _ntg_implementation_dependency { 00186 int id; 00187 int id_implementation; 00188 int id_dependency; 00189 char *description; 00190 }; 00191 00192 struct _ntg_attribute_type { 00193 int id; 00194 char *name; 00195 char *description; 00196 }; 00197 00198 struct _ntg_tag { 00199 int id; 00200 char *name; 00201 }; 00202 00203 struct _ntg_value_label { 00204 int id_module_attribute; 00205 int id_value; 00206 char *label; 00207 }; 00208 00209 struct _ntg_attribute_scope { 00210 int id; 00211 char *name; 00212 char *description; 00213 }; 00214 00215 struct _ntg_database { 00216 int schema_version_major; 00217 int schema_version_minor; 00218 char *maintainer_name; 00219 char *maintainer_email; 00220 }; 00221 00222 struct _ntg_target { 00223 int id; 00224 int id_software; 00225 char *version; 00226 }; 00227 00228 struct _ntg_control_class { 00229 int id; 00230 char *name; 00231 char *description; 00232 }; 00233 00234 struct _ntg_definition_tag { 00235 int id_definition; 00236 int id_tag; 00237 }; 00238 00239 struct _ntg_uri { 00240 int id; 00241 char *href; 00242 char *xlink_role; 00243 char *title; 00244 char *description; 00245 }; 00246 00247 struct _ntg_implementation { 00248 int id; 00249 char *source_code; 00250 char *generated_file_name; 00251 char *build_script; 00252 char *description; 00253 struct timeval * updated_date; 00254 int id_target; 00255 int id_license; 00256 int id_definition; 00257 }; 00258 00259 00260 #ifdef __cplusplus 00261 } 00262 #endif 00263 00264 #endif 00265