F´ Flight Software - C/C++ Documentation  NASA-v1.6.0
A framework for building embedded system applications to NASA flight quality standards.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
QueuedComponentBase.hpp
Go to the documentation of this file.
1 /*
2  * ActiveComponentBase.hpp
3  *
4  * Created on: Aug 14, 2012
5  * Author: tcanham
6  */
7 
8 /*
9  * Description:
10  */
11 #ifndef FW_QUEUED_COMPONENT_BASE_HPP
12 #define FW_QUEUED_COMPONENT_BASE_HPP
13 
15 #include <Os/Queue.hpp>
16 #include <Os/Task.hpp>
17 #include <FpConfig.hpp>
18 
19 
20 namespace Fw {
22  public:
23 
24  // Note: Had to make MsgDispatchStatus public for LLVM.
25  typedef enum {
31 
32  PROTECTED:
33  QueuedComponentBase(const char* name);
34  virtual ~QueuedComponentBase();
35  void init(NATIVE_INT_TYPE instance);
38  virtual MsgDispatchStatus doDispatch()=0;
39 #if FW_OBJECT_TO_STRING == 1
40  virtual void toString(char* str, NATIVE_INT_TYPE size);
41 #endif
43  void incNumMsgDropped();
44  PRIVATE:
45  NATIVE_INT_TYPE m_msgsDropped;
46  };
47 
48 }
49 #endif
PassiveComponentBase.hpp
Fw::QueuedComponentBase::~QueuedComponentBase
virtual ~QueuedComponentBase()
Destructor.
Definition: QueuedComponentBase.cpp:14
Fw::QueuedComponentBase::QueuedComponentBase
QueuedComponentBase(const char *name)
Constructor.
Definition: QueuedComponentBase.cpp:10
Fw::QueuedComponentBase::doDispatch
virtual MsgDispatchStatus doDispatch()=0
method to dispatch a single message in the queue.
Os::Queue::QueueStatus
QueueStatus
Definition: Queue.hpp:27
Fw::QueuedComponentBase::m_queue
Os::Queue m_queue
queue object for active component
Definition: QueuedComponentBase.hpp:36
Task.hpp
Fw::PassiveComponentBase
Definition: PassiveComponentBase.hpp:10
Fw::QueuedComponentBase::MSG_DISPATCH_OK
@ MSG_DISPATCH_OK
Dispatch was normal.
Definition: QueuedComponentBase.hpp:26
Fw::QueuedComponentBase::MsgDispatchStatus
MsgDispatchStatus
Definition: QueuedComponentBase.hpp:25
Fw::QueuedComponentBase::MSG_DISPATCH_ERROR
@ MSG_DISPATCH_ERROR
Errors dispatching messages.
Definition: QueuedComponentBase.hpp:28
Fw::ObjBase::init
void init()
Object initializer.
Definition: ObjBase.cpp:27
Fw::QueuedComponentBase
Definition: QueuedComponentBase.hpp:21
FpConfig.hpp
ISF configuration file.
Fw::QueuedComponentBase::MSG_DISPATCH_EXIT
@ MSG_DISPATCH_EXIT
A message was sent requesting an exit of the loop.
Definition: QueuedComponentBase.hpp:29
Fw::QueuedComponentBase::getNumMsgsDropped
NATIVE_INT_TYPE getNumMsgsDropped()
return number of messages dropped
Definition: QueuedComponentBase.cpp:44
Fw::QueuedComponentBase::MSG_DISPATCH_EMPTY
@ MSG_DISPATCH_EMPTY
No more messages in the queue.
Definition: QueuedComponentBase.hpp:27
Fw::QueuedComponentBase::incNumMsgDropped
void incNumMsgDropped()
increment the number of messages dropped
Definition: QueuedComponentBase.cpp:48
NATIVE_INT_TYPE
int NATIVE_INT_TYPE
native integer type declaration
Definition: BasicTypes.hpp:29
Os::Queue
Definition: Queue.hpp:24
Fw::QueuedComponentBase::createQueue
Os::Queue::QueueStatus createQueue(NATIVE_INT_TYPE depth, NATIVE_INT_TYPE msgSize)
Definition: QueuedComponentBase.cpp:31
Fw
Definition: Buffer.cpp:21
Queue.hpp