class_os.rst 61 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691
  1. .. Generated automatically by doc/tools/makerst.py in Godot's source tree.
  2. .. DO NOT EDIT THIS FILE, but the doc/base/classes.xml source instead.
  3. .. _class_OS:
  4. OS
  5. ==
  6. **Inherits:** :ref:`Object<class_object>`
  7. **Category:** Core
  8. Brief Description
  9. -----------------
  10. Operating System functions.
  11. Member Functions
  12. ----------------
  13. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  14. | void | :ref:`set_clipboard<class_OS_set_clipboard>` **(** :ref:`String<class_string>` clipboard **)** |
  15. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  16. | :ref:`String<class_string>` | :ref:`get_clipboard<class_OS_get_clipboard>` **(** **)** const |
  17. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  18. | void | :ref:`set_video_mode<class_OS_set_video_mode>` **(** :ref:`Vector2<class_vector2>` size, :ref:`bool<class_bool>` fullscreen, :ref:`bool<class_bool>` resizable, :ref:`int<class_int>` screen=0 **)** |
  19. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  20. | :ref:`Vector2<class_vector2>` | :ref:`get_video_mode_size<class_OS_get_video_mode_size>` **(** :ref:`int<class_int>` screen=0 **)** const |
  21. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  22. | :ref:`bool<class_bool>` | :ref:`is_video_mode_fullscreen<class_OS_is_video_mode_fullscreen>` **(** :ref:`int<class_int>` screen=0 **)** const |
  23. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  24. | :ref:`bool<class_bool>` | :ref:`is_video_mode_resizable<class_OS_is_video_mode_resizable>` **(** :ref:`int<class_int>` screen=0 **)** const |
  25. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  26. | :ref:`Array<class_array>` | :ref:`get_fullscreen_mode_list<class_OS_get_fullscreen_mode_list>` **(** :ref:`int<class_int>` screen=0 **)** const |
  27. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  28. | :ref:`int<class_int>` | :ref:`get_screen_count<class_OS_get_screen_count>` **(** **)** const |
  29. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  30. | :ref:`int<class_int>` | :ref:`get_current_screen<class_OS_get_current_screen>` **(** **)** const |
  31. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  32. | void | :ref:`set_current_screen<class_OS_set_current_screen>` **(** :ref:`int<class_int>` screen **)** |
  33. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  34. | :ref:`Vector2<class_vector2>` | :ref:`get_screen_position<class_OS_get_screen_position>` **(** :ref:`int<class_int>` screen=0 **)** const |
  35. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  36. | :ref:`Vector2<class_vector2>` | :ref:`get_screen_size<class_OS_get_screen_size>` **(** :ref:`int<class_int>` screen=0 **)** const |
  37. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  38. | :ref:`Vector2<class_vector2>` | :ref:`get_window_position<class_OS_get_window_position>` **(** **)** const |
  39. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  40. | void | :ref:`set_window_position<class_OS_set_window_position>` **(** :ref:`Vector2<class_vector2>` position **)** |
  41. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  42. | :ref:`Vector2<class_vector2>` | :ref:`get_window_size<class_OS_get_window_size>` **(** **)** const |
  43. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  44. | void | :ref:`set_window_size<class_OS_set_window_size>` **(** :ref:`Vector2<class_vector2>` size **)** |
  45. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  46. | void | :ref:`set_window_fullscreen<class_OS_set_window_fullscreen>` **(** :ref:`bool<class_bool>` enabled **)** |
  47. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  48. | :ref:`bool<class_bool>` | :ref:`is_window_fullscreen<class_OS_is_window_fullscreen>` **(** **)** const |
  49. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  50. | void | :ref:`set_window_resizable<class_OS_set_window_resizable>` **(** :ref:`bool<class_bool>` enabled **)** |
  51. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  52. | :ref:`bool<class_bool>` | :ref:`is_window_resizable<class_OS_is_window_resizable>` **(** **)** const |
  53. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  54. | void | :ref:`set_window_minimized<class_OS_set_window_minimized>` **(** :ref:`bool<class_bool>` enabled **)** |
  55. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  56. | :ref:`bool<class_bool>` | :ref:`is_window_minimized<class_OS_is_window_minimized>` **(** **)** const |
  57. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  58. | void | :ref:`set_window_maximized<class_OS_set_window_maximized>` **(** :ref:`bool<class_bool>` enabled **)** |
  59. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  60. | :ref:`bool<class_bool>` | :ref:`is_window_maximized<class_OS_is_window_maximized>` **(** **)** const |
  61. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  62. | void | :ref:`set_screen_orientation<class_OS_set_screen_orientation>` **(** :ref:`int<class_int>` orientation **)** |
  63. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  64. | :ref:`int<class_int>` | :ref:`get_screen_orientation<class_OS_get_screen_orientation>` **(** **)** const |
  65. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  66. | void | :ref:`set_keep_screen_on<class_OS_set_keep_screen_on>` **(** :ref:`bool<class_bool>` enabled **)** |
  67. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  68. | :ref:`bool<class_bool>` | :ref:`is_keep_screen_on<class_OS_is_keep_screen_on>` **(** **)** const |
  69. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  70. | void | :ref:`set_iterations_per_second<class_OS_set_iterations_per_second>` **(** :ref:`int<class_int>` iterations_per_second **)** |
  71. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  72. | :ref:`int<class_int>` | :ref:`get_iterations_per_second<class_OS_get_iterations_per_second>` **(** **)** const |
  73. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  74. | void | :ref:`set_target_fps<class_OS_set_target_fps>` **(** :ref:`int<class_int>` target_fps **)** |
  75. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  76. | :ref:`float<class_float>` | :ref:`get_target_fps<class_OS_get_target_fps>` **(** **)** const |
  77. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  78. | void | :ref:`set_time_scale<class_OS_set_time_scale>` **(** :ref:`float<class_float>` time_scale **)** |
  79. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  80. | :ref:`float<class_float>` | :ref:`get_time_scale<class_OS_get_time_scale>` **(** **)** |
  81. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  82. | :ref:`bool<class_bool>` | :ref:`has_touchscreen_ui_hint<class_OS_has_touchscreen_ui_hint>` **(** **)** const |
  83. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  84. | void | :ref:`set_window_title<class_OS_set_window_title>` **(** :ref:`String<class_string>` title **)** |
  85. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  86. | void | :ref:`set_low_processor_usage_mode<class_OS_set_low_processor_usage_mode>` **(** :ref:`bool<class_bool>` enable **)** |
  87. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  88. | :ref:`bool<class_bool>` | :ref:`is_in_low_processor_usage_mode<class_OS_is_in_low_processor_usage_mode>` **(** **)** const |
  89. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  90. | :ref:`int<class_int>` | :ref:`get_processor_count<class_OS_get_processor_count>` **(** **)** const |
  91. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  92. | :ref:`String<class_string>` | :ref:`get_executable_path<class_OS_get_executable_path>` **(** **)** const |
  93. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  94. | :ref:`int<class_int>` | :ref:`execute<class_OS_execute>` **(** :ref:`String<class_string>` path, :ref:`StringArray<class_stringarray>` arguments, :ref:`bool<class_bool>` blocking, :ref:`Array<class_array>` output=Array() **)** |
  95. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  96. | :ref:`int<class_int>` | :ref:`kill<class_OS_kill>` **(** :ref:`int<class_int>` pid **)** |
  97. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  98. | :ref:`int<class_int>` | :ref:`shell_open<class_OS_shell_open>` **(** :ref:`String<class_string>` uri **)** |
  99. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  100. | :ref:`int<class_int>` | :ref:`get_process_ID<class_OS_get_process_ID>` **(** **)** const |
  101. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  102. | :ref:`String<class_string>` | :ref:`get_environment<class_OS_get_environment>` **(** :ref:`String<class_string>` environment **)** const |
  103. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  104. | :ref:`bool<class_bool>` | :ref:`has_environment<class_OS_has_environment>` **(** :ref:`String<class_string>` environment **)** const |
  105. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  106. | :ref:`String<class_string>` | :ref:`get_name<class_OS_get_name>` **(** **)** const |
  107. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  108. | :ref:`StringArray<class_stringarray>` | :ref:`get_cmdline_args<class_OS_get_cmdline_args>` **(** **)** |
  109. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  110. | :ref:`Object<class_object>` | :ref:`get_main_loop<class_OS_get_main_loop>` **(** **)** const |
  111. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  112. | :ref:`Dictionary<class_dictionary>` | :ref:`get_date<class_OS_get_date>` **(** :ref:`bool<class_bool>` utc=false **)** const |
  113. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  114. | :ref:`Dictionary<class_dictionary>` | :ref:`get_time<class_OS_get_time>` **(** :ref:`bool<class_bool>` utc=false **)** const |
  115. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  116. | :ref:`Dictionary<class_dictionary>` | :ref:`get_time_zone_info<class_OS_get_time_zone_info>` **(** **)** const |
  117. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  118. | :ref:`int<class_int>` | :ref:`get_unix_time<class_OS_get_unix_time>` **(** **)** const |
  119. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  120. | :ref:`int<class_int>` | :ref:`get_system_time_secs<class_OS_get_system_time_secs>` **(** **)** const |
  121. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  122. | void | :ref:`set_icon<class_OS_set_icon>` **(** :ref:`Image<class_image>` icon **)** |
  123. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  124. | void | :ref:`delay_usec<class_OS_delay_usec>` **(** :ref:`int<class_int>` usec **)** const |
  125. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  126. | void | :ref:`delay_msec<class_OS_delay_msec>` **(** :ref:`int<class_int>` msec **)** const |
  127. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  128. | :ref:`int<class_int>` | :ref:`get_ticks_msec<class_OS_get_ticks_msec>` **(** **)** const |
  129. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  130. | :ref:`int<class_int>` | :ref:`get_splash_tick_msec<class_OS_get_splash_tick_msec>` **(** **)** const |
  131. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  132. | :ref:`String<class_string>` | :ref:`get_locale<class_OS_get_locale>` **(** **)** const |
  133. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  134. | :ref:`String<class_string>` | :ref:`get_model_name<class_OS_get_model_name>` **(** **)** const |
  135. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  136. | :ref:`String<class_string>` | :ref:`get_custom_level<class_OS_get_custom_level>` **(** **)** const |
  137. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  138. | :ref:`bool<class_bool>` | :ref:`can_draw<class_OS_can_draw>` **(** **)** const |
  139. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  140. | :ref:`int<class_int>` | :ref:`get_frames_drawn<class_OS_get_frames_drawn>` **(** **)** |
  141. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  142. | :ref:`bool<class_bool>` | :ref:`is_stdout_verbose<class_OS_is_stdout_verbose>` **(** **)** const |
  143. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  144. | :ref:`bool<class_bool>` | :ref:`can_use_threads<class_OS_can_use_threads>` **(** **)** const |
  145. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  146. | :ref:`bool<class_bool>` | :ref:`is_debug_build<class_OS_is_debug_build>` **(** **)** const |
  147. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  148. | void | :ref:`dump_memory_to_file<class_OS_dump_memory_to_file>` **(** :ref:`String<class_string>` file **)** |
  149. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  150. | void | :ref:`dump_resources_to_file<class_OS_dump_resources_to_file>` **(** :ref:`String<class_string>` file **)** |
  151. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  152. | void | :ref:`print_resources_in_use<class_OS_print_resources_in_use>` **(** :ref:`bool<class_bool>` short=false **)** |
  153. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  154. | void | :ref:`print_all_resources<class_OS_print_all_resources>` **(** :ref:`String<class_string>` tofile="" **)** |
  155. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  156. | :ref:`int<class_int>` | :ref:`get_static_memory_usage<class_OS_get_static_memory_usage>` **(** **)** const |
  157. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  158. | :ref:`int<class_int>` | :ref:`get_static_memory_peak_usage<class_OS_get_static_memory_peak_usage>` **(** **)** const |
  159. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  160. | :ref:`int<class_int>` | :ref:`get_dynamic_memory_usage<class_OS_get_dynamic_memory_usage>` **(** **)** const |
  161. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  162. | :ref:`String<class_string>` | :ref:`get_data_dir<class_OS_get_data_dir>` **(** **)** const |
  163. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  164. | :ref:`String<class_string>` | :ref:`get_system_dir<class_OS_get_system_dir>` **(** :ref:`int<class_int>` dir **)** const |
  165. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  166. | :ref:`String<class_string>` | :ref:`get_unique_ID<class_OS_get_unique_ID>` **(** **)** const |
  167. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  168. | :ref:`bool<class_bool>` | :ref:`is_ok_left_and_cancel_right<class_OS_is_ok_left_and_cancel_right>` **(** **)** const |
  169. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  170. | :ref:`float<class_float>` | :ref:`get_frames_per_second<class_OS_get_frames_per_second>` **(** **)** const |
  171. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  172. | void | :ref:`print_all_textures_by_size<class_OS_print_all_textures_by_size>` **(** **)** |
  173. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  174. | void | :ref:`print_resources_by_type<class_OS_print_resources_by_type>` **(** :ref:`StringArray<class_stringarray>` types **)** |
  175. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  176. | :ref:`int<class_int>` | :ref:`native_video_play<class_OS_native_video_play>` **(** :ref:`String<class_string>` path, :ref:`float<class_float>` volume, :ref:`String<class_string>` audio_track, :ref:`String<class_string>` subtitle_track **)** |
  177. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  178. | :ref:`bool<class_bool>` | :ref:`native_video_is_playing<class_OS_native_video_is_playing>` **(** **)** |
  179. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  180. | void | :ref:`native_video_stop<class_OS_native_video_stop>` **(** **)** |
  181. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  182. | void | :ref:`native_video_pause<class_OS_native_video_pause>` **(** **)** |
  183. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  184. | :ref:`String<class_string>` | :ref:`get_scancode_string<class_OS_get_scancode_string>` **(** :ref:`int<class_int>` code **)** const |
  185. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  186. | :ref:`bool<class_bool>` | :ref:`is_scancode_unicode<class_OS_is_scancode_unicode>` **(** :ref:`int<class_int>` code **)** const |
  187. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  188. | :ref:`int<class_int>` | :ref:`find_scancode_from_string<class_OS_find_scancode_from_string>` **(** :ref:`String<class_string>` string **)** const |
  189. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  190. | void | :ref:`set_use_file_access_save_and_swap<class_OS_set_use_file_access_save_and_swap>` **(** :ref:`bool<class_bool>` enabled **)** |
  191. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  192. | void | :ref:`alert<class_OS_alert>` **(** :ref:`String<class_string>` text, :ref:`String<class_string>` title="Alert!" **)** |
  193. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  194. | :ref:`int<class_int>` | :ref:`set_thread_name<class_OS_set_thread_name>` **(** :ref:`String<class_string>` name **)** |
  195. +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  196. Numeric Constants
  197. -----------------
  198. - **DAY_SUNDAY** = **0**
  199. - **DAY_MONDAY** = **1**
  200. - **DAY_TUESDAY** = **2**
  201. - **DAY_WEDNESDAY** = **3**
  202. - **DAY_THURSDAY** = **4**
  203. - **DAY_FRIDAY** = **5**
  204. - **DAY_SATURDAY** = **6**
  205. - **MONTH_JANUARY** = **0**
  206. - **MONTH_FEBRUARY** = **1**
  207. - **MONTH_MARCH** = **2**
  208. - **MONTH_APRIL** = **3**
  209. - **MONTH_MAY** = **4**
  210. - **MONTH_JUNE** = **5**
  211. - **MONTH_JULY** = **6**
  212. - **MONTH_AUGUST** = **7**
  213. - **MONTH_SEPTEMBER** = **8**
  214. - **MONTH_OCTOBER** = **9**
  215. - **MONTH_NOVEMBER** = **10**
  216. - **MONTH_DECEMBER** = **11**
  217. - **SCREEN_ORIENTATION_LANDSCAPE** = **0**
  218. - **SCREEN_ORIENTATION_PORTRAIT** = **1**
  219. - **SCREEN_ORIENTATION_REVERSE_LANDSCAPE** = **2**
  220. - **SCREEN_ORIENTATION_REVERSE_PORTRAIT** = **3**
  221. - **SCREEN_ORIENTATION_SENSOR_LANDSCAPE** = **4**
  222. - **SCREEN_ORIENTATION_SENSOR_PORTRAIT** = **5**
  223. - **SCREEN_ORIENTATION_SENSOR** = **6**
  224. - **SYSTEM_DIR_DESKTOP** = **0**
  225. - **SYSTEM_DIR_DCIM** = **1**
  226. - **SYSTEM_DIR_DOCUMENTS** = **2**
  227. - **SYSTEM_DIR_DOWNLOADS** = **3**
  228. - **SYSTEM_DIR_MOVIES** = **4**
  229. - **SYSTEM_DIR_MUSIC** = **5**
  230. - **SYSTEM_DIR_PICTURES** = **6**
  231. - **SYSTEM_DIR_RINGTONES** = **7**
  232. Description
  233. -----------
  234. Operating System functions. OS Wraps the most common functionality to communicate with the host Operating System, such as:
  235. -Mouse Grabbing
  236. -Mouse Cursors
  237. -Clipboard
  238. -Video Mode
  239. -Date " Time
  240. -Timers
  241. -Environment Variables
  242. -Execution of Binaries
  243. -Command Line
  244. Member Function Description
  245. ---------------------------
  246. .. _class_OS_set_clipboard:
  247. - void **set_clipboard** **(** :ref:`String<class_string>` clipboard **)**
  248. Set clipboard to the OS.
  249. .. _class_OS_get_clipboard:
  250. - :ref:`String<class_string>` **get_clipboard** **(** **)** const
  251. Get clipboard from the host OS.
  252. .. _class_OS_set_video_mode:
  253. - void **set_video_mode** **(** :ref:`Vector2<class_vector2>` size, :ref:`bool<class_bool>` fullscreen, :ref:`bool<class_bool>` resizable, :ref:`int<class_int>` screen=0 **)**
  254. Change the video mode.
  255. .. _class_OS_get_video_mode_size:
  256. - :ref:`Vector2<class_vector2>` **get_video_mode_size** **(** :ref:`int<class_int>` screen=0 **)** const
  257. Return the current video mode size.
  258. .. _class_OS_is_video_mode_fullscreen:
  259. - :ref:`bool<class_bool>` **is_video_mode_fullscreen** **(** :ref:`int<class_int>` screen=0 **)** const
  260. Return true if the current video mode is fullscreen.
  261. .. _class_OS_is_video_mode_resizable:
  262. - :ref:`bool<class_bool>` **is_video_mode_resizable** **(** :ref:`int<class_int>` screen=0 **)** const
  263. Return true if the window is resizable.
  264. .. _class_OS_get_fullscreen_mode_list:
  265. - :ref:`Array<class_array>` **get_fullscreen_mode_list** **(** :ref:`int<class_int>` screen=0 **)** const
  266. Return the list of fullscreen modes.
  267. .. _class_OS_get_screen_count:
  268. - :ref:`int<class_int>` **get_screen_count** **(** **)** const
  269. .. _class_OS_get_current_screen:
  270. - :ref:`int<class_int>` **get_current_screen** **(** **)** const
  271. .. _class_OS_set_current_screen:
  272. - void **set_current_screen** **(** :ref:`int<class_int>` screen **)**
  273. .. _class_OS_get_screen_position:
  274. - :ref:`Vector2<class_vector2>` **get_screen_position** **(** :ref:`int<class_int>` screen=0 **)** const
  275. .. _class_OS_get_screen_size:
  276. - :ref:`Vector2<class_vector2>` **get_screen_size** **(** :ref:`int<class_int>` screen=0 **)** const
  277. .. _class_OS_get_window_position:
  278. - :ref:`Vector2<class_vector2>` **get_window_position** **(** **)** const
  279. .. _class_OS_set_window_position:
  280. - void **set_window_position** **(** :ref:`Vector2<class_vector2>` position **)**
  281. .. _class_OS_get_window_size:
  282. - :ref:`Vector2<class_vector2>` **get_window_size** **(** **)** const
  283. .. _class_OS_set_window_size:
  284. - void **set_window_size** **(** :ref:`Vector2<class_vector2>` size **)**
  285. .. _class_OS_set_window_fullscreen:
  286. - void **set_window_fullscreen** **(** :ref:`bool<class_bool>` enabled **)**
  287. .. _class_OS_is_window_fullscreen:
  288. - :ref:`bool<class_bool>` **is_window_fullscreen** **(** **)** const
  289. .. _class_OS_set_window_resizable:
  290. - void **set_window_resizable** **(** :ref:`bool<class_bool>` enabled **)**
  291. .. _class_OS_is_window_resizable:
  292. - :ref:`bool<class_bool>` **is_window_resizable** **(** **)** const
  293. .. _class_OS_set_window_minimized:
  294. - void **set_window_minimized** **(** :ref:`bool<class_bool>` enabled **)**
  295. .. _class_OS_is_window_minimized:
  296. - :ref:`bool<class_bool>` **is_window_minimized** **(** **)** const
  297. .. _class_OS_set_window_maximized:
  298. - void **set_window_maximized** **(** :ref:`bool<class_bool>` enabled **)**
  299. .. _class_OS_is_window_maximized:
  300. - :ref:`bool<class_bool>` **is_window_maximized** **(** **)** const
  301. .. _class_OS_set_screen_orientation:
  302. - void **set_screen_orientation** **(** :ref:`int<class_int>` orientation **)**
  303. .. _class_OS_get_screen_orientation:
  304. - :ref:`int<class_int>` **get_screen_orientation** **(** **)** const
  305. .. _class_OS_set_keep_screen_on:
  306. - void **set_keep_screen_on** **(** :ref:`bool<class_bool>` enabled **)**
  307. Set keep screen on if true, or goes to sleep by device setting if false. (for Android/iOS)
  308. .. _class_OS_is_keep_screen_on:
  309. - :ref:`bool<class_bool>` **is_keep_screen_on** **(** **)** const
  310. .. _class_OS_set_iterations_per_second:
  311. - void **set_iterations_per_second** **(** :ref:`int<class_int>` iterations_per_second **)**
  312. Set the amount of fixed iterations per second (for fixed process and physics).
  313. .. _class_OS_get_iterations_per_second:
  314. - :ref:`int<class_int>` **get_iterations_per_second** **(** **)** const
  315. Return the amount of fixed iterations per second (for fixed process and physics).
  316. .. _class_OS_set_target_fps:
  317. - void **set_target_fps** **(** :ref:`int<class_int>` target_fps **)**
  318. .. _class_OS_get_target_fps:
  319. - :ref:`float<class_float>` **get_target_fps** **(** **)** const
  320. .. _class_OS_set_time_scale:
  321. - void **set_time_scale** **(** :ref:`float<class_float>` time_scale **)**
  322. .. _class_OS_get_time_scale:
  323. - :ref:`float<class_float>` **get_time_scale** **(** **)**
  324. .. _class_OS_has_touchscreen_ui_hint:
  325. - :ref:`bool<class_bool>` **has_touchscreen_ui_hint** **(** **)** const
  326. .. _class_OS_set_window_title:
  327. - void **set_window_title** **(** :ref:`String<class_string>` title **)**
  328. .. _class_OS_set_low_processor_usage_mode:
  329. - void **set_low_processor_usage_mode** **(** :ref:`bool<class_bool>` enable **)**
  330. Set to true to enable the low cpu usage mode. In this mode, the screen only redraws when there are changes, and a considerable sleep time is inserted between frames. This way, editors using the engine UI only use very little cpu.
  331. .. _class_OS_is_in_low_processor_usage_mode:
  332. - :ref:`bool<class_bool>` **is_in_low_processor_usage_mode** **(** **)** const
  333. Return true if low cpu usage mode is enabled.
  334. .. _class_OS_get_processor_count:
  335. - :ref:`int<class_int>` **get_processor_count** **(** **)** const
  336. .. _class_OS_get_executable_path:
  337. - :ref:`String<class_string>` **get_executable_path** **(** **)** const
  338. Return the path to the current engine executable.
  339. .. _class_OS_execute:
  340. - :ref:`int<class_int>` **execute** **(** :ref:`String<class_string>` path, :ref:`StringArray<class_stringarray>` arguments, :ref:`bool<class_bool>` blocking, :ref:`Array<class_array>` output=Array() **)**
  341. Execute the binary file in given path, optionally blocking until it returns. A process ID is returned.
  342. .. _class_OS_kill:
  343. - :ref:`int<class_int>` **kill** **(** :ref:`int<class_int>` pid **)**
  344. Kill a process ID.
  345. .. _class_OS_shell_open:
  346. - :ref:`int<class_int>` **shell_open** **(** :ref:`String<class_string>` uri **)**
  347. .. _class_OS_get_process_ID:
  348. - :ref:`int<class_int>` **get_process_ID** **(** **)** const
  349. .. _class_OS_get_environment:
  350. - :ref:`String<class_string>` **get_environment** **(** :ref:`String<class_string>` environment **)** const
  351. Return an environment variable.
  352. .. _class_OS_has_environment:
  353. - :ref:`bool<class_bool>` **has_environment** **(** :ref:`String<class_string>` environment **)** const
  354. Return true if an environment variable exists.
  355. .. _class_OS_get_name:
  356. - :ref:`String<class_string>` **get_name** **(** **)** const
  357. Return the name of the host OS. Possible values are: "Android", "BlackBerry 10", "Flash", "Haiku", "iOS", "HTML5", "OSX", "Server", "Windows", "WinRT", "X11"
  358. .. _class_OS_get_cmdline_args:
  359. - :ref:`StringArray<class_stringarray>` **get_cmdline_args** **(** **)**
  360. Return the commandline passed to the engine.
  361. .. _class_OS_get_main_loop:
  362. - :ref:`Object<class_object>` **get_main_loop** **(** **)** const
  363. Return the main loop object (see :ref:`MainLoop<class_mainloop>`).
  364. .. _class_OS_get_date:
  365. - :ref:`Dictionary<class_dictionary>` **get_date** **(** :ref:`bool<class_bool>` utc=false **)** const
  366. .. _class_OS_get_time:
  367. - :ref:`Dictionary<class_dictionary>` **get_time** **(** :ref:`bool<class_bool>` utc=false **)** const
  368. .. _class_OS_get_time_zone_info:
  369. - :ref:`Dictionary<class_dictionary>` **get_time_zone_info** **(** **)** const
  370. .. _class_OS_get_unix_time:
  371. - :ref:`int<class_int>` **get_unix_time** **(** **)** const
  372. .. _class_OS_get_system_time_secs:
  373. - :ref:`int<class_int>` **get_system_time_secs** **(** **)** const
  374. .. _class_OS_set_icon:
  375. - void **set_icon** **(** :ref:`Image<class_image>` icon **)**
  376. .. _class_OS_delay_usec:
  377. - void **delay_usec** **(** :ref:`int<class_int>` usec **)** const
  378. Delay executing of the current thread by given microseconds.
  379. .. _class_OS_delay_msec:
  380. - void **delay_msec** **(** :ref:`int<class_int>` msec **)** const
  381. Delay executing of the current thread by given milliseconds.
  382. .. _class_OS_get_ticks_msec:
  383. - :ref:`int<class_int>` **get_ticks_msec** **(** **)** const
  384. Return the amount of time passed in milliseconds since the engine started.
  385. .. _class_OS_get_splash_tick_msec:
  386. - :ref:`int<class_int>` **get_splash_tick_msec** **(** **)** const
  387. .. _class_OS_get_locale:
  388. - :ref:`String<class_string>` **get_locale** **(** **)** const
  389. Return the host OS locale.
  390. .. _class_OS_get_model_name:
  391. - :ref:`String<class_string>` **get_model_name** **(** **)** const
  392. .. _class_OS_get_custom_level:
  393. - :ref:`String<class_string>` **get_custom_level** **(** **)** const
  394. .. _class_OS_can_draw:
  395. - :ref:`bool<class_bool>` **can_draw** **(** **)** const
  396. Return true if the host OS allows drawing.
  397. .. _class_OS_get_frames_drawn:
  398. - :ref:`int<class_int>` **get_frames_drawn** **(** **)**
  399. Return the total amount of frames drawn.
  400. .. _class_OS_is_stdout_verbose:
  401. - :ref:`bool<class_bool>` **is_stdout_verbose** **(** **)** const
  402. Return true if the engine was executed with -v (verbose stdout).
  403. .. _class_OS_can_use_threads:
  404. - :ref:`bool<class_bool>` **can_use_threads** **(** **)** const
  405. .. _class_OS_is_debug_build:
  406. - :ref:`bool<class_bool>` **is_debug_build** **(** **)** const
  407. .. _class_OS_dump_memory_to_file:
  408. - void **dump_memory_to_file** **(** :ref:`String<class_string>` file **)**
  409. .. _class_OS_dump_resources_to_file:
  410. - void **dump_resources_to_file** **(** :ref:`String<class_string>` file **)**
  411. .. _class_OS_print_resources_in_use:
  412. - void **print_resources_in_use** **(** :ref:`bool<class_bool>` short=false **)**
  413. .. _class_OS_print_all_resources:
  414. - void **print_all_resources** **(** :ref:`String<class_string>` tofile="" **)**
  415. .. _class_OS_get_static_memory_usage:
  416. - :ref:`int<class_int>` **get_static_memory_usage** **(** **)** const
  417. .. _class_OS_get_static_memory_peak_usage:
  418. - :ref:`int<class_int>` **get_static_memory_peak_usage** **(** **)** const
  419. Return the max amount of static memory used (only works in debug).
  420. .. _class_OS_get_dynamic_memory_usage:
  421. - :ref:`int<class_int>` **get_dynamic_memory_usage** **(** **)** const
  422. Return the total amount of dynamic memory used (only works in debug).
  423. .. _class_OS_get_data_dir:
  424. - :ref:`String<class_string>` **get_data_dir** **(** **)** const
  425. .. _class_OS_get_system_dir:
  426. - :ref:`String<class_string>` **get_system_dir** **(** :ref:`int<class_int>` dir **)** const
  427. .. _class_OS_get_unique_ID:
  428. - :ref:`String<class_string>` **get_unique_ID** **(** **)** const
  429. .. _class_OS_is_ok_left_and_cancel_right:
  430. - :ref:`bool<class_bool>` **is_ok_left_and_cancel_right** **(** **)** const
  431. .. _class_OS_get_frames_per_second:
  432. - :ref:`float<class_float>` **get_frames_per_second** **(** **)** const
  433. .. _class_OS_print_all_textures_by_size:
  434. - void **print_all_textures_by_size** **(** **)**
  435. .. _class_OS_print_resources_by_type:
  436. - void **print_resources_by_type** **(** :ref:`StringArray<class_stringarray>` types **)**
  437. .. _class_OS_native_video_play:
  438. - :ref:`int<class_int>` **native_video_play** **(** :ref:`String<class_string>` path, :ref:`float<class_float>` volume, :ref:`String<class_string>` audio_track, :ref:`String<class_string>` subtitle_track **)**
  439. .. _class_OS_native_video_is_playing:
  440. - :ref:`bool<class_bool>` **native_video_is_playing** **(** **)**
  441. .. _class_OS_native_video_stop:
  442. - void **native_video_stop** **(** **)**
  443. .. _class_OS_native_video_pause:
  444. - void **native_video_pause** **(** **)**
  445. .. _class_OS_get_scancode_string:
  446. - :ref:`String<class_string>` **get_scancode_string** **(** :ref:`int<class_int>` code **)** const
  447. .. _class_OS_is_scancode_unicode:
  448. - :ref:`bool<class_bool>` **is_scancode_unicode** **(** :ref:`int<class_int>` code **)** const
  449. .. _class_OS_find_scancode_from_string:
  450. - :ref:`int<class_int>` **find_scancode_from_string** **(** :ref:`String<class_string>` string **)** const
  451. .. _class_OS_set_use_file_access_save_and_swap:
  452. - void **set_use_file_access_save_and_swap** **(** :ref:`bool<class_bool>` enabled **)**
  453. .. _class_OS_alert:
  454. - void **alert** **(** :ref:`String<class_string>` text, :ref:`String<class_string>` title="Alert!" **)**
  455. .. _class_OS_set_thread_name:
  456. - :ref:`int<class_int>` **set_thread_name** **(** :ref:`String<class_string>` name **)**