F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
Svc::TlmChanComponentBase Class Referenceabstract

Auto-generated base for TlmChan component. More...

#include <Svc/TlmChan/TlmChanComponentAc.hpp>

Inheritance diagram for Svc::TlmChanComponentBase:
Fw::ActiveComponentBase Fw::QueuedComponentBase Fw::PassiveComponentBase Fw::ObjBase Svc::TlmChan

Public Member Functions

void init (FwSizeType queueDepth, FwEnumStoreType instance=0)
 Initialize TlmChanComponentBase object. More...
 
Svc::InputSchedPortget_Run_InputPort (FwIndexType portNum)
 
Fw::InputTlmGetPortget_TlmGet_InputPort (FwIndexType portNum)
 
Fw::InputTlmPortget_TlmRecv_InputPort (FwIndexType portNum)
 
Svc::InputPingPortget_pingIn_InputPort (FwIndexType portNum)
 
void set_eventOut_OutputPort (FwIndexType portNum, Fw::InputLogPort *port)
 Connect port to eventOut[portNum]. More...
 
void set_timeCaller_OutputPort (FwIndexType portNum, Fw::InputTimePort *port)
 Connect port to timeCaller[portNum]. More...
 
void set_PktSend_OutputPort (FwIndexType portNum, Fw::InputComPort *port)
 Connect port to PktSend[portNum]. More...
 
void set_pingOut_OutputPort (FwIndexType portNum, Svc::InputPingPort *port)
 Connect port to pingOut[portNum]. More...
 
