51 class CLASS_DECL_ACME system :
207 void on_set_platform()
override;
210 void on_initialize_particle()
override;
213 virtual void do_graphics_and_windowing_system_factory();
216 void initialize_system();
218 virtual enum_trace_level get_trace_level();
221 virtual void initialize_matter();
226 ::i64 increment_reference_count()
override;
229 ::i64 decrement_reference_count()
override;
234 virtual ::mathematics::mathematics * mathematics();
236 virtual ::image::imaging * imaging();
242 inline ::pointer<::platform::node> & node() {
return m_pnode; }
244 inline class ::base64 * base64() {
return m_pbase64; };
246 inline ::xml::xml * xml() {
return m_pxml.get() ? m_pxml.get() : _xml(); }
248 inline ::file_system * file_system()
const {
return m_pfilesystem; }
250 inline ::directory_system * directory_system()
const {
return m_pdirectorysystem; }
252 inline ::path_system * path_system()
const {
return m_ppathsystem; }
254 virtual ::platform::system_factory* system_factory();
256 virtual ::xml::xml * _xml();
260 inline ::datetime::datetime * datetime() {
return m_pdatetime; }
262 inline ::text::table * texttable() {
return m_ptexttable; }
264 inline ::internet::internet* internet() {
return m_pinternet; }
265 inline ::url::url_context* url() {
return m_purlcontext; }
267 ::particle * ui_destroyed_synchronization() {
return m_pmutexUiDestroyed; }
269 virtual ::nano::nano * nano();
271 virtual ::micro::user * micro_user();
272 virtual ::acme::windowing::windowing * acme_windowing();
273 virtual ::windowing::windowing * windowing();
275 virtual void defer_innate_ui();
277 virtual ::innate_ui::innate_ui * innate_ui();
281 inline ::crypto::crypto * crypto() {
return m_pcrypto; }
283 virtual class ::manager_room * manager_room();
289 virtual ::draw2d::draw2d * draw2d()
const;
290 virtual ::write_text::write_text * write_text()
const;
294 virtual string get_system_platform();
295 virtual string get_system_configuration();
301 virtual void defer_audio();
303 virtual bool has_audio();
305 virtual void init1();
307 virtual void init2();
309 void set_current_handles()
override;
311 virtual void TermSystem();
314 virtual void erase_from_any_hook(::matter * pmatter);
317 virtual void create_os_node();
319 virtual string os_get_user_theme();
322 template <
typename BASE_TYPE >
323 ::pointer<BASE_TYPE> create(const ::scoped_string & scopedstrComponent, const ::scoped_string & scopedstrImplementation)
326 auto & pfactory = this->factory(strComponent, strImplementation);
331 throw ::exception(error_resource);
335 auto p = pfactory->__call__create< BASE_TYPE >(
this);
349 virtual ::u32 crc32(::u32 uCrc, const ::block &
block);
352 virtual void create_session(::collection::index iEdge = 0);
354 virtual ::pointer<::platform::session>on_create_session(::collection::index iEdge);
356 virtual ::platform::session* session(::collection::index iEdge = 0);
361 virtual void erase_session(::collection::index iEdge);
364 void on_request(::request* prequest)
override;
367 void process_exit_status(::particle * pparticle, const ::e_status & estatus);
370 virtual ::platform::application * get_main_app();
373 virtual ::pointer<::factory::factory> & folder_factory();
381#ifdef WINDOWS_DESKTOP
383 void system_construct(hinstance hinstanceThis, hinstance hPrevInstance, char_pointer pCmdLine, ::i32 nCmdShow);
385#elif defined(UNIVERSAL_WINDOWS)
387 void system_construct(const ::string_array_base & stra);
395 virtual void speak(const ::scoped_string& scopedstr, const ::scoped_string& scopedstrLang =
"en-us", enum_gender egender = e_gender_none);
398 virtual ::pointer<::factory::factory> & node_factory();
401 virtual void inline_init();
402 virtual void inline_term();
405 virtual void process_init();
408 virtual void call_init_system();
414 virtual void on_start_system();
417 virtual void defer_post_initial_request();
420 virtual void canonical_system_main();
422 virtual void system_main();
425 void on_pre_run_task()
override;
428 virtual void on_branch_system_from_main_thread_startup(
::task_handler * ptaskhandler);
431 void main()
override;
434 virtual ::pointer<::platform::application> new_app(const ::scoped_string & scopedstrAppId);
440 virtual void on_end();
443 virtual void report_system_instance();
448 virtual class ::time get_update_poll_time(const ::atom & atom);
451 virtual ::acme::library* on_get_library(const ::scoped_string & scopedstrLibrary);
459 virtual void open_profile_link(
string strUrl,
string strProfile,
string strTarget);
460 virtual void open_link(
string strUrl,
string strProfile,
string strTarget);
461 virtual void open_url(
string strUrl,
string strProfile,
string strTarget);
474 void init_task()
override;
475 void term_task()
override;
478 virtual string __get_text(const ::scoped_string & scopedstr);
562 ::task_group * task_group(::enum_priority epriority = ::e_priority_none);
564 ::task_tool * task_tool(::enum_task_tool etool);
568 static inline ::atom atom(const ::std::type_info & info);
569 static inline ::atom atom(const ::scoped_string & scopedstr);
570 static inline ::atom atom(const ::scoped_string & scopedstr);
571 static inline ::atom atom(::i64 i);
573 inline ::atom atom(const ::payload &
payload);
574 inline ::atom atom(
const property & prop);
576 virtual void check_exit();
578 virtual ::regular_expression_pointer create_regular_expression(const ::scoped_string & scopedstrStyle, const ::scoped_string & scopedstr);
580 virtual ::pointer<::regular_expression::context> get_regular_expression_context(const ::scoped_string & scopedstrStyle);
582 virtual ::regular_expression_pointer compile_pcre(const ::scoped_string & scopedstr);
583 virtual ::pointer<::regular_expression::context> get_pcre_context();
586 virtual void get_public_internet_domain_extension_list(string_array_base & stra);
587 virtual ::string fetch_public_internet_domain_extension_list_text();
589 virtual void system_id_update(::i64 iUpdate, ::i64 iPayload);
595 virtual void add_signal_handler(const ::signal_handler& signalhandler, const ::atom & atomSignal);
597 virtual void erase_signal_handler(::signal_handler::base * pbase);
601 virtual void node_will_finish_launching();
603 virtual void on_open_untitled_file();
605 virtual void on_open_file(const ::scoped_string & scopedstrFile);
634 ::pointer < ::compress> _new_compress(const ::scoped_string & scopedstrImplementation);
635 ::pointer < ::uncompress> _new_uncompress(const ::scoped_string & scopedstrImplementation);
637 ::pointer < ::compress> new_zlib_compress();
638 ::pointer < ::uncompress> new_zlib_uncompress();
640 virtual void _compress(const ::payload & payloadTarget, const ::payload & payloadSource, const ::scoped_string & scopedstrImplementation);
641 virtual void _uncompress(const ::payload& payloadTarget, const ::payload& payloadSource, const ::scoped_string& scopedstrImplementation, transfer_progress_function transferprogressfunction = {});
643 virtual void zlib_compress(const ::payload& payloadTarget, const ::payload& payloadSource);
644 virtual void zlib_uncompress(const ::payload& payloadTarget, const ::payload& payloadSource, transfer_progress_function transferprogressfunction = {});
646 virtual bool fast_is_decompressable_folder(const ::file::path & path);
652 bool _handle_call(
::payload &
payload, const ::scoped_string & scopedstrObject, const ::scoped_string & scopedstrMember,
::property_set & propertyset)
override;
657 virtual string get_latest_deployment_number(const ::scoped_string & scopedstrBranch);
660 void destroy()
override;
684 virtual ::string implementation_name(const ::scoped_string & scopedstrComponent, const ::scoped_string & scopedstrImplementation);
685 virtual ::string library_name(const ::scoped_string & scopedstrComponent, const ::scoped_string & scopedstrImplementation);
691 virtual ::file::path local_get_matter_cache_path();
692 virtual ::file::path local_get_matter_cache_path(
string strMatter);
693 virtual ::file::path local_get_matter_path();
694 virtual ::file::path local_get_matter_path(
string strMatter);
696 virtual void install_progress_add_up(::i32 iAddUp = 1);
699 virtual ::string get_application_server_name();
702 virtual ::color::color background_color()
const;
704 virtual ::f64 luminance()
const;
706 virtual void set_background_color(const ::color::color & color);
709 virtual bool dark_mode()
const;
710 virtual void on_application_dark_mode_change();
716 virtual void set_dark_mode(
bool bDark);
718 virtual ::color::color get_simple_ui_color(const ::e_element & eelement, const ::user::e_state & estate = ::user::e_state_none);
728 virtual bool defer_component_factory(const ::scoped_string & scopedstrComponent);
729 virtual bool _defer_component_factory(const ::scoped_string & scopedstrComponent);
745 ::pointer<::aqua::audio> m_paudio;
747 ::pointer<::aqua::multimedia> m_pmultimedia;
749 ::pointer<::aqua::audio_mixer> m_paudiomixer;
751 ::pointer<::aqua::estamira> m_pestamira;