acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
happening Class Reference
Inheritance diagram for happening:
notify_lock_notifier subparticle quantum memory_quantum quantum_flag manual_reset_happening manual_reset_happening

Public Member Functions

 happening (const ::scoped_string &scopedstrName=nullptr, bool bInitiallyOwn=false, bool bManualReset=false, security_attributes *psecurityattributes=nullptr)
hsynchronization get_synchronization_handle () override
void unlock () override
bool set_happening ()
bool reset_happening ()
void _wait () override
 Session independent waitables (windows version).
bool _wait (const class time &timeWait) override
 waits for an happening for a specified time \lparam time time period to wait for an happening
bool is_signaled () const
void add_notify_lock (::notify_lock *pnotifylock) override
void erase_notify_lock (::notify_lock *pnotifylock) override
void notify_lock_notify_all () override
virtual void unlock (::i32 lCount, ::i32 *pPrevCount=nullptr)
Public Member Functions inherited from subparticle
 subparticle (const ::subparticle &subparticle)
 subparticle (::subparticle &&subparticle)
virtual void initialize (::particle *pparticle)
bool should_disable_referencing_debugging () const
::platform::system * system () const
virtual bool defer_consume_main_arguments (::i32 argc, char_pointer *argv, ::i32 &iArgument)
 virtual bool should_create_sequence_on_synchronicity();
virtual void call ()
virtual void get_debug_title (char_pointer sz, character_count c) const
virtual::string get_short_debug_text (::i32 i) const
virtual void operator() ()
virtual void run ()
virtual class::time get_run_timeout ()
virtual bool subparticle_step ()
inline ::collection::count reference_count () const
inline ::i64 increment_reference_count ()
inline ::i64 decrement_reference_count ()
inline ::i64 replace_reference ()
inline ::i64 release ()
bool is_referencing_debugging_enabled () const
virtual bool _is_set () const
virtual bool _is_ok () const
virtual enum_type get_payload_type () const
virtual void init_task ()
virtual void term_task ()
virtual void destroy ()
virtual void destroy_impl_data ()
virtual void destroy_os_data ()
template<typename TYPE>
::cast< TYPE > cast ()
template<typename TYPE>
::cast< TYPE > cast () const
virtual::subparticle_pointer clone ()
virtual void delete_this ()
virtual void call_member (enum_id eid)
virtual void write_to_stream (::binary_stream &stream)
virtual void read_from_stream (::binary_stream &stream)
virtual class::time timeout () const
virtual void set_timeout (const class time &time)
virtual::e_status lock ()
virtual::e_status lock (const class time &timeWait)
virtual::e_status wait ()
virtual::e_status wait (const class time &timeWait)
virtual::e_status wait (const ::function< bool() > &functionShouldContinue)
virtual void _lock ()
virtual bool _lock (const class time &timeWait)
virtual bool is_locked () const
virtual void init_wait ()
virtual void exit_wait ()
virtual void acquire_ownership ()
virtual void release_ownership ()
virtual character_count sz_len () const
virtual void to_sz (char_pointer sz, character_count len) const
virtual void on_timed_out ()
virtual bool start_notify_lock (::notify_lock *pnotifylock)
virtual void end_notify_lock (::notify_lock *pnotifylock)
Public Member Functions inherited from quantum
 quantum (const ::quantum &quantum)
 quantum (::quantum &&quantum)
bool has_flag (enum_flag eflag) const
void set_flag (enum_flag eflag)
void set_flag (enum_flag eflag, bool bSet)
void clear_flag (enum_flag eflag)
void set_ok_flag ()
void set_nok (enum_flag estatusFailure=e_flag_failure)
void set_modified_flag (bool bModified=true)
bool has_proto_flag () const
void set_fail_flag ()
void set_timed_out_flag ()
void set_persistent_flag (bool bSet=true)
bool has_ok_flag () const
bool nok () const
bool has_timed_out_flag ()
bool has_modified_flag () const
bool has_persistent_flag () const
bool has_shared_flag () const
void set_shared_flag (bool bSet=true)
bool has_finishing_flag () const
void set_finishing_flag ()
void clear_finishing_flag ()
bool has_initialized_flag () const
void set_initialized_flag ()
void clear_initialized_flag ()
bool has_acquired_flag () const
void set_acquired_flag ()
void clear_acquired_flag ()
bool has_own_synchronization_flag () const
void set_own_synchronization_flag (bool bSet=true)
void clear_own_synchronization_flag ()
bool has_already_exists_flag () const
void set_already_exists_flag (bool bSet=true)
void clear_already_exists_flag ()
bool has_running_flag () const
void set_running_flag ()
void clear_running_flag ()
bool has_destroying_flag () const
void set_destroying_flag ()
void clear_destroying_flag ()
bool has_storing_flag () const
bool has_loading_flag () const
void set_storing_flag ()
void set_loading_flag ()
void defer_set_storing_flag ()
void defer_set_loading_flag ()
void set_statically_allocated_flag ()
void set_verbose_flag (bool bVerbose=true)
bool has_verbose_flag () const
bool has_read_only_flag () const
void set_read_only_flag ()
void clear_read_only_flag ()
bool has_owner_flag () const
void set_owner_flag ()
void clear_owner_flag ()
bool is_status_ok () const
bool has_failed_status () const
virtual void call_request (::request *prequest)
 inline void set_realized() { set_flag(e_flag_realized); }
virtual void request (::request *prequest)
virtual void on_request (::request *prequest)
Public Member Functions inherited from memory_quantum
void * operator new (size_t s)
void * operator new[] (size_t s)
void operator delete (void *p)
void operator delete[] (void *p)

Public Attributes

::i32 m_iEventSerialId
Public Attributes inherited from notify_lock_notifier
::comparable_eq_list_base< ::pointer< ::notify_lock > > m_notifylocka
Public Attributes inherited from subparticle
::interlocked_count m_countReference
Public Attributes inherited from quantum
::e_status m_estatus
Public Attributes inherited from quantum_flag
::e_flag m_eflagElement

Member Function Documentation

◆ _wait() [1/2]

void happening::_wait ( )
overridevirtual

Session independent waitables (windows version).

waits for an happening forever

Reimplemented from subparticle.

◆ _wait() [2/2]

bool happening::_wait ( const class time & timeWait)
overridevirtual

waits for an happening for a specified time \lparam time time period to wait for an happening

Returns
true if acquired lock, false timeout, exception on error

Reimplemented from subparticle.

◆ add_notify_lock()

void happening::add_notify_lock ( ::notify_lock * pnotifylock)
overridevirtual

Reimplemented from notify_lock_notifier.

◆ erase_notify_lock()

void happening::erase_notify_lock ( ::notify_lock * pnotifylock)
overridevirtual

Reimplemented from notify_lock_notifier.

◆ get_synchronization_handle()

hsynchronization happening::get_synchronization_handle ( )
overridevirtual

Reimplemented from subparticle.

◆ notify_lock_notify_all()

void happening::notify_lock_notify_all ( )
overridevirtual

Reimplemented from notify_lock_notifier.

◆ unlock() [1/2]

void happening::unlock ( )
overridevirtual

Reimplemented from subparticle.

◆ unlock() [2/2]

void subparticle::unlock ( ::i32 lCount,
::i32 * pPrevCount = nullptr )
virtual

Reimplemented from subparticle.


The documentation for this class was generated from the following files:
  • parallelization/happening.h
  • parallelization/aaa_event.cpp
  • parallelization/happening.cpp