acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
platform::platform Class Reference
Inheritance diagram for platform::platform:
acme::acme particle platform::system acme::system

Public Member Functions

virtual bool is_console () const
virtual bool is_desktop_system () const
virtual bool is_sandboxed () const
virtual::string command_line () const
virtual void calculate_command_line ()
::critical_section * channel_critical_section ()
::critical_section * message_dispatch_critical_section ()
::critical_section * sequence_critical_section ()
void initialize_system (::i32 argc, char_pointer *args, char_pointer *envp) override
void platform_initialize ()
void platform_finalize ()
void set_args (::i32 argc, char_pointer *args, wchar_t **wargs)
string _get_args (::collection::index iArg) const
::collection::count get_argc ()
::i32 * get_pargc ()
char_pointer ** get_pargs ()
char_pointer * get_args ()
bool is_verbose_log () const
inline ::collection::count _get_argc () const
string get_executable () const
string get_argument1 (::collection::index iArgument) const
string arguments_from1 (::collection::index iArgument) const
bool has_argument (const ::scoped_string &scopedArgument) const
inline ::collection::count get_argument_count1 () const
string_array_base get_arguments ()
::string get_argument_begins_eat (const ::scoped_string &scopedstrPrefix)
::string_array_base get_argument_options (const ::scoped_string &scopedstrArgument)
string get_arg (::collection::index i) const
string get_env (const ::scoped_string &scopedstrVariableName) const
::i32 get_status ()
void set_status (::i32 iStatus)
virtual void set_resource_block (const_char_pointer pstart, const_char_pointer pend)
void defer_initialize_platform ()
void factory_initialize ()
void factory_terminate ()
void delete_all_release_on_end ()
::factory::factory_pointer & factory ()
::factory::factory_pointer & factory (const ::scoped_string &scopedstrLibrary)
::factory::factory_pointer & factory (const ::scoped_string &scopedstrComponent, const ::scoped_string &scopedstrImplementation)
::factory::factory * component_factory (const ::scoped_string &scopedstrComponent)
virtual::string component_factory_implementation_name (const ::scoped_string &scopedstrComponent)
::factory::factory_item_interface * find_factory_item (const ::platform::type &type)
::factory::factory_item_interface * find_factory_item (const ::platform::type &type, const ::atom &atomFactory)
bool has_factory_item (const ::platform::type &type)
::factory::factory * get_factory (const ::atom &atomFactory)
virtual ::pointer<::acme::library > create_library (const ::scoped_string &scopedstrLibrary)
virtual ::pointer<::acme::library > create_library_dynamically (const ::scoped_string &scopedstrLibrary)
virtual ::pointer<::acme::library > create_library_statically (const ::scoped_string &scopedstrLibrary)
virtual ::pointer<::acme::library > & library (const ::scoped_string &scopedstr)
virtual ::pointer<::factory::factory > & impact_factory (const ::scoped_string &scopedstrComponent, const ::scoped_string &scopedstrImplementation)
::particle * ui_destroyed_synchronization ()
critical_section * globals_critical_section ()
critical_section * factory_critical_section ()
::critical_section * demangle_critical_section ()
release_time_for_project as_release_time_for_project (const_char_pointer pszStatic)
::operating_system::dynamic_library * dynamic_library ()
Public Member Functions inherited from acme::acme
class::time start_time ()
virtual::platform::platform * platform ()
::heap::management * heap ()
Public Member Functions inherited from particle
 particle (const ::particle &particle)
 particle (::particle &&particle)
