1#[repr(C)]
2#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
3pub struct __BindgenBitfieldUnit<Storage> {
4 storage: Storage,
5}
6impl<Storage> __BindgenBitfieldUnit<Storage> {
7 #[inline]
8 pub const fn new(storage: Storage) -> Self {
9 Self { storage }
10 }
11}
12impl<Storage> __BindgenBitfieldUnit<Storage>
13where
14 Storage: AsRef<[u8]> + AsMut<[u8]>,
15{
16 #[inline]
17 pub fn get_bit(&self, index: usize) -> bool {
18 debug_assert!(index / 8 < self.storage.as_ref().len());
19 let byte_index = index / 8;
20 let byte = self.storage.as_ref()[byte_index];
21 let bit_index = if cfg!(target_endian = "big") {
22 7 - (index % 8)
23 } else {
24 index % 8
25 };
26 let mask = 1 << bit_index;
27 byte & mask == mask
28 }
29 #[inline]
30 pub fn set_bit(&mut self, index: usize, val: bool) {
31 debug_assert!(index / 8 < self.storage.as_ref().len());
32 let byte_index = index / 8;
33 let byte = &mut self.storage.as_mut()[byte_index];
34 let bit_index = if cfg!(target_endian = "big") {
35 7 - (index % 8)
36 } else {
37 index % 8
38 };
39 let mask = 1 << bit_index;
40 if val {
41 *byte |= mask;
42 } else {
43 *byte &= !mask;
44 }
45 }
46 #[inline]
47 pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
48 debug_assert!(bit_width <= 64);
49 debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
50 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
51 let mut val = 0;
52 for i in 0..(bit_width as usize) {
53 if self.get_bit(i + bit_offset) {
54 let index = if cfg!(target_endian = "big") {
55 bit_width as usize - 1 - i
56 } else {
57 i
58 };
59 val |= 1 << index;
60 }
61 }
62 val
63 }
64 #[inline]
65 pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
66 debug_assert!(bit_width <= 64);
67 debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
68 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
69 for i in 0..(bit_width as usize) {
70 let mask = 1 << i;
71 let val_bit_is_set = val & mask == mask;
72 let index = if cfg!(target_endian = "big") {
73 bit_width as usize - 1 - i
74 } else {
75 i
76 };
77 self.set_bit(index + bit_offset, val_bit_is_set);
78 }
79 }
80}
81pub const __SAL_H_VERSION: u32 = 180000000;
82pub const __bool_true_false_are_defined: u32 = 1;
83pub const TM_ASSET_BROWSER_TAB_VT_NAME: &'static [u8; 21usize] = b"tm_asset_browser_tab\0";
84pub const TM_CACHE_MANAGER_TAB_VT_NAME: &'static [u8; 21usize] = b"tm_cache_manager_tab\0";
85pub const TM_CANVAS_TAB_VT_NAME: &'static [u8; 14usize] = b"tm_canvas_tab\0";
86pub const TM_COLLABORATION_TAB_VT_NAME: &'static [u8; 21usize] = b"tm_collaboration_tab\0";
87pub const TM_CONSOLE_TAB_VT_NAME: &'static [u8; 15usize] = b"tm_console_tab\0";
88pub const TM_DELAUNAY_TAB_VT_NAME: &'static [u8; 16usize] = b"tm_delaunay_tab\0";
89pub const TM_DOWNLOAD_VT_NAME: &'static [u8; 16usize] = b"tm_download_tab\0";
90pub const TM_WELCOME_VT_NAME: &'static [u8; 15usize] = b"tm_welcome_tab\0";
91pub const TM_TT_TYPE__APPLICATION_SETTINGS__UPDATES: &'static [u8; 33usize] =
92 b"tm_application_settings__updates\0";
93pub const TM_TT_TYPE__APPLICATION_SETTINGS__DOWNLOAD: &'static [u8; 34usize] =
94 b"tm_application_settings__download\0";
95pub const TM_TREE_TAB_VT_NAME: &'static [u8; 12usize] = b"tm_tree_tab\0";
96pub const TM_GENERIC_TREE_VIEW_TAB_VT_NAME: &'static [u8; 17usize] = b"tm_tree_view_tab\0";
97pub const TM_GRAPH_TAB_VT_NAME: &'static [u8; 13usize] = b"tm_graph_tab\0";
98pub const TM_IMPORT_PROJECT_TAB_VT_NAME: &'static [u8; 22usize] = b"tm_import_project_tab\0";
99pub const TM_INPUT_LOG_TAB_VT_NAME: &'static [u8; 17usize] = b"tm_input_log_tab\0";
100pub const TM_JSON_TAB_VT_NAME: &'static [u8; 12usize] = b"tm_json_tab\0";
101pub const TM_LOGIN_TAB_VT_NAME: &'static [u8; 13usize] = b"tm_login_tab\0";
102pub const TM_MODIFIED_ASSETS_TAB_VT_NAME: &'static [u8; 23usize] = b"tm_modified_assets_tab\0";
103pub const TM_NETWORK_TAB_VT_NAME: &'static [u8; 15usize] = b"tm_network_tab\0";
104pub const TM_PREVIEW_TAB_VT_NAME: &'static [u8; 15usize] = b"tm_preview_tab\0";
105pub const TM_PROFILER_TAB_VT_NAME: &'static [u8; 16usize] = b"tm_profiler_tab\0";
106pub const TM_PROPERTIES_TAB_VT_NAME: &'static [u8; 18usize] = b"tm_properties_tab\0";
107pub const TM_SCENE_TAB_VT_NAME: &'static [u8; 13usize] = b"tm_scene_tab\0";
108pub const TM_TT_TYPE__SCENE_TAB: &'static [u8; 13usize] = b"tm_scene_tab\0";
109pub const TM_TT_TYPE__SCENE_TAB_SETTINGS: &'static [u8; 22usize] = b"tm_scene_tab_settings\0";
110pub const TM_TT_TYPE__SCENE_SETTINGS: &'static [u8; 18usize] = b"tm_scene_settings\0";
111pub const TM_SIMULATE_TAB_VT_NAME: &'static [u8; 16usize] = b"tm_simulate_tab\0";
112pub const TM_TT_TYPE__SIMULATE_TAB_SETTINGS: &'static [u8; 25usize] = b"tm_simulate_tab_settings\0";
113pub const TM_STATE_GRAPH_TAB_VT_NAME: &'static [u8; 19usize] = b"tm_state_graph_tab\0";
114pub const TM_STATISTICS_TAB_VT_NAME: &'static [u8; 18usize] = b"tm_statistics_tab\0";
115pub const TM_TASK_MANAGER_TAB_VT_NAME: &'static [u8; 20usize] = b"tm_task_manager_tab\0";
116pub const THE_MACHINERY_VERSION: &'static [u8; 7usize] = b"2021.9\0";
117pub const TM_TT_TYPE__APPLICATION_SETTINGS: &'static [u8; 24usize] = b"tm_application_settings\0";
118pub const TM_TT_TYPE__PROJECT_MANAGEMENT_SETTINGS: &'static [u8; 31usize] =
119 b"tm_project_management_settings\0";
120pub const TM_TT_TYPE__INTERFACE_SETTINGS: &'static [u8; 22usize] = b"tm_interface_settings\0";
121pub const TM_TT_TYPE__WINDOW_LAYOUTS: &'static [u8; 18usize] = b"tm_window_layouts\0";
122pub const TM_TT_TYPE__WINDOW_LAYOUT: &'static [u8; 17usize] = b"tm_window_layout\0";
123pub const TM_TT_TYPE__WORKSPACE: &'static [u8; 13usize] = b"tm_workspace\0";
124pub const TM_TT_TYPE__RECENT_FILE: &'static [u8; 15usize] = b"tm_recent_file\0";
125pub const TM_TT_TYPE__PUBLISH_SETTINGS: &'static [u8; 20usize] = b"tm_publish_settings\0";
126pub const TM_TT_TYPE__APPLICATION_SECURITY: &'static [u8; 24usize] = b"tm_application_security\0";
127pub const TM_TT_TYPE__PROJECT_SETTINGS: &'static [u8; 20usize] = b"tm_project_settings\0";
128pub const TM_TT_TYPE__NETWORK_SETTINGS: &'static [u8; 20usize] = b"tm_network_settings\0";
129pub const TM_TT_TYPE__LOCALIZATION_SETTINGS: &'static [u8; 25usize] = b"tm_localization_settings\0";
130pub const TM_TT_TYPE__TRANSLATION: &'static [u8; 15usize] = b"tm_translation\0";
131pub const TM_TT_TYPE__TRANSLATION_CACHE: &'static [u8; 21usize] = b"tm_translation_cache\0";
132extern "C" {
133 pub fn __va_start(arg1: *mut *mut ::std::os::raw::c_char, ...);
134}
135pub type __vcrt_bool = bool;
136extern "C" {
137 pub fn __security_init_cookie();
138}
139extern "C" {
140 pub fn __security_check_cookie(_StackCookie: usize);
141}
142extern "C" {
143 pub fn __report_gsfailure(_StackCookie: usize);
144}
145extern "C" {
146 pub static mut __security_cookie: usize;
147}
148#[repr(C)]
149#[derive(Copy, Clone)]
150pub union TtIdTBindgenTy1 {
151 pub u64_: u64,
152 pub __bindgen_anon_1: TtIdTBindgenTy1BindgenTy1,
153}
154#[repr(C)]
155#[repr(align(8))]
156#[derive(Default, Copy, Clone)]
157pub struct TtIdTBindgenTy1BindgenTy1 {
158 pub _bitfield_align_1: [u32; 0],
159 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize]>,
160}
161impl TtIdTBindgenTy1BindgenTy1 {
162 #[inline]
163 pub fn type_(&self) -> u64 {
164 unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 10u8) as u64) }
165 }
166 #[inline]
167 pub fn set_type(&mut self, val: u64) {
168 unsafe {
169 let val: u64 = ::std::mem::transmute(val);
170 self._bitfield_1.set(0usize, 10u8, val as u64)
171 }
172 }
173 #[inline]
174 pub fn generation(&self) -> u64 {
175 unsafe { ::std::mem::transmute(self._bitfield_1.get(10usize, 22u8) as u64) }
176 }
177 #[inline]
178 pub fn set_generation(&mut self, val: u64) {
179 unsafe {
180 let val: u64 = ::std::mem::transmute(val);
181 self._bitfield_1.set(10usize, 22u8, val as u64)
182 }
183 }
184 #[inline]
185 pub fn index(&self) -> u64 {
186 unsafe { ::std::mem::transmute(self._bitfield_1.get(32usize, 32u8) as u64) }
187 }
188 #[inline]
189 pub fn set_index(&mut self, val: u64) {
190 unsafe {
191 let val: u64 = ::std::mem::transmute(val);
192 self._bitfield_1.set(32usize, 32u8, val as u64)
193 }
194 }
195 #[inline]
196 pub fn new_bitfield_1(
197 type_: u64,
198 generation: u64,
199 index: u64,
200 ) -> __BindgenBitfieldUnit<[u8; 8usize]> {
201 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize]> = Default::default();
202 __bindgen_bitfield_unit.set(0usize, 10u8, {
203 let type_: u64 = unsafe { ::std::mem::transmute(type_) };
204 type_ as u64
205 });
206 __bindgen_bitfield_unit.set(10usize, 22u8, {
207 let generation: u64 = unsafe { ::std::mem::transmute(generation) };
208 generation as u64
209 });
210 __bindgen_bitfield_unit.set(32usize, 32u8, {
211 let index: u64 = unsafe { ::std::mem::transmute(index) };
212 index as u64
213 });
214 __bindgen_bitfield_unit
215 }
216}
217impl Default for TtIdTBindgenTy1 {
218 fn default() -> Self {
219 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
220 unsafe {
221 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
222 s.assume_init()
223 }
224 }
225}
226pub const TM_TT_PROP__DOCKING_SETTINGS__TOOLBARS_SETTINGS: ::std::os::raw::c_int = 0;
227pub type _bindgen_ty_1 = ::std::os::raw::c_int;
228#[repr(C)]
229#[derive(Default, Copy, Clone)]
230pub struct AssetBrowserTabApi {
231 pub find_asset_browser: ::std::option::Option<unsafe extern "C" fn(ui: *mut UiO) -> TtIdT>,
232 pub selected_object: ::std::option::Option<
233 unsafe extern "C" fn(tt: *mut TheTruthO, asset_browser: TtIdT) -> TtIdT,
234 >,
235 pub set_selection: ::std::option::Option<
236 unsafe extern "C" fn(
237 ui: *mut UiO,
238 asset_or_dirs: *const TtIdT,
239 n: u32,
240 undo_scope: TtUndoScopeT,
241 ) -> bool,
242 >,
243}
244extern "C" {
245 pub static mut console_logger: *mut LoggerI;
246}
247#[repr(C)]
248#[derive(Default, Copy, Clone)]
249pub struct UpdateTrackerApi {
250 pub init: ::std::option::Option<unsafe extern "C" fn(allocator: *mut AllocatorI)>,
251 pub should_show_update_notification:
252 ::std::option::Option<unsafe extern "C" fn(app: *mut ApplicationO) -> bool>,
253 pub shutdown: ::std::option::Option<unsafe extern "C" fn()>,
254}
255pub const TM_TT_PROP__APPLICATION_SETTINGS__UPDATES__LATEST_VERSION: ::std::os::raw::c_int = 0;
256pub const TM_TT_PROP__APPLICATION_SETTINGS__UPDATES__SKIP_THIS_VERSION: ::std::os::raw::c_int = 1;
257pub type _bindgen_ty_2 = ::std::os::raw::c_int;
258pub const TM_TT_PROP__APPLICATION_SETTINGS__DOWNLOAD__URL: ::std::os::raw::c_int = 0;
259pub const TM_TT_PROP__APPLICAITON_SETTINGS__DOWNLOAD__FILE: ::std::os::raw::c_int = 1;
260pub const TM_TT_PROP__APPLICAITON_SETTINGS__DOWNLOAD__UNZIP_DIRECTORY: ::std::os::raw::c_int = 2;
261pub type _bindgen_ty_3 = ::std::os::raw::c_int;
262extern "C" {
263 pub static mut tm_update_tracker_api: *mut UpdateTrackerApi;
264}
265extern "C" {
266 pub fn import_gltf_asset(
267 gltf_file: *const ::std::os::raw::c_char,
268 target_dir: TtIdT,
269 a: *mut AllocatorI,
270 tt: *mut TheTruthO,
271 reimport_into: TtIdT,
272 ui: *mut UiO,
273 undo_scope: TtUndoScopeT,
274 ) -> u64;
275}
276extern "C" {
277 pub static mut gltf_asset_io: *mut AssetIoI;
278}
279extern "C" {
280 pub fn import_tab__import_project(tab: *mut TabO, file: *const ::std::os::raw::c_char);
281}
282#[repr(C)]
283#[derive(Default, Copy, Clone)]
284pub struct IntegrationTestRunnerApi {
285 pub create: ::std::option::Option<
286 unsafe extern "C" fn(
287 app: *mut ApplicationO,
288 allocator: *mut AllocatorI,
289 context: StrhashT,
290 ) -> *mut IntegrationTestRunnerO,
291 >,
292 pub add_test: ::std::option::Option<
293 unsafe extern "C" fn(
294 runner: *mut IntegrationTestRunnerO,
295 name: *const ::std::os::raw::c_char,
296 ) -> bool,
297 >,
298 pub tick: ::std::option::Option<unsafe extern "C" fn(runner: *mut IntegrationTestRunnerO)>,
299 pub destroy: ::std::option::Option<unsafe extern "C" fn(runner: *mut IntegrationTestRunnerO)>,
300}
301extern "C" {
302 pub static mut tm_integration_test_runner_api: *mut IntegrationTestRunnerApi;
303}
304pub const TM_LOGIN__TAB_ACTION__NONE: LoginTabAction = 0;
305pub const TM_LOGIN__TAB_ACTION__SHOW: LoginTabAction = 1;
306pub const TM_LOGIN__TAB_ACTION__FULLSCREEN: LoginTabAction = 2;
307pub const TM_LOGIN__TAB_ACTION__HIDE: LoginTabAction = 3;
308pub const TM_LOGIN__TAB_ACTION__QUIT: LoginTabAction = 4;
309pub type LoginTabAction = ::std::os::raw::c_int;
310#[repr(C)]
311#[derive(Default, Copy, Clone)]
312pub struct LoginUpdateT {
313 pub show_login_tab: bool,
314 pub force_focus_login_tab: bool,
315}
316#[repr(C)]
317#[derive(Default, Copy, Clone)]
318pub struct LoginApi {
319 pub init: ::std::option::Option<unsafe extern "C" fn(allocator: *mut AllocatorI)>,
320 pub update: ::std::option::Option<unsafe extern "C" fn() -> LoginTabAction>,
321 pub shutdown: ::std::option::Option<unsafe extern "C" fn()>,
322}
323extern "C" {
324 pub static mut tm_login_api: *mut LoginApi;
325}
326extern "C" {
327 pub fn menu__new_plugin__editor_tab();
328}
329extern "C" {
330 pub fn menu__new_plugin__entity_component();
331}
332extern "C" {
333 pub fn menu__new_plugin__simulation_entry();
334}
335extern "C" {
336 pub fn menu__new_plugin__minimal();
337}
338extern "C" {
339 pub fn load_plugin_templates(reg: *mut ApiRegistryApi, load: bool);
340}
341extern "C" {
342 pub fn profiler_view(tab: *mut TabO) -> *mut ProfilerViewO;
343}
344extern "C" {
345 pub fn properties_tab_set_root_with_mask(
346 tab: *mut TabO,
347 tt: *mut TheTruthO,
348 root: TtIdT,
349 mask: u64,
350 );
351}
352#[repr(C)]
353#[derive(Copy, Clone)]
354pub union EntityT {
355 pub __bindgen_anon_1: EntityTBindgenTy1,
356 pub u64_: u64,
357}
358#[repr(C)]
359#[derive(Default, Copy, Clone)]
360pub struct EntityTBindgenTy1 {
361 pub index: u32,
362 pub generation: u32,
363}
364impl Default for EntityT {
365 fn default() -> Self {
366 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
367 unsafe {
368 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
369 s.assume_init()
370 }
371 }
372}
373pub const TM_TT_PROP__SCENE_TAB__ASSET: ::std::os::raw::c_int = 0;
374pub const TM_TT_PROP__SCENE_TAB__PIN_ASSSET: ::std::os::raw::c_int = 1;
375pub const TM_TT_PROP__SCENE_TAB__SELECTION: ::std::os::raw::c_int = 2;
376pub const TM_TT_PROP__SCENE_TAB__LAST_SELECTED: ::std::os::raw::c_int = 3;
377pub const TM_TT_PROP__SCENE_TAB__PICK_COUNTER: ::std::os::raw::c_int = 4;
378pub const TM_TT_PROP__SCENE_TAB__FRAME_OBJECT: ::std::os::raw::c_int = 5;
379pub const TM_TT_PROP__SCENE_TAB__HIDDEN: ::std::os::raw::c_int = 6;
380pub const TM_TT_PROP__SCENE_TAB__TO_SHOW: ::std::os::raw::c_int = 7;
381pub const TM_TT_PROP__SCENE_TAB__LOCKED: ::std::os::raw::c_int = 8;
382pub const TM_TT_PROP__SCENE_TAB__UNLOCKED: ::std::os::raw::c_int = 9;
383pub type _bindgen_ty_4 = ::std::os::raw::c_int;
384pub const TM_TT_PROP__SCENE_TAB_SETTINGS__NATIVE_RESOLUTION: ::std::os::raw::c_int = 0;
385pub type _bindgen_ty_5 = ::std::os::raw::c_int;
386pub const TM_TT_PROP__SCENE_SETTINGS__ASSET_UUID_A: ::std::os::raw::c_int = 0;
387pub const TM_TT_PROP__SCENE_SETTINGS__USE_WORLD_AXES: ::std::os::raw::c_int = 1;
388pub const TM_TT_PROP__SCENE_SETTINGS__MULTI_SELECT_PIVOT: ::std::os::raw::c_int = 2;
389pub const TM_TT_PROP__SCENE_SETTINGS__MOVE_SNAP: ::std::os::raw::c_int = 3;
390pub const TM_TT_PROP__SCENE_SETTINGS__MOVE_SNAP_SIZE: ::std::os::raw::c_int = 4;
391pub const TM_TT_PROP__SCENE_SETTINGS__ROT_SNAP: ::std::os::raw::c_int = 5;
392pub const TM_TT_PROP__SCENE_SETTINGS__ROT_SNAP_ANGLE: ::std::os::raw::c_int = 6;
393pub const TM_TT_PROP__SCENE_SETTINGS__SCALE_ABSOLUTE_HANDLE: ::std::os::raw::c_int = 7;
394pub const TM_TT_PROP__SCENE_SETTINGS__SCALE_SNAP: ::std::os::raw::c_int = 8;
395pub const TM_TT_PROP__SCENE_SETTINGS__SCALE_SNAP_INCREMENT: ::std::os::raw::c_int = 9;
396pub type _bindgen_ty_6 = ::std::os::raw::c_int;
397#[repr(C)]
398pub struct scene_tab_entity_data_t {
399 pub entity_ctx: *mut EntityContextO,
400 pub camera_controller_manager: *mut CameraControllerComponentManagerO,
401 pub camera_controller_component: ComponentTypeT,
402 pub dcc_asset_component: ComponentTypeT,
403 pub camera: EntityT,
404 pub entity: EntityT,
405}
406impl Default for scene_tab_entity_data_t {
407 fn default() -> Self {
408 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
409 unsafe {
410 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
411 s.assume_init()
412 }
413 }
414}
415extern "C" {
416 pub fn scene_tab_entity_data(tab: *mut TabO) -> scene_tab_entity_data_t;
417}
418extern "C" {
419 pub fn scene_tab_truth_object(tab: *mut TabO) -> TtIdT;
420}
421pub const TM_TT_PROP__SIMULATE_TAB_SETTINGS__NATIVE_RESOLUTION: ::std::os::raw::c_int = 0;
422pub type _bindgen_ty_7 = ::std::os::raw::c_int;
423#[repr(C)]
424#[derive(Default, Copy, Clone)]
425pub struct SimulateTabSettingsT {
426 pub native_resolution: bool,
427}
428#[repr(C)]
429#[derive(Default, Copy, Clone)]
430pub struct SimulateTabApi {
431 pub update_settings: ::std::option::Option<
432 unsafe extern "C" fn(inst: *mut TabO, settings: *const SimulateTabSettingsT),
433 >,
434}
435#[repr(C)]
436#[derive(Default, Copy, Clone)]
437pub struct StatisticsTabApi {
438 pub add_source: ::std::option::Option<
439 unsafe extern "C" fn(
440 tab: *mut TabI,
441 name: *const ::std::os::raw::c_char,
442 source: *const ::std::os::raw::c_char,
443 color: ColorSrgbT,
444 ),
445 >,
446}
447#[repr(C)]
448#[derive(Copy, Clone)]
449pub struct TaskManagerO {
450 _unused: [u8; 0],
451}
452#[repr(C)]
453#[derive(Default, Copy, Clone)]
454pub struct TaskManagerApi {
455 pub create:
456 ::std::option::Option<unsafe extern "C" fn(alloc: *mut AllocatorI) -> *mut TaskManagerO>,
457 pub destroy: ::std::option::Option<unsafe extern "C" fn(inst: *mut TaskManagerO)>,
458 pub ui: ::std::option::Option<
459 unsafe extern "C" fn(
460 inst: *mut TaskManagerO,
461 ui: *mut UiO,
462 id: u64,
463 uistyle: *const UiStyleT,
464 r: RectT,
465 ),
466 >,
467}
468#[repr(C)]
469#[derive(Copy, Clone)]
470pub struct WindowO {
471 _unused: [u8; 0],
472}
473pub const TM_TT_PROP__APPLICATION_SETTINGS__ANALYTICS_CLIENT_ID: ::std::os::raw::c_int = 0;
474pub const TM_TT_PROP__APPLICATION_SETTINGS__ANALYTICS_OPT_OUT: ::std::os::raw::c_int = 1;
475pub const TM_TT_PROP__APPLICATION_SETTINGS__CAMERA_SETTINGS: ::std::os::raw::c_int = 2;
476pub const TM_TT_PROP__APPLICATION_SETTINGS__NETWORK_SETTINGS: ::std::os::raw::c_int = 3;
477pub const TM_TT_PROP__APPLICATION_SETTINGS__GRID_SETTINGS: ::std::os::raw::c_int = 4;
478pub const TM_TT_PROP__APPLICATION_SETTINGS__WINDOW_LAYOUTS: ::std::os::raw::c_int = 5;
479pub const TM_TT_PROP__APPLICATION_SETTINGS__RECENT_FILES: ::std::os::raw::c_int = 6;
480pub const TM_TT_PROP__APPLICATION_SETTINGS__INTERFACE_SETTINGS: ::std::os::raw::c_int = 7;
481pub const TM_TT_PROP__APPLICATION_SETTINGS__LOCALIZATION_SETTINGS: ::std::os::raw::c_int = 8;
482pub const TM_TT_PROP__APPLICATION_SETTINGS__KEYBOARD_SHORTCUTS: ::std::os::raw::c_int = 9;
483pub const TM_TT_PROP__APPLICATION_SETTINGS__UI_THEMES: ::std::os::raw::c_int = 10;
484pub const TM_TT_PROP__APPLICATION_SETTINGS__UI_THEME: ::std::os::raw::c_int = 11;
485pub const TM_TT_PROP__APPLICATION_SETTINGS__BUILTIN_UI_THEME: ::std::os::raw::c_int = 12;
486pub const TM_TT_PROP__APPLICATION_SETTINGS__PROJECTS_SETTINGS: ::std::os::raw::c_int = 13;
487pub const TM_TT_PROP__APPLICATION_SETTINGS__UPDATES: ::std::os::raw::c_int = 14;
488pub const TM_TT_PROP__APPLICATION_SETTINGS__DOWNLOADS: ::std::os::raw::c_int = 15;
489pub const TM_TT_PROP__APPLICATION_SETTINGS__LAST_OPENED_PROJECT: ::std::os::raw::c_int = 16;
490pub const TM_TT_PROP__APPLICATION_SETTINGS__DOCKING_SETTINGS: ::std::os::raw::c_int = 17;
491pub const TM_TT_PROP__APPLICATION_SETTINGS__PROJECT_MANAGEMENT: ::std::os::raw::c_int = 18;
492pub const TM_TT_PROP__APPLICATION_SETTINGS__SECURITY: ::std::os::raw::c_int = 19;
493pub type _bindgen_ty_8 = ::std::os::raw::c_int;
494pub const TM_TT_PROP__PROJECT_MANAGEMENT_SETTINGS__OPEN_EMPTY_PROJECT_ON_STARTUP:
495 ::std::os::raw::c_int = 0;
496pub const TM_TT_PROP__PROJECT_MANAGEMENT_SETTINGS__ALWAYS_OPEN_DEFAULT_PROJECT_WINDOW:
497 ::std::os::raw::c_int = 1;
498pub type _bindgen_ty_9 = ::std::os::raw::c_int;
499pub const TM_TT_PROP__INTERFACE_SETTINGS__RESOLUTION_SCALE: ::std::os::raw::c_int = 0;
500pub const TM_TT_PROP__INTERFACE_SETTINGS__WHEEL_SCROLL_LINES: ::std::os::raw::c_int = 1;
501pub type _bindgen_ty_10 = ::std::os::raw::c_int;
502pub const TM_TT_PROP__WINDOW_LAYOUTS__LAYOUTS: ::std::os::raw::c_int = 0;
503pub type _bindgen_ty_11 = ::std::os::raw::c_int;
504pub const TM_TT_PROP__WINDOW_LAYOUT__NAME: ::std::os::raw::c_int = 0;
505pub const TM_TT_PROP__WINDOW_LAYOUT__ICON: ::std::os::raw::c_int = 1;
506pub const TM_TT_PROP__WINDOW_LAYOUT__WINDOW_X: ::std::os::raw::c_int = 2;
507pub const TM_TT_PROP__WINDOW_LAYOUT__WINDOW_Y: ::std::os::raw::c_int = 3;
508pub const TM_TT_PROP__WINDOW_LAYOUT__WINDOW_WIDTH: ::std::os::raw::c_int = 4;
509pub const TM_TT_PROP__WINDOW_LAYOUT__WINDOW_HEIGHT: ::std::os::raw::c_int = 5;
510pub const TM_TT_PROP__WINDOW_LAYOUT__TABWELL: ::std::os::raw::c_int = 6;
511pub const TM_TT_PROP__WINDOW_LAYOUT__WORKSPACES: ::std::os::raw::c_int = 7;
512pub type _bindgen_ty_12 = ::std::os::raw::c_int;
513pub const TM_TT_PROP__WORKSPACE__NAME: ::std::os::raw::c_int = 0;
514pub const TM_TT_PROP__WORKSPACE__ICON: ::std::os::raw::c_int = 1;
515pub const TM_TT_PROP__WORKSPACE__TABWELL: ::std::os::raw::c_int = 2;
516pub type _bindgen_ty_13 = ::std::os::raw::c_int;
517pub const TM_TT_PROP__RECENT_FILE__PATH: ::std::os::raw::c_int = 0;
518pub const TM_TT_PROP__RECENT_FILE__TIME_STAMP: ::std::os::raw::c_int = 1;
519pub type _bindgen_ty_14 = ::std::os::raw::c_int;
520pub const TM_TT_PROP__PUBLISH_SETTINGS__DIRECTORY_PROJECT: ::std::os::raw::c_int = 0;
521pub const TM_TT_PROP__PUBLISH_SETTINGS__EXECUTABLE_NAME: ::std::os::raw::c_int = 1;
522pub const TM_TT_PROP__PUBLISH_SETTINGS__WINDOW_TITLE: ::std::os::raw::c_int = 2;
523pub const TM_TT_PROP__PUBLISH_SETTINGS__WORLD_ENTITY: ::std::os::raw::c_int = 3;
524pub const TM_TT_PROP__PUBLISH_SETTINGS__RESOLUTION: ::std::os::raw::c_int = 4;
525pub const TM_TT_PROP__PUBLISH_SETTINGS__FULLSCREEN: ::std::os::raw::c_int = 5;
526pub type _bindgen_ty_15 = ::std::os::raw::c_int;
527pub const TM_TT_PROP__APPLICATION_SECURITY__ALWAYS_ALLOW_DLL_PROJECT_PATHS: ::std::os::raw::c_int =
528 0;
529pub const TM_TT_PROP__APPLICATION_SECURITY__ALWAYS_DENY_DLL_PROJECT_PATHS: ::std::os::raw::c_int =
530 1;
531pub type _bindgen_ty_16 = ::std::os::raw::c_int;
532pub const TM_TT_PROP__PROJECT_SETTINGS__PATH: ::std::os::raw::c_int = 0;
533pub const TM_TT_PROP__PROJECT_SETTINGS__GRAPHS_SETTINGS: ::std::os::raw::c_int = 1;
534pub const TM_TT_PROP__PROJECT_SETTINGS__SCENES_SETTINGS: ::std::os::raw::c_int = 2;
535pub const TM_TT_PROP__PROJECT_SETTINGS__PUBLISH_SETTINGS: ::std::os::raw::c_int = 3;
536pub const TM_TT_PROP__PROJECT_SETTINGS__WINDOW_LAYOUT: ::std::os::raw::c_int = 4;
537pub const TM_TT_PROP__PROJECT_SETTINGS__GRAPH_DEBUGGER_PERSISTENT_SETTINGS: ::std::os::raw::c_int =
538 5;
539pub type _bindgen_ty_17 = ::std::os::raw::c_int;
540pub const TM_TT_PROP__NETWORK_SETTINGS__NODE_INSTANCES: ::std::os::raw::c_int = 0;
541pub type _bindgen_ty_18 = ::std::os::raw::c_int;
542pub const TM_TT_PROP__LOCALIZATION_SETTINGS__MICROSOFT_CACHE: ::std::os::raw::c_int = 0;
543pub const TM_TT_PROP__LOCALIZATION_SETTINGS__GOOGLE_CACHE: ::std::os::raw::c_int = 1;
544pub const TM_TT_PROP__LOCALIZATION_SETTINGS__LANGUAGE: ::std::os::raw::c_int = 2;
545pub const TM_TT_PROP__LOCALIZATION_SETTINGS__USE_GOOGLE: ::std::os::raw::c_int = 3;
546pub const TM_TT_PROP__LOCALIZATION_SETTINGS__USE_MICROSOFT: ::std::os::raw::c_int = 4;
547pub type _bindgen_ty_19 = ::std::os::raw::c_int;
548pub type TheMachineryProjectCallbackI = ::std::option::Option<
549 unsafe extern "C" fn(app: *mut ApplicationO, truth: *mut TheTruthO, asset_root: TtIdT),
550>;
551pub type TheMachineryProjectLoadedI = TheMachineryProjectCallbackI;
552pub type TheMachineryProjectUnloadedI = TheMachineryProjectCallbackI;
553pub type TheMachineryProjectSavedI = TheMachineryProjectCallbackI;
554#[repr(C)]
555#[derive(Copy, Clone)]
556pub struct TheMachineryApi {
557 pub app: *mut ApplicationO,
558 pub open_asset: ::std::option::Option<
559 unsafe extern "C" fn(
560 app: *mut ApplicationO,
561 ui: *mut UiO,
562 from_tab: *mut TabI,
563 asset: TtIdT,
564 ),
565 >,
566 pub get_asset_root:
567 ::std::option::Option<unsafe extern "C" fn(app: *mut ApplicationO) -> TtIdT>,
568 pub reimport_asset: ::std::option::Option<
569 unsafe extern "C" fn(
570 app: *mut ApplicationO,
571 ui: *mut UiO,
572 tt: *mut TheTruthO,
573 asset: TtIdT,
574 ),
575 >,
576 pub create_or_select_tab: ::std::option::Option<
577 unsafe extern "C" fn(
578 app: *mut ApplicationO,
579 ui: *mut UiO,
580 vt_name: *const ::std::os::raw::c_char,
581 opt: *const DockingFindTabOptT,
582 ) -> *mut TabI,
583 >,
584 pub window_for_ui: ::std::option::Option<
585 unsafe extern "C" fn(app: *mut ApplicationO, ui: *const UiO) -> *mut WindowO,
586 >,
587 pub collaboration:
588 ::std::option::Option<unsafe extern "C" fn(app: *mut ApplicationO) -> *mut CollaborationO>,
589 pub collaboration_p2p: ::std::option::Option<
590 unsafe extern "C" fn(app: *mut ApplicationO) -> *mut CollaborationP2pO,
591 >,
592 pub collaboration_discord: ::std::option::Option<
593 unsafe extern "C" fn(app: *mut ApplicationO) -> *mut CollaborationDiscordO,
594 >,
595 pub settings: ::std::option::Option<
596 unsafe extern "C" fn(app: *mut ApplicationO, id: *mut TtIdT) -> *mut TheTruthO,
597 >,
598 pub project_settings: ::std::option::Option<
599 unsafe extern "C" fn(app: *mut ApplicationO, id: *mut TtIdT) -> *mut TheTruthO,
600 >,
601 pub open_project: ::std::option::Option<
602 unsafe extern "C" fn(
603 app: *mut ApplicationO,
604 ui: *mut UiO,
605 path: *const ::std::os::raw::c_char,
606 ) -> bool,
607 >,
608 pub open_any_project: ::std::option::Option<
609 unsafe extern "C" fn(app: *mut ApplicationO, file: *const ::std::os::raw::c_char),
610 >,
611 pub save_to_asset_database: ::std::option::Option<
612 unsafe extern "C" fn(app: *mut ApplicationO, file: *const ::std::os::raw::c_char),
613 >,
614 pub import_asset: ::std::option::Option<
615 unsafe extern "C" fn(
616 app: *mut ApplicationO,
617 file: *const ::std::os::raw::c_char,
618 reimport_into: TtIdT,
619 ),
620 >,
621 pub save_all: ::std::option::Option<unsafe extern "C" fn(app: *mut ApplicationO)>,
622 pub get_truth:
623 ::std::option::Option<unsafe extern "C" fn(app: *mut ApplicationO) -> *mut TheTruthO>,
624 pub new_project: ::std::option::Option<unsafe extern "C" fn(app: *mut ApplicationO)>,
625}
626impl Default for TheMachineryApi {
627 fn default() -> Self {
628 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
629 unsafe {
630 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
631 s.assume_init()
632 }
633 }
634}
635pub type TheMachineryCreateLayoutI =
636 ::std::option::Option<unsafe extern "C" fn(app: *mut ApplicationO)>;
637extern "C" {
638 pub static mut tm_global_api_registry: *mut ApiRegistryApi;
639}
640#[repr(C)]
641#[derive(Copy, Clone)]
642pub struct DccAssetApi {
643 _unused: [u8; 0],
644}
645extern "C" {
646 pub static mut tm_dcc_asset_api: *mut DccAssetApi;
647}
648#[repr(C)]
649#[derive(Copy, Clone)]
650pub struct DefaultRenderPipeApi {
651 _unused: [u8; 0],
652}
653extern "C" {
654 pub static mut tm_default_render_pipe_api: *mut DefaultRenderPipeApi;
655}
656#[repr(C)]
657#[derive(Copy, Clone)]
658pub struct GridRendererApi {
659 _unused: [u8; 0],
660}
661extern "C" {
662 pub static mut tm_grid_renderer_api: *mut GridRendererApi;
663}
664#[repr(C)]
665#[derive(Copy, Clone)]
666pub struct OsDisplayApi {
667 _unused: [u8; 0],
668}
669extern "C" {
670 pub static mut tm_os_display_api: *mut OsDisplayApi;
671}
672#[repr(C)]
673#[derive(Copy, Clone)]
674pub struct OsWindowApi {
675 _unused: [u8; 0],
676}
677extern "C" {
678 pub static mut tm_os_window_api: *mut OsWindowApi;
679}
680#[repr(C)]
681#[derive(Copy, Clone)]
682pub struct PrimitiveDrawerApi {
683 _unused: [u8; 0],
684}
685extern "C" {
686 pub static mut tm_primitive_drawer_api: *mut PrimitiveDrawerApi;
687}
688#[repr(C)]
689#[derive(Copy, Clone)]
690pub struct GpuPickingApi {
691 _unused: [u8; 0],
692}
693extern "C" {
694 pub static mut tm_gpu_picking_api: *mut GpuPickingApi;
695}
696extern "C" {
697 pub static mut tm_task_manager_api: *mut TaskManagerApi;
698}
699#[repr(C)]
700#[derive(Copy, Clone)]
701pub struct GltfApi {
702 _unused: [u8; 0],
703}
704extern "C" {
705 pub static mut tm_gltf_api_opt: *mut GltfApi;
706}
707#[repr(C)]
708#[derive(Copy, Clone)]
709pub struct OpenvrApi {
710 _unused: [u8; 0],
711}
712extern "C" {
713 pub static mut tm_openvr_api_opt: *mut OpenvrApi;
714}
715#[repr(C)]
716#[derive(Copy, Clone)]
717pub struct VulkanApi {
718 _unused: [u8; 0],
719}
720extern "C" {
721 pub static mut tm_vulkan_api_opt: *mut VulkanApi;
722}
723extern "C" {
724 pub static mut tm_cmd_buf_api: *mut RendererCommandBufferApi;
725}
726extern "C" {
727 pub static mut tm_res_buf_api: *mut RendererResourceCommandBufferApi;
728}
729extern "C" {
730 pub static mut tm_the_machinery_api: *mut TheMachineryApi;
731}
732pub const TM_TT_PROP__TRANSLATION__ENGLISH: ::std::os::raw::c_int = 0;
733pub const TM_TT_PROP__TRANSLATION__LANGUAGE: ::std::os::raw::c_int = 1;
734pub const TM_TT_PROP__TRANSLATION__TRANSLATION: ::std::os::raw::c_int = 2;
735pub type _bindgen_ty_20 = ::std::os::raw::c_int;
736pub const TM_TT_PROP__TRANSLATION_CACHE__TRANSLATIONS: ::std::os::raw::c_int = 0;
737pub type _bindgen_ty_21 = ::std::os::raw::c_int;
738#[repr(C)]
739pub struct LocalizerStateT {
740 pub language: StrhashT,
741 pub test_mode: bool,
742 pub reveal_source_text: bool,
743 pub microsoft: bool,
744 pub google: bool,
745 pub _padding_55: [::std::os::raw::c_char; 4usize],
746}
747impl Default for LocalizerStateT {
748 fn default() -> Self {
749 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
750 unsafe {
751 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
752 s.assume_init()
753 }
754 }
755}
756extern "C" {
757 pub fn create_localizer(a: *mut AllocatorI) -> *mut LocalizerO;
758}
759extern "C" {
760 pub fn destroy_localizer(loc: *mut LocalizerO);
761}
762extern "C" {
763 pub fn localizer_set_language(loc: *mut LocalizerO, language: StrhashT);
764}
765extern "C" {
766 pub fn localizer_set_test_mode(loc: *mut LocalizerO, test_mode: bool);
767}
768extern "C" {
769 pub fn localizer_set_reveal_source_text(loc: *mut LocalizerO, reveal: bool);
770}
771extern "C" {
772 pub fn localizer_set_microsoft_translate(
773 loc: *mut LocalizerO,
774 language: StrhashT,
775 api_key: *const ::std::os::raw::c_char,
776 tt: *mut TheTruthO,
777 translation_cache_id: TtIdT,
778 );
779}
780extern "C" {
781 pub fn localizer_set_google_translate(
782 loc: *mut LocalizerO,
783 language: StrhashT,
784 api_key: *const ::std::os::raw::c_char,
785 tt: *mut TheTruthO,
786 translation_cache_id: TtIdT,
787 );
788}
789extern "C" {
790 pub fn localizer_state(loc: *mut LocalizerO) -> LocalizerStateT;
791}
792extern "C" {
793 pub fn localizer_interface(loc: *mut LocalizerO) -> *mut LocalizerI;
794}
795extern "C" {
796 pub fn load_localizer(reg: *mut ApiRegistryApi, load: bool);
797}
798#[repr(C)]
799#[derive(Copy, Clone)]
800pub struct TabCreateContextT {
801 pub allocator: *mut AllocatorI,
802 pub id: *mut u64,
803 pub application: *mut ApplicationO,
804 pub tt: *mut TheTruthO,
805 pub undo_stack: *mut UndoStackI,
806 pub save_interface: *mut AssetSaveI,
807 pub ui_renderer: *mut UiRendererO,
808 pub network: *mut NetworkO,
809}
810impl Default for TabCreateContextT {
811 fn default() -> Self {
812 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
813 unsafe {
814 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
815 s.assume_init()
816 }
817 }
818}
819#[repr(C)]
820pub struct PreviewTabVt {
821 pub super_: TabVt,
822 pub preview_entity: ::std::option::Option<
823 unsafe extern "C" fn(tab: *mut TabO, e: *mut EntityT) -> *mut EntityContextO,
824 >,
825}
826impl Default for PreviewTabVt {
827 fn default() -> Self {
828 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
829 unsafe {
830 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
831 s.assume_init()
832 }
833 }
834}
835#[repr(C)]
836pub struct GraphTabVt {
837 pub super_: TabVt,
838 pub refresh_node_types: ::std::option::Option<
839 unsafe extern "C" fn(
840 tab: *mut TabO,
841 node_interface_name: *const ::std::os::raw::c_char,
842 node_interface_version: VersionT,
843 ),
844 >,
845}
846impl Default for GraphTabVt {
847 fn default() -> Self {
848 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
849 unsafe {
850 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
851 s.assume_init()
852 }
853 }
854}
855#[repr(C)]
856#[derive(Default, Copy, Clone)]
857pub struct CollaborationDiscordO {
858 pub _address: u8,
859}
860
861use const_cstr::{const_cstr, ConstCStr};
864
865use crate::foundation::VersionT;
866
867use crate::foundation::*;
868use crate::plugins::editor_views::*;
869use crate::plugins::entity::*;
870use crate::plugins::renderer::*;
871use crate::plugins::the_machinery_shared::*;
872use crate::plugins::ui::*;
873
874impl AssetBrowserTabApi {
875 pub unsafe fn find_asset_browser(&self, ui: *mut UiO) -> TtIdT {
876 self.find_asset_browser.unwrap()(ui)
877 }
878
879 pub unsafe fn selected_object(&self, tt: *mut TheTruthO, asset_browser: TtIdT) -> TtIdT {
880 self.selected_object.unwrap()(tt, asset_browser)
881 }
882
883 pub unsafe fn set_selection(
884 &self,
885 ui: *mut UiO,
886 asset_or_dirs: *const TtIdT,
887 n: u32,
888 undo_scope: TtUndoScopeT,
889 ) -> bool {
890 self.set_selection.unwrap()(ui, asset_or_dirs, n, undo_scope)
891 }
892}
893
894impl crate::Api for AssetBrowserTabApi {
895 const NAME: ConstCStr = const_cstr!("tm_asset_browser_tab_api");
896 const VERSION: VersionT = VersionT {
897 major: 1u32,
898 minor: 0u32,
899 patch: 0u32,
900 };
901}
902
903impl UpdateTrackerApi {
904 pub unsafe fn init(&self, allocator: *mut AllocatorI) {
905 self.init.unwrap()(allocator)
906 }
907
908 pub unsafe fn should_show_update_notification(&self, app: *mut ApplicationO) -> bool {
909 self.should_show_update_notification.unwrap()(app)
910 }
911
912 pub unsafe fn shutdown(&self) {
913 self.shutdown.unwrap()()
914 }
915}
916
917impl crate::Api for UpdateTrackerApi {
918 const NAME: ConstCStr = const_cstr!("tm_update_tracker_api");
919 const VERSION: VersionT = VersionT {
920 major: 1u32,
921 minor: 0u32,
922 patch: 0u32,
923 };
924}
925
926impl IntegrationTestRunnerApi {
927 pub unsafe fn create(
928 &self,
929 app: *mut ApplicationO,
930 allocator: *mut AllocatorI,
931 context: StrhashT,
932 ) -> *mut IntegrationTestRunnerO {
933 self.create.unwrap()(app, allocator, context)
934 }
935
936 pub unsafe fn add_test(
937 &self,
938 runner: *mut IntegrationTestRunnerO,
939 name: *const ::std::os::raw::c_char,
940 ) -> bool {
941 self.add_test.unwrap()(runner, name)
942 }
943
944 pub unsafe fn tick(&self, runner: *mut IntegrationTestRunnerO) {
945 self.tick.unwrap()(runner)
946 }
947
948 pub unsafe fn destroy(&self, runner: *mut IntegrationTestRunnerO) {
949 self.destroy.unwrap()(runner)
950 }
951}
952
953impl crate::Api for IntegrationTestRunnerApi {
954 const NAME: ConstCStr = const_cstr!("tm_integration_test_runner_api");
955 const VERSION: VersionT = VersionT {
956 major: 1u32,
957 minor: 0u32,
958 patch: 0u32,
959 };
960}
961
962impl LoginApi {
963 pub unsafe fn init(&self, allocator: *mut AllocatorI) {
964 self.init.unwrap()(allocator)
965 }
966
967 pub unsafe fn update(&self) -> LoginTabAction {
968 self.update.unwrap()()
969 }
970
971 pub unsafe fn shutdown(&self) {
972 self.shutdown.unwrap()()
973 }
974}
975
976impl crate::Api for LoginApi {
977 const NAME: ConstCStr = const_cstr!("tm_login_api");
978 const VERSION: VersionT = VersionT {
979 major: 1u32,
980 minor: 0u32,
981 patch: 0u32,
982 };
983}
984
985impl SimulateTabApi {
986 pub unsafe fn update_settings(&self, inst: *mut TabO, settings: *const SimulateTabSettingsT) {
987 self.update_settings.unwrap()(inst, settings)
988 }
989}
990
991impl crate::Api for SimulateTabApi {
992 const NAME: ConstCStr = const_cstr!("tm_simulate_tab_api");
993 const VERSION: VersionT = VersionT {
994 major: 1u32,
995 minor: 0u32,
996 patch: 0u32,
997 };
998}
999
1000impl StatisticsTabApi {
1001 pub unsafe fn add_source(
1002 &self,
1003 tab: *mut TabI,
1004 name: *const ::std::os::raw::c_char,
1005 source: *const ::std::os::raw::c_char,
1006 color: ColorSrgbT,
1007 ) {
1008 self.add_source.unwrap()(tab, name, source, color)
1009 }
1010}
1011
1012impl crate::Api for StatisticsTabApi {
1013 const NAME: ConstCStr = const_cstr!("tm_statistics_tab_api");
1014 const VERSION: VersionT = VersionT {
1015 major: 1u32,
1016 minor: 0u32,
1017 patch: 0u32,
1018 };
1019}
1020
1021impl TaskManagerApi {
1022 pub unsafe fn create(&self, alloc: *mut AllocatorI) -> *mut TaskManagerO {
1023 self.create.unwrap()(alloc)
1024 }
1025
1026 pub unsafe fn destroy(&self, inst: *mut TaskManagerO) {
1027 self.destroy.unwrap()(inst)
1028 }
1029
1030 pub unsafe fn ui(
1031 &self,
1032 inst: *mut TaskManagerO,
1033 ui: *mut UiO,
1034 id: u64,
1035 uistyle: *const UiStyleT,
1036 r: RectT,
1037 ) {
1038 self.ui.unwrap()(inst, ui, id, uistyle, r)
1039 }
1040}
1041
1042impl crate::Api for TaskManagerApi {
1043 const NAME: ConstCStr = const_cstr!("tm_task_manager_api");
1044 const VERSION: VersionT = VersionT {
1045 major: 1u32,
1046 minor: 0u32,
1047 patch: 0u32,
1048 };
1049}
1050
1051impl TheMachineryApi {
1052 pub unsafe fn open_asset(
1053 &self,
1054 app: *mut ApplicationO,
1055 ui: *mut UiO,
1056 from_tab: *mut TabI,
1057 asset: TtIdT,
1058 ) {
1059 self.open_asset.unwrap()(app, ui, from_tab, asset)
1060 }
1061
1062 pub unsafe fn get_asset_root(&self, app: *mut ApplicationO) -> TtIdT {
1063 self.get_asset_root.unwrap()(app)
1064 }
1065
1066 pub unsafe fn reimport_asset(
1067 &self,
1068 app: *mut ApplicationO,
1069 ui: *mut UiO,
1070 tt: *mut TheTruthO,
1071 asset: TtIdT,
1072 ) {
1073 self.reimport_asset.unwrap()(app, ui, tt, asset)
1074 }
1075
1076 pub unsafe fn create_or_select_tab(
1077 &self,
1078 app: *mut ApplicationO,
1079 ui: *mut UiO,
1080 vt_name: *const ::std::os::raw::c_char,
1081 opt: *const DockingFindTabOptT,
1082 ) -> *mut TabI {
1083 self.create_or_select_tab.unwrap()(app, ui, vt_name, opt)
1084 }
1085
1086 pub unsafe fn window_for_ui(&self, app: *mut ApplicationO, ui: *const UiO) -> *mut WindowO {
1087 self.window_for_ui.unwrap()(app, ui)
1088 }
1089
1090 pub unsafe fn collaboration(&self, app: *mut ApplicationO) -> *mut CollaborationO {
1091 self.collaboration.unwrap()(app)
1092 }
1093
1094 pub unsafe fn collaboration_p2p(&self, app: *mut ApplicationO) -> *mut CollaborationP2pO {
1095 self.collaboration_p2p.unwrap()(app)
1096 }
1097
1098 pub unsafe fn collaboration_discord(
1099 &self,
1100 app: *mut ApplicationO,
1101 ) -> *mut CollaborationDiscordO {
1102 self.collaboration_discord.unwrap()(app)
1103 }
1104
1105 pub unsafe fn settings(&self, app: *mut ApplicationO, id: *mut TtIdT) -> *mut TheTruthO {
1106 self.settings.unwrap()(app, id)
1107 }
1108
1109 pub unsafe fn project_settings(
1110 &self,
1111 app: *mut ApplicationO,
1112 id: *mut TtIdT,
1113 ) -> *mut TheTruthO {
1114 self.project_settings.unwrap()(app, id)
1115 }
1116
1117 pub unsafe fn open_project(
1118 &self,
1119 app: *mut ApplicationO,
1120 ui: *mut UiO,
1121 path: *const ::std::os::raw::c_char,
1122 ) -> bool {
1123 self.open_project.unwrap()(app, ui, path)
1124 }
1125
1126 pub unsafe fn open_any_project(
1127 &self,
1128 app: *mut ApplicationO,
1129 file: *const ::std::os::raw::c_char,
1130 ) {
1131 self.open_any_project.unwrap()(app, file)
1132 }
1133
1134 pub unsafe fn save_to_asset_database(
1135 &self,
1136 app: *mut ApplicationO,
1137 file: *const ::std::os::raw::c_char,
1138 ) {
1139 self.save_to_asset_database.unwrap()(app, file)
1140 }
1141
1142 pub unsafe fn import_asset(
1143 &self,
1144 app: *mut ApplicationO,
1145 file: *const ::std::os::raw::c_char,
1146 reimport_into: TtIdT,
1147 ) {
1148 self.import_asset.unwrap()(app, file, reimport_into)
1149 }
1150
1151 pub unsafe fn save_all(&self, app: *mut ApplicationO) {
1152 self.save_all.unwrap()(app)
1153 }
1154
1155 pub unsafe fn get_truth(&self, app: *mut ApplicationO) -> *mut TheTruthO {
1156 self.get_truth.unwrap()(app)
1157 }
1158
1159 pub unsafe fn new_project(&self, app: *mut ApplicationO) {
1160 self.new_project.unwrap()(app)
1161 }
1162}
1163
1164impl crate::Api for TheMachineryApi {
1165 const NAME: ConstCStr = const_cstr!("tm_the_machinery_api");
1166 const VERSION: VersionT = VersionT {
1167 major: 1u32,
1168 minor: 0u32,
1169 patch: 0u32,
1170 };
1171}
1172
1173impl DccAssetApi {}
1174
1175impl DefaultRenderPipeApi {}
1176
1177impl GridRendererApi {}
1178
1179impl OsDisplayApi {}
1180
1181impl OsWindowApi {}
1182
1183impl PrimitiveDrawerApi {}
1184
1185impl GpuPickingApi {}
1186
1187impl GltfApi {}
1188
1189impl OpenvrApi {}
1190
1191impl VulkanApi {}
1192
1193pub const TM_ASSET_BROWSER_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1194 u64_: 13036556916491485142u64,
1195};
1196pub const TM_CACHE_MANAGER_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1197 u64_: 17336090661109815624u64,
1198};
1199pub const TM_CANVAS_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1200 u64_: 9991448700525851219u64,
1201};
1202pub const TM_COLLABORATION_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1203 u64_: 13304429456151464228u64,
1204};
1205pub const TM_CONSOLE_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1206 u64_: 12163199768431146244u64,
1207};
1208pub const TM_CORE_ID_DCC_IMAGE_CG: StrhashT = StrhashT {
1209 u64_: 4745056028275695429u64,
1210};
1211pub const TM_CORE_ID_DCC_MATERIAL_CG: StrhashT = StrhashT {
1212 u64_: 14644393322716058569u64,
1213};
1214pub const TM_CORE_ID_DCC_MATERIAL_OPACITY_CG: StrhashT = StrhashT {
1215 u64_: 15439250747231496698u64,
1216};
1217pub const TM_CORE_ID_DCC_MESH_CG: StrhashT = StrhashT {
1218 u64_: 3192826436324017360u64,
1219};
1220pub const TM_CORE_ID_DCC_MESH_LOD_CG: StrhashT = StrhashT {
1221 u64_: 14880516632037890971u64,
1222};
1223pub const TM_CORE_ID_DCC_MESH_LOD_STEP_CG: StrhashT = StrhashT {
1224 u64_: 12029032052130817361u64,
1225};
1226pub const TM_CORE_ID_IMPORT_IMAGE_CG: StrhashT = StrhashT {
1227 u64_: 8434100624486330861u64,
1228};
1229pub const TM_CORE_ID_DROP_IMAGE_CG: StrhashT = StrhashT {
1230 u64_: 4513188134555908800u64,
1231};
1232pub const TM_CORE_ID_EDITOR_ICON_CG: StrhashT = StrhashT {
1233 u64_: 7038704372328695573u64,
1234};
1235pub const TM_CORE_ID_GEOMETRY_MATERIAL_CG: StrhashT = StrhashT {
1236 u64_: 14108441262108032777u64,
1237};
1238pub const TM_CORE_ID_GEOMETRY_BOX_ENTITY: StrhashT = StrhashT {
1239 u64_: 7252367683291092979u64,
1240};
1241pub const TM_CORE_ID_GEOMETRY_SPHERE_ENTITY: StrhashT = StrhashT {
1242 u64_: 11582288377819735590u64,
1243};
1244pub const TM_CORE_ID_GEOMETRY_PLANE_ENTITY: StrhashT = StrhashT {
1245 u64_: 7311513872247150992u64,
1246};
1247pub const TM_CORE_ID_LIGHT_ENTITY: StrhashT = StrhashT {
1248 u64_: 7173462963839382841u64,
1249};
1250pub const TM_CORE_ID_CAMERA_ENTITY: StrhashT = StrhashT {
1251 u64_: 2187989508077250605u64,
1252};
1253pub const TM_CORE_ID_POST_PROCESSING_STACK: StrhashT = StrhashT {
1254 u64_: 17154254651014689721u64,
1255};
1256pub const TM_CORE_ID_POST_PROCESSING_VOLUME: StrhashT = StrhashT {
1257 u64_: 6525241469376208722u64,
1258};
1259pub const TM_CORE_ID_REFLECTION_PROBE_ENTITY: StrhashT = StrhashT {
1260 u64_: 4249566392992356494u64,
1261};
1262pub const TM_CORE_ID_DEFAULT_WORLD: StrhashT = StrhashT {
1263 u64_: 9823233946160333378u64,
1264};
1265pub const TM_CORE_ID_DEFAULT_LIGHTING_ENVIRONMENT: StrhashT = StrhashT {
1266 u64_: 9068331648142131762u64,
1267};
1268pub const TM_CORE_ID_SHORTCUT_LABEL_GEOMETRY: StrhashT = StrhashT {
1269 u64_: 10328401752681028853u64,
1270};
1271pub const TM_CORE_ID_DEFAULT_SKY: StrhashT = StrhashT {
1272 u64_: 7363654769829550863u64,
1273};
1274pub const TM_DELAUNAY_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1275 u64_: 8171429600103526299u64,
1276};
1277pub const TM_DOWNLOAD_VT_NAME_HASH: StrhashT = StrhashT {
1278 u64_: 11801884756962955328u64,
1279};
1280pub const TM_WELCOME_VT_NAME_HASH: StrhashT = StrhashT {
1281 u64_: 10557901196531259385u64,
1282};
1283pub const TM_TT_TYPE_HASH__APPLICATION_SETTINGS__UPDATES: StrhashT = StrhashT {
1284 u64_: 9690335476561887142u64,
1285};
1286pub const TM_TT_TYPE_HASH__APPLICATION_SETTINGS__DOWNLOAD: StrhashT = StrhashT {
1287 u64_: 15292496360168744251u64,
1288};
1289pub const TM_TREE_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1290 u64_: 15475822667703539061u64,
1291};
1292pub const TM_GENERIC_TREE_VIEW_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1293 u64_: 7879992602091662578u64,
1294};
1295pub const TM_GRAPH_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1296 u64_: 7469907488998227710u64,
1297};
1298pub const TM_IMPORT_PROJECT_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1299 u64_: 5425513247114970647u64,
1300};
1301pub const TM_INPUT_LOG_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1302 u64_: 3670387838326478915u64,
1303};
1304pub const TM_JSON_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1305 u64_: 6402701518264315318u64,
1306};
1307pub const TM_LOGIN_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1308 u64_: 13936248484350100215u64,
1309};
1310pub const TM_MODIFIED_ASSETS_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1311 u64_: 10659480203678754394u64,
1312};
1313pub const TM_NETWORK_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1314 u64_: 8766316902787013043u64,
1315};
1316pub const TM_PREVIEW_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1317 u64_: 3090695599756087083u64,
1318};
1319pub const TM_PROFILER_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1320 u64_: 6501996879298069992u64,
1321};
1322pub const TM_PROPERTIES_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1323 u64_: 13146008834947116426u64,
1324};
1325pub const TM_SCENE_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1326 u64_: 8924396880956854330u64,
1327};
1328pub const TM_TT_TYPE_HASH__SCENE_TAB: StrhashT = StrhashT {
1329 u64_: 8924396880956854330u64,
1330};
1331pub const TM_TT_TYPE_HASH__SCENE_TAB_SETTINGS: StrhashT = StrhashT {
1332 u64_: 11302401724387347019u64,
1333};
1334pub const TM_TT_TYPE_HASH__SCENE_SETTINGS: StrhashT = StrhashT {
1335 u64_: 1480825796711809733u64,
1336};
1337pub const TM_SIMULATE_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1338 u64_: 15540707913236182876u64,
1339};
1340pub const TM_TT_TYPE_HASH__SIMULATE_TAB_SETTINGS: StrhashT = StrhashT {
1341 u64_: 9183098095369085156u64,
1342};
1343pub const TM_STATE_GRAPH_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1344 u64_: 14410119148743899870u64,
1345};
1346pub const TM_STATISTICS_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1347 u64_: 8580271604033701237u64,
1348};
1349pub const TM_TASK_MANAGER_TAB_VT_NAME_HASH: StrhashT = StrhashT {
1350 u64_: 3581857845760553842u64,
1351};
1352pub const TM_TT_TYPE_HASH__APPLICATION_SETTINGS: StrhashT = StrhashT {
1353 u64_: 4146725298831762617u64,
1354};
1355pub const TM_TT_TYPE_HASH__PROJECT_MANAGEMENT_SETTINGS: StrhashT = StrhashT {
1356 u64_: 10054850684661594383u64,
1357};
1358pub const TM_TT_TYPE_HASH__INTERFACE_SETTINGS: StrhashT = StrhashT {
1359 u64_: 15196734740682162288u64,
1360};
1361pub const TM_TT_TYPE_HASH__WINDOW_LAYOUTS: StrhashT = StrhashT {
1362 u64_: 12486477828238302005u64,
1363};
1364pub const TM_TT_TYPE_HASH__WINDOW_LAYOUT: StrhashT = StrhashT {
1365 u64_: 2242415212777679619u64,
1366};
1367pub const TM_TT_TYPE_HASH__WORKSPACE: StrhashT = StrhashT {
1368 u64_: 14829736330726518513u64,
1369};
1370pub const TM_TT_TYPE_HASH__RECENT_FILE: StrhashT = StrhashT {
1371 u64_: 13424770189634016662u64,
1372};
1373pub const TM_TT_TYPE_HASH__PUBLISH_SETTINGS: StrhashT = StrhashT {
1374 u64_: 10298575024838714316u64,
1375};
1376pub const TM_TT_TYPE_HASH__APPLICATION_SECURITY: StrhashT = StrhashT {
1377 u64_: 12727897416163656223u64,
1378};
1379pub const TM_TT_TYPE_HASH__PROJECT_SETTINGS: StrhashT = StrhashT {
1380 u64_: 16275721671749807405u64,
1381};
1382pub const TM_TT_TYPE_HASH__NETWORK_SETTINGS: StrhashT = StrhashT {
1383 u64_: 4133456848111380615u64,
1384};
1385pub const TM_TT_TYPE_HASH__LOCALIZATION_SETTINGS: StrhashT = StrhashT {
1386 u64_: 12227184065019180970u64,
1387};
1388pub const TM_TT_TYPE_HASH__TRANSLATION: StrhashT = StrhashT {
1389 u64_: 1601245301749355993u64,
1390};
1391pub const TM_TT_TYPE_HASH__TRANSLATION_CACHE: StrhashT = StrhashT {
1392 u64_: 15932710862828710769u64,
1393};
1394pub const TM_THE_MACHINERY_PROJECT_CALLBACK_I_VERSION: VersionT = VersionT {
1395 major: 1u32,
1396 minor: 0u32,
1397 patch: 0u32,
1398};
1399pub const TM_THE_MACHINERY_API_VERSION: VersionT = VersionT {
1400 major: 1u32,
1401 minor: 0u32,
1402 patch: 0u32,
1403};
1404pub const TM_THE_MACHINERY_CREATE_LAYOUT_I_VERSION: VersionT = VersionT {
1405 major: 1u32,
1406 minor: 0u32,
1407 patch: 0u32,
1408};
1409pub const TM_SIMULATE_TAB_API_VERSION: VersionT = VersionT {
1410 major: 1u32,
1411 minor: 0u32,
1412 patch: 0u32,
1413};
1414pub const TM_STATISTICS_TAB_API_VERSION: VersionT = VersionT {
1415 major: 1u32,
1416 minor: 0u32,
1417 patch: 0u32,
1418};
1419pub const TM_ASSET_BROWSER_TAB_CUSTOM_MENU_ITEMS_I_VERSION: VersionT = VersionT {
1420 major: 1u32,
1421 minor: 0u32,
1422 patch: 0u32,
1423};
1424pub const TM_UPDATE_TRACKER_API_VERSION: VersionT = VersionT {
1425 major: 1u32,
1426 minor: 0u32,
1427 patch: 0u32,
1428};
1429pub const TM_TASK_MANAGER_API_VERSION: VersionT = VersionT {
1430 major: 1u32,
1431 minor: 0u32,
1432 patch: 0u32,
1433};
1434pub const TM_INTEGRATION_TEST_RUNNER_API_VERSION: VersionT = VersionT {
1435 major: 1u32,
1436 minor: 0u32,
1437 patch: 0u32,
1438};
1439pub const TM_LOGIN_API_VERSION: VersionT = VersionT {
1440 major: 1u32,
1441 minor: 0u32,
1442 patch: 0u32,
1443};
1444pub const TM_ASSET_BROWSER_TAB_API_VERSION: VersionT = VersionT {
1445 major: 1u32,
1446 minor: 0u32,
1447 patch: 0u32,
1448};