4coder/platform_all/4ed_link_system_functions.cpp

71 lines
1.5 KiB
C++

/*
* Mr. 4th Dimention - Allen Webster
*
* 18.07.2017
*
* Code to link system functions using a name convention
*
*/
// TOP
// TODO(allen): Should auto-gen this!
#define SYSLINK(name) sysfunc.name = system_##name
internal void
link_system_code(void){
SYSLINK(get_canonical);
SYSLINK(get_file_list);
SYSLINK(quick_file_attributes);
SYSLINK(load_handle);
SYSLINK(load_attributes);
SYSLINK(load_file);
SYSLINK(load_close);
SYSLINK(save_file);
SYSLINK(now_time);
SYSLINK(wake_up_timer_create);
SYSLINK(wake_up_timer_release);
SYSLINK(wake_up_timer_set);
SYSLINK(signal_step);
SYSLINK(sleep);
SYSLINK(post_clipboard);
SYSLINK(cli_call);
SYSLINK(cli_begin_update);
SYSLINK(cli_update_step);
SYSLINK(cli_end_update);
SYSLINK(open_color_picker);
SYSLINK(get_screen_scale_factor);
SYSLINK(thread_launch);
SYSLINK(thread_join);
SYSLINK(thread_free);
SYSLINK(thread_get_id);
SYSLINK(mutex_make);
SYSLINK(mutex_acquire);
SYSLINK(mutex_release);
SYSLINK(mutex_free);
SYSLINK(condition_variable_make);
SYSLINK(condition_variable_wait);
SYSLINK(condition_variable_signal);
SYSLINK(condition_variable_free);
SYSLINK(memory_allocate);
SYSLINK(memory_set_protection);
SYSLINK(memory_free);
SYSLINK(get_current_path);
SYSLINK(get_4ed_path);
SYSLINK(set_fullscreen);
SYSLINK(is_fullscreen);
SYSLINK(show_mouse_cursor);
}
// BOTTOM