bool is_null () const
bool is_set () const
bool is_ok () const
bool nok () const
void initialize (::particle *pparticle) override
void _initialize_particle (::particle *pparticle)
virtual void _on_initialize_app_consumer ()
bool _is_ok () const override
virtual bool should_run () const
virtual void on_notify (::particle *pparticle, enum_id eid)
virtual bool on_command_final (const ::atom &atom, ::user::activation_token *puseractivationtoken)
virtual bool check_pipe_node_client_executable_paths (const ::file::path &pathNode, const ::file::path &pathClient)
inline ::particle * trace_this () const
virtual enum_trace_level main_trace_level () const
bool is_debug_trace_level () const
virtual::particle * get_context_particle ()
inline ::particle * synchronization () const
void set_synchronization (::particle *pparticleSynchronization)
void defer_create_synchronization ()
void operator() (::topic *ptopic, ::handler_context *phandlercontext) override
virtual void on_initialize_particle ()
virtual::topic_pointer create_topic (const ::atom &atom)
virtual::extended_topic_pointer create_extended_topic (const ::atom &atom)
::mathematics::mathematics * mathematics () const
::prototype::prototype * prototype () const
::image::image_context * image () const
::image::imaging * imaging () const
::draw2d::draw2d * draw2d () const
::write_text::write_text * write_text () const
class::user::user * user () const
::platform::system * system () const
::platform::session * session () const
::platform::application * application () const
::platform::node * node () const
void delete_this () override
::datetime::datetime * datetime () const
::internet::internet * internet () const
::url::url_context * url () const
::crypto::crypto * crypto () const
::nano::nano * nano () const
::directory_context * directory () const
::directory_system * directory_system () const
::file_context * file () const
::file_system * file_system () const
::path_system * path_system () const
virtual::file::watcher * file_watcher () const
::pointer< ::file::item > file_item (const ::file::path &path)
::networking::networking * networking () const
::platform::http * http () const
virtual::factory::factory_pointer & factory () const
virtual::factory::factory_pointer & factory (const ::scoped_string &scopedstrLibrary) const
virtual::factory::factory_pointer & factory (const ::scoped_string &scopedstrComponent, const ::scoped_string &scopedstrImplementation) const
virtual::factory::factory * component_factory (const ::scoped_string &scopedstrComponent) const
virtual void install_message_routing (::channel *pchannel)
virtual::payload get_result_payload ()
virtual void set_finish ()
virtual bool is_branch_current () const
virtual const_char_pointer topic_text () const
virtual enum_trace_category trace_category (const ::particle *pparticle) const
virtual enum_trace_category trace_category () const
virtual::platform::tracer * tracer () const
virtual::trace_statement trace_statement () const
virtual::trace_statement & trace_statement_prefix (::trace_statement &statement) const
virtual::trace_statement log_statement () const
virtual::trace_statement debug () const
virtual::trace_statement information () const
virtual::trace_statement warning () const
virtual::trace_statement error () const
virtual::trace_statement fatal () const
virtual void tracef (enum_trace_level etracelevel, const_char_pointer pszFormat,...) const
virtual void formatf_trace (enum_trace_level etracelevel, const_char_pointer pszFormat, va_list &arguments) const
template<typename... Args>
void print_line (std::format_string< Args... > fmt, Args &&... args) const
template<typename... Args>
void err_line (std::format_string< Args... > fmt, Args &&... args) const
virtual void print_line (const ::scoped_string &scopedstr) const
virtual void print_out (const ::scoped_string &scopedstr) const
virtual void printf_line (const_char_pointer pszFormat,...) const
virtual void printf_out (const_char_pointer pszFormat,...) const
virtual void err_line (const ::scoped_string &scopedstr) const
virtual void err_out (const ::scoped_string &scopedstr) const
virtual void errf_line (const_char_pointer pszFormat,...) const
virtual void errf_out (const_char_pointer pszFormat,...) const
virtual void debugf (const_char_pointer pszFormat,...) const
virtual void informationf (const_char_pointer pszFormat,...) const
virtual void warningf (const_char_pointer pszFormat,...) const
virtual void errorf (const_char_pointer pszFormat,...) const
virtual void fatalf (const_char_pointer pszFormat,...) const
template<typename... Args>
void trace (enum_trace_level etracelevel, std::format_string< Args... > fmt, Args &&... args) const
template<typename... Args>
void debug (std::format_string< Args... > fmt, Args &&...args) const
template<typename... Args>
void information (std::format_string< Args... > fmt, Args &&... args) const
template<typename... Args>
void warning (std::format_string< Args... > fmt, Args &&... args) const
template<typename... Args>
void error (std::format_string< Args... > fmt, Args &&... args) const
template<typename... Args>
void fatal (std::format_string< Args... > fmt, Args &&... args) const
void trace (enum_trace_level etracelevel, const ::scoped_string &scopedstr) const
void debug (const scoped_string &scopedstr) const
void information (const scoped_string &scopedstr) const
void warning (const scoped_string &scopedstr) const
void error (const scoped_string &scopedstr) const
void fatal (const scoped_string &scopedstr) const
virtual lresult message_handler (::user::enum_message eusermessage, ::wparam wparam, ::lparam lparam)
 virtual void send_call(const ::call & call);
