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

#include <Svc/TlmPacketizer/TlmPacketizer.hpp>

Inheritance diagram for Svc::TlmPacketizer:
Svc::TlmPacketizerComponentBase Fw::ParamExternalDelegate Fw::ActiveComponentBase Fw::QueuedComponentBase Fw::PassiveComponentBase Fw::ObjBase

Public Member Functions

 TlmPacketizer (const char *const compName)
 
void setPacketList (const TlmPacketizerPacketList &packetList, const Svc::TlmPacketizerPacket &ignoreList, const FwChanIdType startLevel)
 
 ~TlmPacketizer ()
 
- Public Member Functions inherited from Svc::TlmPacketizerComponentBase
void init (FwSizeType queueDepth, FwEnumStoreType instance=0)
 Initialize TlmPacketizerComponentBase object. More...
 
Fw::InputCmdPortget_cmdIn_InputPort (FwIndexType portNum)
 
Svc::InputSchedPortget_Run_InputPort (FwIndexType portNum)
 
Fw::InputTlmGetPortget_TlmGet_InputPort (FwIndexType portNum)
 
Fw::InputTlmPortget_TlmRecv_InputPort (FwIndexType portNum)
 
Svc::InputConfigureGroupRatePortget_configureSectionGroupRate_InputPort (FwIndexType portNum)
 
Svc::InputEnableSectionPortget_controlIn_InputPort (FwIndexType portNum)
 
Svc::InputPingPortget_pingIn_InputPort (FwIndexType portNum)
 
void set_cmdRegOut_OutputPort (FwIndexType portNum, Fw::InputCmdRegPort *port)
 Connect port to cmdRegOut[portNum]. More...
 
void set_cmdResponseOut_OutputPort (FwIndexType portNum, Fw::InputCmdResponsePort *port)
 Connect port to cmdResponseOut[portNum]. More...
 
void set_eventOut_OutputPort (FwIndexType portNum, Fw::InputLogPort *port)
 Connect port to eventOut[portNum]. More...
 
void set_paramGetOut_OutputPort (FwIndexType portNum, Fw::InputPrmGetPort *port)
 Connect port to paramGetOut[portNum]. More...
 
void set_paramSetOut_OutputPort (FwIndexType portNum, Fw::InputPrmSetPort *port)
 Connect port to paramSetOut[portNum]. More...
 
void set_timeGetOut_OutputPort (FwIndexType portNum, Fw::InputTimePort *port)
 Connect port to timeGetOut[portNum]. More...
 
