F´ Flight Software - C/C++ Documentation  devel
A framework for building embedded system applications to NASA flight quality standards.
Fw::ActiveComponentBase Class Reference

#include <Fw/Comp/ActiveComponentBase.hpp>

Inheritance diagram for Fw::ActiveComponentBase:
Fw::QueuedComponentBase Fw::PassiveComponentBase Fw::ObjBase Drv::BlockDriverComponentBase Svc::ActiveLoggerComponentBase Svc::ActiveRateGroupComponentBase Svc::ActiveTextLoggerComponentBase Svc::BufferAccumulatorComponentBase Svc::BufferLoggerComponentBase Svc::CmdSequencerComponentBase Svc::ComLoggerComponentBase Svc::ComQueueComponentBase Svc::CommandDispatcherComponentBase Svc::DpCatalogComponentBase Svc::DpManagerComponentBase Svc::DpWriterComponentBase Svc::FileDownlinkComponentBase Svc::FileManagerComponentBase Svc::FileUplinkComponentBase Svc::PrmDbComponentBase Svc::TlmChanComponentBase Svc::TlmPacketizerComponentBase

Public Types

enum  { ACTIVE_COMPONENT_EXIT }
 
- Public Types inherited from Fw::QueuedComponentBase
enum  MsgDispatchStatus { MSG_DISPATCH_OK , MSG_DISPATCH_EMPTY , MSG_DISPATCH_ERROR , MSG_DISPATCH_EXIT }
 

Public Member Functions

void start (Os::Task::ParamType priority=Os::Task::TASK_DEFAULT, Os::Task::ParamType stackSize=Os::Task::TASK_DEFAULT, Os::Task::ParamType cpuAffinity=Os::Task::TASK_DEFAULT, Os::Task::ParamType identifier=Os::Task::TASK_DEFAULT)
 called by instantiator when task is to be started More...
 
void exit ()
 exit task in active component More...
 
Os::Task::Status join ()
 Join the thread. More...
 
 DEPRECATED (Os::Task::Status join(void **value_ptr), "Switch to .join()")
 Join to thread with discarded value_ptr. More...
 
- Public Member Functions inherited from Fw::PassiveComponentBase
void setIdBase (const U32)
 Set the ID base. More...
 
U32 getIdBase () const
 

Protected Types

enum  Lifecycle { CREATED , DISPATCHING , FINALIZING , DONE }
 Tracks the lifecycle of the component. More...
 

Protected Member Functions

 ActiveComponentBase (const char *name)
 Constructor. More...
 
virtual ~ActiveComponentBase ()
 Destructor. More...
 
void init (NATIVE_INT_TYPE instance)
 initialization code More...
 
virtual void preamble ()
 A function that will be called before the event loop is entered. More...
 
MsgDispatchStatus dispatch ()
 The function that will dispatching messages. More...
 
virtual void finalizer ()
 A function that will be called after exiting the loop. More...
 
- Protected Member Functions inherited from Fw::QueuedComponentBase
 QueuedComponentBase (const char *name)
 Constructor. More...
 
virtual ~QueuedComponentBase ()
 Destructor. More...
 
void init (NATIVE_INT_TYPE instance)
 initialization function More...
 
Os::Queue::QueueStatus createQueue (NATIVE_INT_TYPE depth, NATIVE_INT_TYPE msgSize)
 
virtual MsgDispatchStatus doDispatch ()=0
 method to dispatch a single message in the queue. More...
 
NATIVE_INT_TYPE getNumMsgsDropped ()
 return number of messages dropped More...
 
void incNumMsgDropped ()
 increment the number of messages dropped More...
 
- Protected Member Functions inherited from Fw::PassiveComponentBase
 PassiveComponentBase (const char *name)
 Named constructor. More...
 
virtual ~PassiveComponentBase ()
 Destructor. More...
 
void init (NATIVE_INT_TYPE instance)
 Initialization function. More...
 
NATIVE_INT_TYPE getInstance () const
 
- Protected Member Functions inherited from Fw::ObjBase
 ObjBase (const char *name)
 ObjBase constructor. More...
 
virtual ~ObjBase ()
 Destructor. More...
 
void init ()
 Object initializer. More...
 

Protected Attributes

Os::Task m_task
 task object for active component More...
 
- Protected Attributes inherited from Fw::QueuedComponentBase
Os::Queue m_queue
 queue object for active component More...
 

Detailed Description

Definition at line 20 of file ActiveComponentBase.hpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
ACTIVE_COMPONENT_EXIT 

message to exit active component task

Definition at line 31 of file ActiveComponentBase.hpp.

◆ Lifecycle

Tracks the lifecycle of the component.

Enumerator
CREATED 

Initial stage, call preamble.

DISPATCHING 

Component is dispatching messages.

FINALIZING 

Penultimate stage, call finalizer.

DONE 

Done, doing nothing.

Definition at line 37 of file ActiveComponentBase.hpp.

Constructor & Destructor Documentation

◆ ActiveComponentBase()

Fw::ActiveComponentBase::ActiveComponentBase ( const char *  name)
explicitprotected

Constructor.

Definition at line 33 of file ActiveComponentBase.cpp.

◆ ~ActiveComponentBase()

Fw::ActiveComponentBase::~ActiveComponentBase ( )
protectedvirtual

Destructor.

Definition at line 37 of file ActiveComponentBase.cpp.

Member Function Documentation

◆ DEPRECATED()

Fw::ActiveComponentBase::DEPRECATED ( Os::Task::Status   joinvoid **value_ptr,
"Switch to .join()"   
)

Join to thread with discarded value_ptr.

◆ dispatch()

ActiveComponentBase::MsgDispatchStatus Fw::ActiveComponentBase::dispatch ( )
protected

The function that will dispatching messages.

Definition at line 138 of file ActiveComponentBase.cpp.

◆ exit()

void Fw::ActiveComponentBase::exit ( )

exit task in active component

Definition at line 74 of file ActiveComponentBase.cpp.

◆ finalizer()

void Fw::ActiveComponentBase::finalizer ( )
protectedvirtual

A function that will be called after exiting the loop.

Definition at line 149 of file ActiveComponentBase.cpp.

◆ init()

void Fw::ActiveComponentBase::init ( NATIVE_INT_TYPE  instance)
protected

initialization code

Definition at line 41 of file ActiveComponentBase.cpp.

◆ join()

Os::Task::Status Fw::ActiveComponentBase::join ( )

Join the thread.

Definition at line 82 of file ActiveComponentBase.cpp.

◆ preamble()

void Fw::ActiveComponentBase::preamble ( )
protectedvirtual

A function that will be called before the event loop is entered.

Reimplemented in Svc::FileDownlink.

Definition at line 146 of file ActiveComponentBase.cpp.

◆ start()

void Fw::ActiveComponentBase::start ( Os::Task::ParamType  priority = Os::Task::TASK_DEFAULT,
Os::Task::ParamType  stackSize = Os::Task::TASK_DEFAULT,
Os::Task::ParamType  cpuAffinity = Os::Task::TASK_DEFAULT,
Os::Task::ParamType  identifier = Os::Task::TASK_DEFAULT 
)

called by instantiator when task is to be started

Definition at line 56 of file ActiveComponentBase.cpp.

Member Data Documentation

◆ m_task

Os::Task Fw::ActiveComponentBase::m_task
protected

task object for active component

Definition at line 50 of file ActiveComponentBase.hpp.


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