virtual void handle (::topic *ptopic, ::handler_context *phandlercontext)
virtual void handle (const ::call &call)
virtual void handle_message (::message::message *pmessage)
virtual void handle_item (::item *pitem)
virtual lresult message_call (::user::enum_message eusermessage, ::wparam wparam={}, ::lparam lparam={})
virtual void call_handle (::topic *ptopic, ::handler_context *phandlercontext)
virtual void call_handle_message (::message::message *pmessage)
virtual void call_handle_item (::item *pitem)
virtual bool _handle_uri (const ::scoped_string &scopedstrUri)
virtual bool _handle_call (::payload &payload, const ::scoped_string &scopedstrObject, const ::scoped_string &scopedstrMember, ::property_set &propertyset)
virtual void call_member (::i64 hi)
virtual::lresult call_message (const ::user::enum_message &emessage, ::wparam wparam={}, ::lparam lparam={}, ::particle *pparticle=nullptr)
virtual::lresult call_id_topic (const ::enum_id &eid, ::wparam wparam={}, ::lparam lparam={}, ::particle *pparticle=nullptr)
virtual::payload realize ()
virtual void set_generic_object_name (const ::scoped_string &scopedstrName)
virtual void set_library_name (const ::scoped_string &scopedstrLibraryName)
virtual void set_application_id (const ::scoped_string &scopedstrApplicationId)
virtual::particle * get_taskpool_container ()
virtual::task_pool * taskpool ()
virtual const_char_pointer debug_note () const
virtual bool should_run_async () const
virtual ::pointer<::user_interface::message_box > message_box (const ::scoped_string &scopedstrMessage, const ::scoped_string &scopedstrTitle=nullptr, const ::user::e_message_box &emessagebox={}, const ::scoped_string &scopedstrDetails=nullptr, const ::string_array_base *pstraIconUrl=nullptr)
virtual ::pointer<::user_interface::message_box > message_box (const ::exception &exception, const ::scoped_string &scopedstrMessage=nullptr, const ::scoped_string &scopedstrTitle=nullptr, const ::user::e_message_box &emessagebox={}, const ::scoped_string &scopedstrDetails=nullptr, const ::string_array_base *pstraIconUrl=nullptr)
virtual::file_pointer get_file (const ::payload &payloadFile, ::file::e_open eopen, ::pointer< ::file::exception > *pfileexception=nullptr)
template<typename BASE_TYPE>
inline ::pointer< BASE_TYPE > __call__create (::factory::factory *pfactory=nullptr)
template<typename TYPE>
inline ::pointer< TYPE > __call__create_new ()
template<typename TYPE>
inline ::pointer< TYPE > __call__create_new_clone (TYPE *p)
template<typename T, typename ... Args>
::pointer< T > __call__allocate_and_initialize (Args &&... args)
template<typename TYPE>
TYPE * __initialize (TYPE *p)
template<typename TYPE>
inline ::pointer< TYPE > __initialize (::pointer< TYPE > &&p)
template<typename T>
::pointer< T > create_clone (const ::pointer< T > &psource)
template<typename T>
::pointer< T > create_clone (const T *pSource)
 consumes a referer
template<typename T>
::pointer< T > __call__create_new_clone (const T *pSource)
 consumes a referer
virtual void app_post (const ::procedure &procedure)
virtual::task_pointer app_fork (const ::procedure &procedure)
virtual void task_post (const ::procedure &procedure)
virtual::task_pointer task_fork (const ::procedure &procedure)
virtual void user_send (const ::procedure &procedure)
dispatch_arrayø user_sendø ()
virtual void user_post (const ::procedure &procedure)
dispatch_arrayø user_postø ()
virtual void main_send (const ::procedure &procedure)
dispatch_arrayø main_sendø ()
virtual void main_post (const ::procedure &procedure)
dispatch_arrayø main_postø ()
virtual class::time get_default_run_timeout ()
virtual void send (const ::procedure &procedure)
dispatch_arrayø sendø ()
virtual void post (const ::procedure &procedure)
dispatch_arrayø postø ()
virtual void handle (bool bSynchronously, const ::procedure &procedure)
virtual void dispatch_procedure (enum_dispatch edispatch, const procedure &procedure)
virtual void dispatch (const dispatch_array2 &dispatcha)
template<typename BASE_TYPE>
bool __call__defer_construct (::pointer< BASE_TYPE > &ptype, ::factory::factory *pfactory=nullptr)
template<typename TYPE>
bool __calldefer_construct_newø (::pointer< TYPE > &ptype)
template<typename TYPE>
bool __call__defer_raw_construct_new (::pointer< TYPE > &ptype)
template<typename BASE_TYPE>
void __call__construct (::pointer< BASE_TYPE > &ptype, ::factory::factory *pfactory=nullptr)
template<typename BASE_TYPE>
void __call__construct_by_type (::pointer< BASE_TYPE > &ptype, const ::platform::type &type, ::factory::factory *pfactory=nullptr)
virtual ::pointer<::particle > __call__create_by_type (const ::platform::type &type, ::factory::factory *pfactory=nullptr)
virtual ::pointer<::particle > __call__create_by_custom_id (const ::type_custom_id &typecustomid, ::factory::factory *pfactory=nullptr)
virtual ::pointer<::particle > __call__create_by_ipair (const ::type_iptr_pair &ipair, ::factory::factory *pfactory=nullptr)
template<typename TYPE>
void __call__construct_new (::pointer< TYPE > &ptype)
template<typename TYPE>
void __call__raw_construct (::pointer< TYPE > &p, ::factory::factory *pfactory=nullptr COMMA_REFERENCING_DEBUGGING_PARAMETERS_DECLARATION)
template<typename T, typename ... Args>
void __call__emplace_new (::pointer< T > &p, Args &&... args)
template<typename T, typename ... Args>
void __call__emplace_new (::auto_pointer< T > &p, Args &&... args)
template<typename BASE_TYPE>
inline ::pointer< BASE_TYPE > __raw_create (::factory::factory *pfactory=nullptr)
virtual void * new_object (const_char_pointer psz)
virtual string as_string () const
virtual void kick_idle ()
particle & operator= (const particle &particle)
virtual::user::user * user ()
virtual void process_owned_procedure_list (::procedure_list_base &procedurelist, bool &bHandled)
virtual memory_file_pointer create_memory_file ()
virtual memory_file_pointer create_memory_file (::memory_base &memory)
virtual memory_file_pointer create_memory_file (const ::block &block)
virtual memory_file_pointer create_memory_file_as_copy (const memory &memory)
virtual memory_file_pointer create_memory_file_by_reading (::file::file *pfile)
virtual void assert_particle_ok () const
template<typename BASE_TYPE>
inline ::pointer< BASE_TYPE > __call__create (::factory::factory *pfactory)
template<typename TYPE>
inline ::pointer< TYPE > __call__create_new ()
template<typename TYPE>
inline ::pointer< TYPE > __call__create_new_clone (TYPE *psrc)
template<typename TYPE>
void __call__raw_construct (::pointer< TYPE > &p, ::factory::factory *pfactory COMMA_REFERENCING_DEBUGGING_PARAMETERS_DEFINITION)
template<typename BASE_TYPE>
inline ::pointer< BASE_TYPE > __raw_create (::factory::factory *pfactory)
template<typename TYPE>
bool __call__defer_construct (::pointer< TYPE > &p, ::factory::factory *pfactory)
template<typename TYPE>
void __call__construct_by_type (::pointer< TYPE > &p, const ::platform::type &type, ::factory::factory *pfactory)
virtual void call ()