void set_tlmOut_OutputPort (FwIndexType portNum, Fw::InputTlmPort *port)
 Connect port to tlmOut[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...
 
void regCommands ()
 Register commands with the Command Dispatcher. More...
 
void loadParameters ()
 Load the parameters from a parameter source. 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
 

Friends

class TlmPacketizerTester
 

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 Types inherited from Svc::TlmPacketizerComponentBase
enum  { NUM_CMDIN_INPUT_PORTS = 1 }
 Enumerations for numbers of special input ports. More...
 
enum  {
  NUM_RUN_INPUT_PORTS = 1, NUM_TLMGET_INPUT_PORTS = 1, NUM_TLMRECV_INPUT_PORTS = 1, NUM_CONFIGURESECTIONGROUPRATE_INPUT_PORTS = 1,
  NUM_CONTROLIN_INPUT_PORTS = 1, NUM_PINGIN_INPUT_PORTS = 1
}
 Enumerations for numbers of typed input ports. More...
 
enum  {
  NUM_CMDREGOUT_OUTPUT_PORTS = 1, NUM_CMDRESPONSEOUT_OUTPUT_PORTS = 1, NUM_EVENTOUT_OUTPUT_PORTS = 1, NUM_PARAMGETOUT_OUTPUT_PORTS = 1,
  NUM_PARAMSETOUT_OUTPUT_PORTS = 1, NUM_TEXTEVENTOUT_OUTPUT_PORTS = 1, NUM_TIMEGETOUT_OUTPUT_PORTS = 1, NUM_TLMOUT_OUTPUT_PORTS = 1
}
 Enumerations for numbers of special output ports. More...
 
enum  { NUM_PKTSEND_OUTPUT_PORTS = 2, NUM_PINGOUT_OUTPUT_PORTS = 1 }
 Enumerations for numbers of typed output ports. More...
 
enum  {
  OPCODE_SET_LEVEL = 0x0, OPCODE_SEND_PKT = 0x1, OPCODE_ENABLE_SECTION = 0x2, OPCODE_ENABLE_GROUP = 0x3,
  OPCODE_FORCE_GROUP = 0x4, OPCODE_CONFIGURE_GROUP_RATES = 0x5, OPCODE_SECTION_ENABLED_SET = 0x6, OPCODE_SECTION_ENABLED_SAVE = 0x7,
  OPCODE_SECTION_CONFIGS_SET = 0x8, OPCODE_SECTION_CONFIGS_SAVE = 0x9
}
 Command opcodes. More...
 
enum  {
  EVENTID_NOCHAN = 0x0, EVENTID_LEVELSET = 0x1, EVENTID_MAXLEVELEXCEED = 0x2, EVENTID_PACKETSENT = 0x3,
  EVENTID_PACKETNOTFOUND = 0x4, EVENTID_SECTIONUNCONFIGURABLE = 0x5
}
 Event IDs. More...
 
enum  { CHANNELID_GROUPCONFIGS = 0x0, CHANNELID_SECTIONENABLED = 0x1 }
 Channel IDs. More...
 
enum  { PARAMID_SECTION_ENABLED = 0x0, PARAMID_SECTION_CONFIGS = 0x1 }
 Parameter IDs. More...
 
- Protected Types inherited from Fw::ActiveComponentBase
enum  Lifecycle { CREATED, DISPATCHING, FINALIZING, DONE }
 Tracks the lifecycle of the component. More...
 
- Protected Member Functions inherited from Svc::TlmPacketizerComponentBase
 TlmPacketizerComponentBase (const char *compName="")
 Construct TlmPacketizerComponentBase object. More...
 
virtual ~TlmPacketizerComponentBase ()
 Destroy TlmPacketizerComponentBase object. More...
 
bool isConnected_cmdRegOut_OutputPort (FwIndexType portNum)
 
bool isConnected_cmdResponseOut_OutputPort (FwIndexType portNum)
 
bool isConnected_eventOut_OutputPort (FwIndexType portNum)
 
bool isConnected_paramGetOut_OutputPort (FwIndexType portNum)
 
bool isConnected_paramSetOut_OutputPort (FwIndexType portNum)
 
bool isConnected_timeGetOut_OutputPort (FwIndexType portNum)
 
bool isConnected_tlmOut_OutputPort (FwIndexType portNum)
 
bool isConnected_PktSend_OutputPort (FwIndexType portNum)
 
bool isConnected_pingOut_OutputPort (FwIndexType portNum)
 
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 configureSectionGroupRate_handlerBase (FwIndexType portNum, const Svc::TelemetrySection &section, FwChanIdType tlmGroup, const Svc::RateLogic &rateLogic, U32 minDelta, U32 maxDelta)
 Handler base-class function for input port configureSectionGroupRate. More...
 
void controlIn_handlerBase (FwIndexType portNum, const Svc::TelemetrySection &section, const Fw::Enabled &enabled)
 Handler base-class function for input port controlIn. 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 configureSectionGroupRate_preMsgHook (FwIndexType portNum, const Svc::TelemetrySection &section, FwChanIdType tlmGroup, const Svc::RateLogic &rateLogic, U32 minDelta, U32 maxDelta)
 Pre-message hook for async input port configureSectionGroupRate. More...
 
virtual void controlIn_preMsgHook (FwIndexType portNum, const Svc::TelemetrySection &section, const Fw::Enabled &enabled)
 Pre-message hook for async input port controlIn. 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)
 Invoke output port PktSend. More...
 
void pingOut_out (FwIndexType portNum, U32 key)
 Invoke output port pingOut. More...
 