- Public Member Functions inherited from Fw::ActiveComponentBase
void start (FwTaskPriorityType priority=Os::Task::TASK_PRIORITY_DEFAULT, FwSizeType stackSize=Os::Task::TASK_DEFAULT, FwSizeType cpuAffinity=Os::Task::TASK_DEFAULT, FwTaskIdType identifier=static_cast< FwTaskIdType >(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::QueuedComponentBase
void deinit () override
 Allows de-initialization on teardown. More...
 
- Public Member Functions inherited from Fw::PassiveComponentBase
void setIdBase (const FwIdType)
 Set the ID base. More...
 
FwIdType getIdBase () const
 

Protected Types

enum  { NUM_RUN_INPUT_PORTS = 1, NUM_TLMGET_INPUT_PORTS = 1, NUM_TLMRECV_INPUT_PORTS = 1, NUM_PINGIN_INPUT_PORTS = 1 }
 Enumerations for numbers of typed input ports. More...
 
enum  { NUM_EVENTOUT_OUTPUT_PORTS = 1, NUM_EVENTOUTTEXT_OUTPUT_PORTS = 1, NUM_TIMECALLER_OUTPUT_PORTS = 1 }
 Enumerations for numbers of special output ports. More...
 
enum  { NUM_PKTSEND_OUTPUT_PORTS = 1, NUM_PINGOUT_OUTPUT_PORTS = 1 }
 Enumerations for numbers of typed output ports. More...
 
enum  { EVENTID_TLMCHANEPOCHPROCESSINGCAPREACHED = 0x0 }
 Event IDs. More...
 
- Protected Types inherited from Fw::ActiveComponentBase
enum  Lifecycle { CREATED, DISPATCHING, FINALIZING, DONE }
 Tracks the lifecycle of the component. More...
 

Protected Member Functions

 TlmChanComponentBase (const char *compName="")
 Construct TlmChanComponentBase object. More...
 
virtual ~TlmChanComponentBase ()
 Destroy TlmChanComponentBase object. More...
 
bool isConnected_eventOut_OutputPort (FwIndexType portNum) const
 
bool isConnected_timeCaller_OutputPort (FwIndexType portNum) const
 
bool isConnected_PktSend_OutputPort (FwIndexType portNum) const
 
bool isConnected_pingOut_OutputPort (FwIndexType portNum) const
 
virtual void Run_handler (FwIndexType portNum, U32 context)=0
 Handler for input port Run. More...
 
virtual Fw::TlmValid TlmGet_handler (FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)=0
 Handler for input port TlmGet. More...
 
virtual void TlmRecv_handler (FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)=0
 Handler for input port TlmRecv. More...
 
virtual void pingIn_handler (FwIndexType portNum, U32 key)=0
 Handler for input port pingIn. More...
 
void Run_handlerBase (FwIndexType portNum, U32 context)
 Handler base-class function for input port Run. More...
 
Fw::TlmValid TlmGet_handlerBase (FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)
 Handler base-class function for input port TlmGet. More...
 
void TlmRecv_handlerBase (FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)
 Handler base-class function for input port TlmRecv. More...
 
void pingIn_handlerBase (FwIndexType portNum, U32 key)
 Handler base-class function for input port pingIn. More...
 
virtual void Run_preMsgHook (FwIndexType portNum, U32 context)
 Pre-message hook for async input port Run. More...
 
virtual void pingIn_preMsgHook (FwIndexType portNum, U32 key)
 Pre-message hook for async input port pingIn. More...
 
void PktSend_out (FwIndexType portNum, Fw::ComBuffer &data, U32 context) const
 Invoke output port PktSend. More...
 
void pingOut_out (FwIndexType portNum, U32 key) const
 Invoke output port pingOut. More...
 
void log_WARNING_HI_TlmChanEpochProcessingCapReached (U32 numDeferred, U32 numTimesDeferredCountReached) const
 
Fw::Time getTime () const
 
virtual void lock ()
 Lock the guarded mutex. More...
 
virtual void unLock ()
 Unlock the guarded mutex. More...
 
- Protected Member Functions inherited from Fw::ActiveComponentBase
 ActiveComponentBase (const char *name)
 Constructor. More...
 
virtual ~ActiveComponentBase ()
 Destructor. More...
 
void init (FwEnumStoreType 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 (FwEnumStoreType instance)
 initialization function More...
 
Os::Queue::Status createQueue (FwSizeType depth, FwSizeType msgSize)
 
MsgDispatchStatus dispatchAvailableMessages ()
 dispatches all messages currently in the queue, returning status of the dispatch More...
 
FwSizeType 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 (FwEnumStoreType instance)
 Initialization function. More...
 
FwEnumStoreType 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...
 

Static Protected Member Functions

static constexpr FwIndexType getNum_Run_InputPorts ()
 
static constexpr FwIndexType getNum_TlmGet_InputPorts ()
 
static constexpr FwIndexType getNum_TlmRecv_InputPorts ()
 
static constexpr FwIndexType getNum_pingIn_InputPorts ()
 
static constexpr FwIndexType getNum_eventOut_OutputPorts ()
 
static constexpr FwIndexType getNum_timeCaller_OutputPorts ()
 
static constexpr FwIndexType getNum_PktSend_OutputPorts ()
 
static constexpr FwIndexType getNum_pingOut_OutputPorts ()
 

Friends

class TlmChanTesterBase
 Friend class tester to support autocoded test harness. More...
 
class TlmChanTester
 Friend class tester implementation to support white-box testing. More...
 

Additional Inherited Members

- Public Types inherited from Fw::ActiveComponentBase
enum  { ACTIVE_COMPONENT_EXIT }
 
- Public Types inherited from Fw::QueuedComponentBase
enum  MsgDispatchStatus { MSG_DISPATCH_OK, MSG_DISPATCH_EMPTY, MSG_DISPATCH_ERROR, MSG_DISPATCH_EXIT }
 
- Protected Attributes inherited from Fw::ActiveComponentBase
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

Auto-generated base for TlmChan component.

A component for storing telemetry

Definition at line 37 of file TlmChanComponentAc.hpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of typed input ports.

Enumerator
NUM_RUN_INPUT_PORTS 
NUM_TLMGET_INPUT_PORTS 
NUM_TLMRECV_INPUT_PORTS 
NUM_PINGIN_INPUT_PORTS 

Definition at line 57 of file TlmChanComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of special output ports.

Enumerator
NUM_EVENTOUT_OUTPUT_PORTS 
NUM_EVENTOUTTEXT_OUTPUT_PORTS 
NUM_TIMECALLER_OUTPUT_PORTS 

Definition at line 65 of file TlmChanComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of typed output ports.

Enumerator
NUM_PKTSEND_OUTPUT_PORTS 
NUM_PINGOUT_OUTPUT_PORTS 

Definition at line 72 of file TlmChanComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Event IDs.

Enumerator
EVENTID_TLMCHANEPOCHPROCESSINGCAPREACHED 

Epoch Processing cap reached; one or more telemetry entries were deferred this cycle.

Definition at line 78 of file TlmChanComponentAc.hpp.

Constructor & Destructor Documentation

◆ TlmChanComponentBase()

Svc::TlmChanComponentBase::TlmChanComponentBase ( const char *  compName = "")
protected

Construct TlmChanComponentBase object.

Parameters
compNameThe component name

Definition at line 536 of file TlmChanComponentAc.cpp.

◆ ~TlmChanComponentBase()

Svc::TlmChanComponentBase::~TlmChanComponentBase ( )
protectedvirtual

Destroy TlmChanComponentBase object.

Definition at line 543 of file TlmChanComponentAc.cpp.

Member Function Documentation

◆ get_pingIn_InputPort()

Svc::InputPingPort * Svc::TlmChanComponentBase::get_pingIn_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
pingIn[portNum]
Parameters
portNumThe port number

Definition at line 339 of file TlmChanComponentAc.cpp.

◆ get_Run_InputPort()

Svc::InputSchedPort * Svc::TlmChanComponentBase::get_Run_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
Run[portNum]
Parameters
portNumThe port number

Definition at line 306 of file TlmChanComponentAc.cpp.

◆ get_TlmGet_InputPort()

Fw::InputTlmGetPort * Svc::TlmChanComponentBase::get_TlmGet_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
TlmGet[portNum]
Parameters
portNumThe port number

Definition at line 317 of file TlmChanComponentAc.cpp.

◆ get_TlmRecv_InputPort()

Fw::InputTlmPort * Svc::TlmChanComponentBase::get_TlmRecv_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
TlmRecv[portNum]
Parameters
portNumThe port number

Definition at line 328 of file TlmChanComponentAc.cpp.

◆ getNum_eventOut_OutputPorts()

static constexpr FwIndexType Svc::TlmChanComponentBase::getNum_eventOut_OutputPorts ( )
inlinestaticprotected

Get the number of eventOut output ports

Returns
The number of eventOut output ports

Definition at line 297 of file TlmChanComponentAc.hpp.

◆ getNum_pingIn_InputPorts()

static constexpr FwIndexType Svc::TlmChanComponentBase::getNum_pingIn_InputPorts ( )
inlinestaticprotected

Get the number of pingIn input ports

Returns
The number of pingIn input ports

Definition at line 284 of file TlmChanComponentAc.hpp.

◆ getNum_pingOut_OutputPorts()

static constexpr FwIndexType Svc::TlmChanComponentBase::getNum_pingOut_OutputPorts ( )
inlinestaticprotected

Get the number of pingOut output ports

Returns
The number of pingOut output ports

Definition at line 335 of file TlmChanComponentAc.hpp.

◆ getNum_PktSend_OutputPorts()

static constexpr FwIndexType Svc::TlmChanComponentBase::getNum_PktSend_OutputPorts ( )
inlinestaticprotected

Get the number of PktSend output ports

Returns
The number of PktSend output ports

Definition at line 328 of file TlmChanComponentAc.hpp.

◆ getNum_Run_InputPorts()

static constexpr FwIndexType Svc::TlmChanComponentBase::getNum_Run_InputPorts ( )
inlinestaticprotected

Get the number of Run input ports

Returns
The number of Run input ports

Definition at line 263 of file TlmChanComponentAc.hpp.

◆ getNum_timeCaller_OutputPorts()

static constexpr FwIndexType Svc::TlmChanComponentBase::getNum_timeCaller_OutputPorts ( )
inlinestaticprotected

Get the number of timeCaller output ports

Returns
The number of timeCaller output ports

Definition at line 315 of file TlmChanComponentAc.hpp.

◆ getNum_TlmGet_InputPorts()

static constexpr FwIndexType Svc::TlmChanComponentBase::getNum_TlmGet_InputPorts ( )
inlinestaticprotected

Get the number of TlmGet input ports

Returns
The number of TlmGet input ports

Definition at line 270 of file TlmChanComponentAc.hpp.

◆ getNum_TlmRecv_InputPorts()

static constexpr FwIndexType Svc::TlmChanComponentBase::getNum_TlmRecv_InputPorts ( )
inlinestaticprotected

Get the number of TlmRecv input ports

Returns
The number of TlmRecv input ports

Definition at line 277 of file TlmChanComponentAc.hpp.

◆ getTime()

Fw::Time Svc::TlmChanComponentBase::getTime ( ) const
protected

Get the time

\return The current time

Definition at line 984 of file TlmChanComponentAc.cpp.

◆ init()

void Svc::TlmChanComponentBase::init ( FwSizeType  queueDepth,
FwEnumStoreType  instance = 0 
)

Initialize TlmChanComponentBase object.

Parameters
queueDepthThe queue depth
instanceThe instance number

Definition at line 71 of file TlmChanComponentAc.cpp.

◆ isConnected_eventOut_OutputPort()

bool Svc::TlmChanComponentBase::isConnected_eventOut_OutputPort ( FwIndexType  portNum) const
protected

Check whether port eventOut is connected

Returns
Whether port eventOut is connected
Parameters
portNumThe port number

Definition at line 555 of file TlmChanComponentAc.cpp.

◆ isConnected_pingOut_OutputPort()

bool Svc::TlmChanComponentBase::isConnected_pingOut_OutputPort ( FwIndexType  portNum) const
protected

Check whether port pingOut is connected

Returns
Whether port pingOut is connected
Parameters
portNumThe port number

Definition at line 611 of file TlmChanComponentAc.cpp.

◆ isConnected_PktSend_OutputPort()

bool Svc::TlmChanComponentBase::isConnected_PktSend_OutputPort ( FwIndexType  portNum) const
protected

Check whether port PktSend is connected

Returns
Whether port PktSend is connected
Parameters
portNumThe port number

Definition at line 600 of file TlmChanComponentAc.cpp.

◆ isConnected_timeCaller_OutputPort()

bool Svc::TlmChanComponentBase::isConnected_timeCaller_OutputPort ( FwIndexType  portNum) const
protected

Check whether port timeCaller is connected

Returns
Whether port timeCaller is connected
Parameters
portNumThe port number

Definition at line 581 of file TlmChanComponentAc.cpp.

◆ lock()

void Svc::TlmChanComponentBase::lock ( )
protectedvirtual

Lock the guarded mutex.

Definition at line 1004 of file TlmChanComponentAc.cpp.

◆ log_WARNING_HI_TlmChanEpochProcessingCapReached()

void Svc::TlmChanComponentBase::log_WARNING_HI_TlmChanEpochProcessingCapReached ( U32  numDeferred,
U32  numTimesDeferredCountReached 
) const
protected

Log event TlmChanEpochProcessingCapReached

Epoch Processing cap reached; one or more telemetry entries were deferred this cycle

Parameters
numDeferredEntries skipped (dropped) this invocation
numTimesDeferredCountReachedCumulative invocations where cap was reached

Definition at line 878 of file TlmChanComponentAc.cpp.

◆ pingIn_handler()

virtual void Svc::TlmChanComponentBase::pingIn_handler ( FwIndexType  portNum,
U32  key 
)
protectedpure virtual

Handler for input port pingIn.

Parameters
portNumThe port number
keyValue to return to pinger

◆ pingIn_handlerBase()

void Svc::TlmChanComponentBase::pingIn_handlerBase ( FwIndexType  portNum,
U32  key 
)
protected

Handler base-class function for input port pingIn.

Parameters
portNumThe port number
keyValue to return to pinger

Definition at line 745 of file TlmChanComponentAc.cpp.

◆ pingIn_preMsgHook()

void Svc::TlmChanComponentBase::pingIn_preMsgHook ( FwIndexType  portNum,
U32  key 
)
protectedvirtual

Pre-message hook for async input port pingIn.

Parameters
portNumThe port number
keyValue to return to pinger

Definition at line 815 of file TlmChanComponentAc.cpp.

◆ pingOut_out()

void Svc::TlmChanComponentBase::pingOut_out ( FwIndexType  portNum,
U32  key 
) const
protected

Invoke output port pingOut.

Parameters
portNumThe port number
keyValue to return to pinger

Definition at line 852 of file TlmChanComponentAc.cpp.

◆ PktSend_out()

void Svc::TlmChanComponentBase::PktSend_out ( FwIndexType  portNum,
Fw::ComBuffer data,
U32  context 
) const
protected

Invoke output port PktSend.

Parameters
portNumThe port number
dataBuffer containing packet data
contextCall context value; meaning chosen by user

Definition at line 830 of file TlmChanComponentAc.cpp.

◆ Run_handler()

virtual void Svc::TlmChanComponentBase::Run_handler ( FwIndexType  portNum,
U32  context 
)
protectedpure virtual

Handler for input port Run.

Parameters
portNumThe port number
contextThe call order

◆ Run_handlerBase()

void Svc::TlmChanComponentBase::Run_handlerBase ( FwIndexType  portNum,
U32  context 
)
protected

Handler base-class function for input port Run.

Parameters
portNumThe port number
contextThe call order

Definition at line 630 of file TlmChanComponentAc.cpp.

◆ Run_preMsgHook()

void Svc::TlmChanComponentBase::Run_preMsgHook ( FwIndexType  portNum,
U32  context 
)
protectedvirtual

Pre-message hook for async input port Run.

Parameters
portNumThe port number
contextThe call order

Definition at line 806 of file TlmChanComponentAc.cpp.

◆ set_eventOut_OutputPort()

void Svc::TlmChanComponentBase::set_eventOut_OutputPort ( FwIndexType  portNum,
Fw::InputLogPort port 
)

Connect port to eventOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 358 of file TlmChanComponentAc.cpp.

◆ set_pingOut_OutputPort()

void Svc::TlmChanComponentBase::set_pingOut_OutputPort ( FwIndexType  portNum,
Svc::InputPingPort port 
)

Connect port to pingOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 426 of file TlmChanComponentAc.cpp.

◆ set_PktSend_OutputPort()

void Svc::TlmChanComponentBase::set_PktSend_OutputPort ( FwIndexType  portNum,
Fw::InputComPort port 
)

Connect port to PktSend[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 412 of file TlmChanComponentAc.cpp.

◆ set_timeCaller_OutputPort()

void Svc::TlmChanComponentBase::set_timeCaller_OutputPort ( FwIndexType  portNum,
Fw::InputTimePort port 
)

Connect port to timeCaller[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 390 of file TlmChanComponentAc.cpp.

◆ TlmGet_handler()

virtual Fw::TlmValid Svc::TlmChanComponentBase::TlmGet_handler ( FwIndexType  portNum,
FwChanIdType  id,
Fw::Time timeTag,
Fw::TlmBuffer val 
)
protectedpure virtual

Handler for input port TlmGet.

Parameters
portNumThe port number
idTelemetry Channel ID
timeTagTime Tag
valBuffer containing serialized telemetry value. Size set to 0 if channel not found, or if no value has been received for this channel yet.

◆ TlmGet_handlerBase()

Fw::TlmValid Svc::TlmChanComponentBase::TlmGet_handlerBase ( FwIndexType  portNum,
FwChanIdType  id,
Fw::Time timeTag,
Fw::TlmBuffer val 
)
protected

Handler base-class function for input port TlmGet.

Parameters
portNumThe port number
idTelemetry Channel ID
timeTagTime Tag
valBuffer containing serialized telemetry value. Size set to 0 if channel not found, or if no value has been received for this channel yet.

Definition at line 683 of file TlmChanComponentAc.cpp.

◆ TlmRecv_handler()

virtual void Svc::TlmChanComponentBase::TlmRecv_handler ( FwIndexType  portNum,
FwChanIdType  id,
Fw::Time timeTag,
Fw::TlmBuffer val 
)
protectedpure virtual

Handler for input port TlmRecv.

Parameters
portNumThe port number
idTelemetry Channel ID
timeTagTime Tag
valBuffer containing serialized telemetry value

◆ TlmRecv_handlerBase()

void Svc::TlmChanComponentBase::TlmRecv_handlerBase ( FwIndexType  portNum,
FwChanIdType  id,
Fw::Time timeTag,
Fw::TlmBuffer val 
)
protected

Handler base-class function for input port TlmRecv.

Parameters
portNumThe port number
idTelemetry Channel ID
timeTagTime Tag
valBuffer containing serialized telemetry value

Definition at line 716 of file TlmChanComponentAc.cpp.

◆ unLock()

void Svc::TlmChanComponentBase::unLock ( )
protectedvirtual

Unlock the guarded mutex.

Definition at line 1010 of file TlmChanComponentAc.cpp.

Friends And Related Function Documentation

◆ TlmChanTester

friend class TlmChanTester
friend

Friend class tester implementation to support white-box testing.

Definition at line 48 of file TlmChanComponentAc.hpp.

◆ TlmChanTesterBase

friend class TlmChanTesterBase
friend

Friend class tester to support autocoded test harness.

Definition at line 46 of file TlmChanComponentAc.hpp.


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