Public Attributes

bool m_bConsole: 1
::critical_section m_criticalsection
::e_display m_edisplay
::user::e_activation m_eactivation
::i32 m_argc = 0
char_pointer * m_args = nullptr
char_pointer * m_envp = nullptr
::platform::system * m_psystem
::critical_section m_criticalsectionGlobals
::critical_section m_criticalsectionFactory
::critical_section m_criticalsectionDemangle
::memory_counter * m_pmemorycounter
bool m_bOutputDebugString
bool m_bCommandLineCalculated = false
string m_strCommandLineCalculated
bool m_bCommandLineSystemNative = false
string m_strCommandLineSystemNative
::block m_blockMatter
::acme::library_map m_mapLibrary
::factory::factory_pointer m_pfactory
::factory::factory_map m_factorymap
::factory::component_factory_map m_componentfactorymap
::pointer< ::operating_system::dynamic_library > m_pdynamiclibrary
::i32 m_iProcessStatus = 0
bool m_bVerboseLog
::windowing::enum_windowing m_ewindowing
::windowing::enum_operating_ambient m_edesktop
::windowing::enum_toolkit m_etoolkit
::critical_section m_criticalsectionSystemHeap
::critical_section m_criticalsectionChannel
::critical_section m_criticalsectionSequence
::critical_section m_criticalsectionMessageDispatch
Public Attributes inherited from acme::acme
::heap::management * m_pheapmanagement
class::time m_timeStart
Public Attributes inherited from particle
mutable::platform::application * m_papplication
mutable::particle_pointer m_pparticleSynchronization

Static Public Attributes

::platform::platform * s_pplatform = nullptr

Additional Inherited Members

Static Public Member Functions inherited from particle
static class::platform::platform * platform ()
Protected Member Functions inherited from acme::acme
void acme_construct ()
void acme_destruct ()
void initialize_memory_management ()
void finalize_memory_management ()
virtual void on_acme_before_destroy ()

Member Function Documentation

◆ factory()

factory::factory_pointer & platform::platform::factory ( const ::scoped_string & scopedstrComponent,
const ::scoped_string & scopedstrImplementation )

BIG WARNING, putting logs in this factory thing can compromise debuging and referencing couutning debugging, because the trace_statment function uses referencing counting debuggin, and frequently this factory function is used during eartly times in the allocation of an object.

◆ initialize_system()

void platform::platform::initialize_system ( ::i32 argc,
char_pointer * args,
char_pointer * envp )
overridevirtual

Reimplemented from acme::acme.


The documentation for this class was generated from the following files: