F´ Flight Software - C/C++ Documentation  NASA-v1.6.0
A framework for building embedded system applications to NASA flight quality standards.
Event.hpp
Go to the documentation of this file.
1 // File: Event.hpp
2 // Author: Nathan Serafin (nathan.serafin@jpl.nasa.gov)
3 // Date: 27 July, 2018
4 //
5 // OS-independent wrapper for events.
6 
7 #ifndef EVENT_HPP
8 #define EVENT_HPP
9 
10 #include <Fw/Types/BasicTypes.hpp>
11 #include <Os/TaskId.hpp>
12 
13 namespace Os {
14  class Event {
15  public:
16  enum Timeout {
19  };
20 
21  enum Options {
26  EV_EVENTS_FETCH = 0x80U,
27  };
28 
29  static I32 send(const TaskId& tid, const U32 events);
30  static I32 receive(const U32 events, const U8 options,
31  const I32 timeout, U32* eventsReceived);
32  static I32 clear();
33  };
34 }
35 
36 #endif
Os::Event::clear
static I32 clear()
Os
Definition: File.cpp:7
Os::Event
Definition: Event.hpp:14
Os::Event::EV_EVENTS_WAIT_ALL
@ EV_EVENTS_WAIT_ALL
Definition: Event.hpp:22
Os::Event::send
static I32 send(const TaskId &tid, const U32 events)
U8
uint8_t U8
8-bit unsigned integer
Definition: BasicTypes.hpp:73
Os::Event::EV_NO_WAIT
@ EV_NO_WAIT
Definition: Event.hpp:17
Os::Event::Options
Options
Definition: Event.hpp:21
Os::Event::EV_EVENTS_WAIT_ANY
@ EV_EVENTS_WAIT_ANY
Definition: Event.hpp:23
Os::Event::EV_EVENTS_KEEP_UNWANTED
@ EV_EVENTS_KEEP_UNWANTED
Definition: Event.hpp:25
Os::Event::EV_EVENTS_RETURN_ALL
@ EV_EVENTS_RETURN_ALL
Definition: Event.hpp:24
Os::Event::EV_EVENTS_FETCH
@ EV_EVENTS_FETCH
Definition: Event.hpp:26
Os::Event::EV_WAIT_FOREVER
@ EV_WAIT_FOREVER
Definition: Event.hpp:18
Os::Event::receive
static I32 receive(const U32 events, const U8 options, const I32 timeout, U32 *eventsReceived)
Os::TaskId
Definition: TaskId.hpp:18
Os::Event::Timeout
Timeout
Definition: Event.hpp:16
TaskId.hpp