RTEMS 6.1-rc1
Modules | Files | Data Structures | Functions
Event Manager

This group contains the Event Manager implementation. More...

Modules

 Event Manager Multiprocessing (MP) Support
 This group contains the implementation to support the Event Manager in multiprocessing (MP) configurations.
 

Files

file  event.h
 This header file provides the Event Manager API.
 
file  eventdata.h
 This header file provides data structures used by the implementation and the Application Configuration to ultimately define Thread_Configured_control.
 
file  eventimpl.h
 This header file provides the implementation interfaces of the Event Manager.
 
file  eventreceive.c
 This source file contains the implementation of rtems_event_receive().
 
file  eventseize.c
 This source file contains the implementation of _Event_Seize() and the Event Manager multiprocessing (MP) support system initialization.
 
file  eventsend.c
 This source file contains the implementation of rtems_event_send().
 
file  eventsurrender.c
 This source file contains the implementation of _Event_Surrender().
 
file  systemeventreceive.c
 This source file contains the implementation of rtems_event_system_receive().
 
file  systemeventsend.c
 This source file contains the implementation of rtems_event_system_send().
 

Data Structures

struct  Event_Control
 This structure is used to manage a set of events. More...
 

Functions

rtems_status_code _Event_Seize (rtems_event_set event_in, rtems_option option_set, rtems_interval ticks, rtems_event_set *event_out, Thread_Control *executing, Event_Control *event, Thread_Wait_flags wait_class, States_Control block_state, ISR_lock_Context *lock_context)
 Seizes a set of events. More...
 
rtems_status_code _Event_Surrender (Thread_Control *the_thread, rtems_event_set event_in, Event_Control *event, Thread_Wait_flags wait_class, ISR_lock_Context *lock_context)
 Surrenders a set of events. More...
 

Detailed Description

This group contains the Event Manager implementation.

Function Documentation

◆ _Event_Seize()

rtems_status_code _Event_Seize ( rtems_event_set  event_in,
rtems_option  option_set,
rtems_interval  ticks,
rtems_event_set event_out,
Thread_Control executing,
Event_Control event,
Thread_Wait_flags  wait_class,
States_Control  block_state,
ISR_lock_Context lock_context 
)

Seizes a set of events.

Parameters
event_inis the input event set.
option_setis the option set.
ticksis the optional timeout in clock ticks.
event_out[out]is the output event set.
executing[in,out]is the executing thread.
event[in,out]is the source event set.
wait_classis the thread wait class of the source event set.
block_stateis the thread blocking state of the source event set.
lock_context[in,out]is the lock context set up by _Thread_Get().
Return values
RTEMS_SUCCESSFULThe requested operation was successful.
RTEMS_UNSATISFIEDThe events of interest were not immediately available.
RTEMS_TIMEOUTThe events of interest were not available within the specified timeout interval.

◆ _Event_Surrender()

rtems_status_code _Event_Surrender ( Thread_Control the_thread,
rtems_event_set  event_in,
Event_Control event,
Thread_Wait_flags  wait_class,
ISR_lock_Context lock_context 
)

Surrenders a set of events.

Parameters
the_thread[in,out]is the thread of the event set.
event_inis the set of events to post.
event[in,out]is the target event set.
wait_classis the thread wait class of the target event set.
lock_context[in,out]is the lock context set up by _Thread_Get().
Return values
RTEMS_SUCCESSFULThe requested operation was successful.