void cmdResponse_out (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
 Emit command response. More...
 
void SET_LEVEL_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void SEND_PKT_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void ENABLE_SECTION_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void ENABLE_GROUP_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void FORCE_GROUP_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
void CONFIGURE_GROUP_RATES_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
 
virtual void SET_LEVEL_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command SET_LEVEL. More...
 
virtual void SEND_PKT_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command SEND_PKT. More...
 
virtual void ENABLE_SECTION_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command ENABLE_SECTION. More...
 
virtual void ENABLE_GROUP_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command ENABLE_GROUP. More...
 
virtual void FORCE_GROUP_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command FORCE_GROUP. More...
 
virtual void CONFIGURE_GROUP_RATES_preMsgHook (FwOpcodeType opCode, U32 cmdSeq)
 Pre-message hook for command CONFIGURE_GROUP_RATES. More...
 
void log_WARNING_LO_NoChan (FwChanIdType Id) const
 
void log_ACTIVITY_HI_LevelSet (FwChanIdType id) const
 
void log_WARNING_LO_MaxLevelExceed (FwChanIdType level, FwChanIdType max) const
 
void log_ACTIVITY_LO_PacketSent (U32 id) const
 
void log_WARNING_LO_PacketNotFound (U32 id) const
 
void log_WARNING_LO_SectionUnconfigurable (Svc::TelemetrySection section, Fw::Enabled enable) const
 Log event SectionUnconfigurable. More...
 
void tlmWrite_GroupConfigs (const Svc::TlmPacketizer_SectionConfigs &arg, Fw::Time _tlmTime=Fw::Time()) const
 
void tlmWrite_SectionEnabled (const Svc::TlmPacketizer_SectionEnabled &arg, Fw::Time _tlmTime=Fw::Time()) const
 Write telemetry channel SectionEnabled. More...
 
virtual void parameterUpdated (FwPrmIdType id)
 Called whenever a parameter is updated. More...
 
virtual void parametersLoaded ()
 Called whenever parameters are loaded. More...
 
Svc::TlmPacketizer_SectionEnabled paramGet_SECTION_ENABLED (Fw::ParamValid &valid)
 
Svc::TlmPacketizer_SectionConfigs paramGet_SECTION_CONFIGS (Fw::ParamValid &valid)
 
void registerExternalParameters (Fw::ParamExternalDelegate *paramExternalDelegatePtr)
 Initialize the external parameter delegate. More...
 
Fw::Time getTime () const
 
- 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 inherited from Svc::TlmPacketizerComponentBase
static constexpr FwIndexType getNum_cmdIn_InputPorts ()
 
static constexpr FwIndexType getNum_Run_InputPorts ()
 
static constexpr FwIndexType getNum_TlmGet_InputPorts ()
 
static constexpr FwIndexType getNum_TlmRecv_InputPorts ()
 
static constexpr FwIndexType getNum_configureSectionGroupRate_InputPorts ()
 
static constexpr FwIndexType getNum_controlIn_InputPorts ()
 
static constexpr FwIndexType getNum_pingIn_InputPorts ()
 
static constexpr FwIndexType getNum_cmdRegOut_OutputPorts ()
 
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts ()
 
static constexpr FwIndexType getNum_eventOut_OutputPorts ()
 
static constexpr FwIndexType getNum_paramGetOut_OutputPorts ()
 
static constexpr FwIndexType getNum_paramSetOut_OutputPorts ()
 
static constexpr FwIndexType getNum_timeGetOut_OutputPorts ()
 
static constexpr FwIndexType getNum_tlmOut_OutputPorts ()
 
static constexpr FwIndexType getNum_PktSend_OutputPorts ()
 
static constexpr FwIndexType getNum_pingOut_OutputPorts ()
 
- 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

Definition at line 30 of file TlmPacketizer.hpp.

Constructor & Destructor Documentation

◆ TlmPacketizer()

Svc::TlmPacketizer::TlmPacketizer ( const char *const  compName)

Construct object TlmPacketizer

Parameters
compNameThe component name

Definition at line 27 of file TlmPacketizer.cpp.

◆ ~TlmPacketizer()

Svc::TlmPacketizer::~TlmPacketizer ( )

Destroy object TlmPacketizer

Definition at line 46 of file TlmPacketizer.cpp.

Member Function Documentation

◆ setPacketList()

void Svc::TlmPacketizer::setPacketList ( const TlmPacketizerPacketList packetList,
const Svc::TlmPacketizerPacket ignoreList,
const FwChanIdType  startLevel 
)

Definition at line 48 of file TlmPacketizer.cpp.

Friends And Related Function Documentation

◆ TlmPacketizerTester

friend class TlmPacketizerTester
friend

Definition at line 31 of file TlmPacketizer.hpp.


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