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

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

#include <Svc/ActiveRateGroup/ActiveRateGroupComponentAc.hpp>

Inheritance diagram for Svc::ActiveRateGroupComponentBase:
Fw::ActiveComponentBase Fw::QueuedComponentBase Fw::PassiveComponentBase Fw::ObjBase Svc::ActiveRateGroup

Public Member Functions

void init (NATIVE_INT_TYPE queueDepth, NATIVE_INT_TYPE instance=0)
 Initialize ActiveRateGroupComponentBase object. More...
 
Svc::InputCyclePortget_CycleIn_InputPort (NATIVE_INT_TYPE portNum)
 
Svc::InputPingPortget_PingIn_InputPort (NATIVE_INT_TYPE portNum)
 
void set_Log_OutputPort (NATIVE_INT_TYPE portNum, Fw::InputLogPort *port)
 Connect port to Log[portNum]. More...
 
void set_Time_OutputPort (NATIVE_INT_TYPE portNum, Fw::InputTimePort *port)
 Connect port to Time[portNum]. More...
 
void set_Tlm_OutputPort (NATIVE_INT_TYPE portNum, Fw::InputTlmPort *port)
 Connect port to Tlm[portNum]. More...
 
void set_PingOut_OutputPort (NATIVE_INT_TYPE portNum, Svc::InputPingPort *port)
 Connect port to PingOut[portNum]. More...
 
void set_RateGroupMemberOut_OutputPort (NATIVE_INT_TYPE portNum, Svc::InputSchedPort *port)
 Connect port to RateGroupMemberOut[portNum]. More...
 
- Public Member Functions inherited from Fw::ActiveComponentBase
void start (NATIVE_UINT_TYPE priority=Os::Task::TASK_DEFAULT, NATIVE_UINT_TYPE stackSize=Os::Task::TASK_DEFAULT, NATIVE_UINT_TYPE cpuAffinity=Os::Task::TASK_DEFAULT, NATIVE_UINT_TYPE identifier=Os::Task::TASK_DEFAULT)
 called by instantiator when task is to be started More...
 
 DEPRECATED (void start(NATIVE_INT_TYPE identifier, NATIVE_INT_TYPE priority, NATIVE_INT_TYPE stackSize, NATIVE_INT_TYPE cpuAffinity=-1), "Please switch to start(NATIVE_UINT_TYPE priority, NATIVE_UINT_TYPE stackSize, NATIVE_UINT_TYPE cpuAffinity, NATIVE_UINT_TYPE identifier)")
 called by instantiator when task is to be started More...
 
void exit ()
 exit task in active component More...
 
Os::Task::TaskStatus join (void **value_ptr)
 provide return value of thread if value_ptr is not NULL More...
 
- Public Member Functions inherited from Fw::PassiveComponentBase
void setIdBase (const U32)
 Set the ID base. More...
 
U32 getIdBase () const
 

Protected Types

enum  { NUM_CYCLEIN_INPUT_PORTS = 1 , NUM_PINGIN_INPUT_PORTS = 1 }
 Enumerations for numbers of typed input ports. More...
 
enum  { NUM_LOG_OUTPUT_PORTS = 1 , NUM_LOGTEXT_OUTPUT_PORTS = 1 , NUM_TIME_OUTPUT_PORTS = 1 , NUM_TLM_OUTPUT_PORTS = 1 }
 Enumerations for numbers of special output ports. More...
 
enum  { NUM_PINGOUT_OUTPUT_PORTS = 1 , NUM_RATEGROUPMEMBEROUT_OUTPUT_PORTS = 10 }
 Enumerations for numbers of typed output ports. More...
 
enum  { EVENTID_RATEGROUPSTARTED = 0x0 , EVENTID_RATEGROUPCYCLESLIP = 0x1 }
 Event IDs. More...
 
enum  { CHANNELID_RGMAXTIME = 0x0 , CHANNELID_RGCYCLESLIPS = 0x1 }
 Channel IDs. More...
 

Protected Member Functions

 ActiveRateGroupComponentBase (const char *compName="")
 Construct ActiveRateGroupComponentBase object. More...
 
virtual ~ActiveRateGroupComponentBase ()
 Destroy ActiveRateGroupComponentBase object. More...
 
NATIVE_INT_TYPE getNum_CycleIn_InputPorts () const
 
NATIVE_INT_TYPE getNum_PingIn_InputPorts () const
 
NATIVE_INT_TYPE getNum_Log_OutputPorts () const
 
NATIVE_INT_TYPE getNum_Time_OutputPorts () const
 
NATIVE_INT_TYPE getNum_Tlm_OutputPorts () const
 
NATIVE_INT_TYPE getNum_PingOut_OutputPorts () const
 
NATIVE_INT_TYPE getNum_RateGroupMemberOut_OutputPorts () const
 
bool isConnected_Log_OutputPort (NATIVE_INT_TYPE portNum)
 
bool isConnected_Time_OutputPort (NATIVE_INT_TYPE portNum)
 
bool isConnected_Tlm_OutputPort (NATIVE_INT_TYPE portNum)
 
bool isConnected_PingOut_OutputPort (NATIVE_INT_TYPE portNum)
 
bool isConnected_RateGroupMemberOut_OutputPort (NATIVE_INT_TYPE portNum)
 
virtual void CycleIn_handler (NATIVE_INT_TYPE portNum, Svc::TimerVal &cycleStart)=0
 Handler for input port CycleIn. More...
 
virtual void PingIn_handler (NATIVE_INT_TYPE portNum, U32 key)=0
 Handler for input port PingIn. More...
 
void CycleIn_handlerBase (NATIVE_INT_TYPE portNum, Svc::TimerVal &cycleStart)
 Handler base-class function for input port CycleIn. More...
 
void PingIn_handlerBase (NATIVE_INT_TYPE portNum, U32 key)
 Handler base-class function for input port PingIn. More...
 
virtual void CycleIn_preMsgHook (NATIVE_INT_TYPE portNum, Svc::TimerVal &cycleStart)
 Pre-message hook for async input port CycleIn. More...
 
virtual void PingIn_preMsgHook (NATIVE_INT_TYPE portNum, U32 key)
 Pre-message hook for async input port PingIn. More...
 
void PingOut_out (NATIVE_INT_TYPE portNum, U32 key)
 Invoke output port PingOut. More...
 
void RateGroupMemberOut_out (NATIVE_INT_TYPE portNum, NATIVE_UINT_TYPE context)
 Invoke output port RateGroupMemberOut. More...
 
void log_DIAGNOSTIC_RateGroupStarted ()
 
void log_WARNING_HI_RateGroupCycleSlip (U32 cycle)
 
void tlmWrite_RgMaxTime (U32 arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_RgCycleSlips (U32 arg, Fw::Time _tlmTime=Fw::Time())
 
Fw::Time getTime ()
 
- Protected Member Functions inherited from Fw::ActiveComponentBase
 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...
 
virtual void loop ()
 The function that will loop 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)
 
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...
 

Friends

class ActiveRateGroupComponentBaseFriend
 Friend class for 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 ActiveRateGroup component.

A rate group active component with input and output scheduler ports

Definition at line 32 of file ActiveRateGroupComponentAc.hpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protected

Event IDs.

Enumerator
EVENTID_RATEGROUPSTARTED 

Informational event that rate group has started.

EVENTID_RATEGROUPCYCLESLIP 

Warning event that rate group has had a cycle slip.

Definition at line 70 of file ActiveRateGroupComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Channel IDs.

Enumerator
CHANNELID_RGMAXTIME 

Channel ID for RgMaxTime.

CHANNELID_RGCYCLESLIPS 

Channel ID for RgCycleSlips.

Definition at line 76 of file ActiveRateGroupComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of typed input ports.

Enumerator
NUM_CYCLEIN_INPUT_PORTS 
NUM_PINGIN_INPUT_PORTS 

Definition at line 50 of file ActiveRateGroupComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of special output ports.

Enumerator
NUM_LOG_OUTPUT_PORTS 
NUM_LOGTEXT_OUTPUT_PORTS 
NUM_TIME_OUTPUT_PORTS 
NUM_TLM_OUTPUT_PORTS 

Definition at line 56 of file ActiveRateGroupComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of typed output ports.

Enumerator
NUM_PINGOUT_OUTPUT_PORTS 
NUM_RATEGROUPMEMBEROUT_OUTPUT_PORTS 

Definition at line 64 of file ActiveRateGroupComponentAc.hpp.

Constructor & Destructor Documentation

◆ ActiveRateGroupComponentBase()

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

Construct ActiveRateGroupComponentBase object.

Parameters
compNameThe component name

Definition at line 547 of file ActiveRateGroupComponentAc.cpp.

◆ ~ActiveRateGroupComponentBase()

Svc::ActiveRateGroupComponentBase::~ActiveRateGroupComponentBase ( )
protectedvirtual

Destroy ActiveRateGroupComponentBase object.

Definition at line 560 of file ActiveRateGroupComponentAc.cpp.

Member Function Documentation

◆ CycleIn_handler()

virtual void Svc::ActiveRateGroupComponentBase::CycleIn_handler ( NATIVE_INT_TYPE  portNum,
Svc::TimerVal cycleStart 
)
protectedpure virtual

Handler for input port CycleIn.

Parameters
portNumThe port number
cycleStartCycle start timer value

◆ CycleIn_handlerBase()

void Svc::ActiveRateGroupComponentBase::CycleIn_handlerBase ( NATIVE_INT_TYPE  portNum,
Svc::TimerVal cycleStart 
)
protected

Handler base-class function for input port CycleIn.

Parameters
portNumThe port number
cycleStartCycle start timer value

Definition at line 714 of file ActiveRateGroupComponentAc.cpp.

◆ CycleIn_preMsgHook()

void Svc::ActiveRateGroupComponentBase::CycleIn_preMsgHook ( NATIVE_INT_TYPE  portNum,
Svc::TimerVal cycleStart 
)
protectedvirtual

Pre-message hook for async input port CycleIn.

Parameters
portNumThe port number
cycleStartCycle start timer value

Definition at line 833 of file ActiveRateGroupComponentAc.cpp.

◆ get_CycleIn_InputPort()

Svc::InputCyclePort * Svc::ActiveRateGroupComponentBase::get_CycleIn_InputPort ( NATIVE_INT_TYPE  portNum)

Get typed input port at index

Returns
CycleIn[portNum]
Parameters
portNumThe port number

Definition at line 321 of file ActiveRateGroupComponentAc.cpp.

◆ get_PingIn_InputPort()

Svc::InputPingPort * Svc::ActiveRateGroupComponentBase::get_PingIn_InputPort ( NATIVE_INT_TYPE  portNum)

Get typed input port at index

Returns
PingIn[portNum]
Parameters
portNumThe port number

Definition at line 332 of file ActiveRateGroupComponentAc.cpp.

◆ getNum_CycleIn_InputPorts()

NATIVE_INT_TYPE Svc::ActiveRateGroupComponentBase::getNum_CycleIn_InputPorts ( ) const
protected

Get the number of CycleIn input ports

Returns
The number of CycleIn input ports

Definition at line 570 of file ActiveRateGroupComponentAc.cpp.

◆ getNum_Log_OutputPorts()

NATIVE_INT_TYPE Svc::ActiveRateGroupComponentBase::getNum_Log_OutputPorts ( ) const
protected

Get the number of Log output ports

Returns
The number of Log output ports

Definition at line 586 of file ActiveRateGroupComponentAc.cpp.

◆ getNum_PingIn_InputPorts()

NATIVE_INT_TYPE Svc::ActiveRateGroupComponentBase::getNum_PingIn_InputPorts ( ) const
protected

Get the number of PingIn input ports

Returns
The number of PingIn input ports

Definition at line 576 of file ActiveRateGroupComponentAc.cpp.

◆ getNum_PingOut_OutputPorts()

NATIVE_INT_TYPE Svc::ActiveRateGroupComponentBase::getNum_PingOut_OutputPorts ( ) const
protected

Get the number of PingOut output ports

Returns
The number of PingOut output ports

Definition at line 618 of file ActiveRateGroupComponentAc.cpp.

◆ getNum_RateGroupMemberOut_OutputPorts()

NATIVE_INT_TYPE Svc::ActiveRateGroupComponentBase::getNum_RateGroupMemberOut_OutputPorts ( ) const
protected

Get the number of RateGroupMemberOut output ports

Returns
The number of RateGroupMemberOut output ports

Definition at line 624 of file ActiveRateGroupComponentAc.cpp.

◆ getNum_Time_OutputPorts()

NATIVE_INT_TYPE Svc::ActiveRateGroupComponentBase::getNum_Time_OutputPorts ( ) const
protected

Get the number of Time output ports

Returns
The number of Time output ports

Definition at line 602 of file ActiveRateGroupComponentAc.cpp.

◆ getNum_Tlm_OutputPorts()

NATIVE_INT_TYPE Svc::ActiveRateGroupComponentBase::getNum_Tlm_OutputPorts ( ) const
protected

Get the number of Tlm output ports

Returns
The number of Tlm output ports

Definition at line 608 of file ActiveRateGroupComponentAc.cpp.

◆ getTime()

Fw::Time Svc::ActiveRateGroupComponentBase::getTime ( )
protected

Get the time

\return The current time

Definition at line 1152 of file ActiveRateGroupComponentAc.cpp.

◆ init()

void Svc::ActiveRateGroupComponentBase::init ( NATIVE_INT_TYPE  queueDepth,
NATIVE_INT_TYPE  instance = 0 
)

Initialize ActiveRateGroupComponentBase object.

Parameters
queueDepthThe queue depth
instanceThe instance number

Definition at line 70 of file ActiveRateGroupComponentAc.cpp.

◆ isConnected_Log_OutputPort()

bool Svc::ActiveRateGroupComponentBase::isConnected_Log_OutputPort ( NATIVE_INT_TYPE  portNum)
protected

Check whether port Log is connected

Returns
Whether port Log is connected
Parameters
portNumThe port number

Definition at line 634 of file ActiveRateGroupComponentAc.cpp.

◆ isConnected_PingOut_OutputPort()

bool Svc::ActiveRateGroupComponentBase::isConnected_PingOut_OutputPort ( NATIVE_INT_TYPE  portNum)
protected

Check whether port PingOut is connected

Returns
Whether port PingOut is connected
Parameters
portNumThe port number

Definition at line 686 of file ActiveRateGroupComponentAc.cpp.

◆ isConnected_RateGroupMemberOut_OutputPort()

bool Svc::ActiveRateGroupComponentBase::isConnected_RateGroupMemberOut_OutputPort ( NATIVE_INT_TYPE  portNum)
protected

Check whether port RateGroupMemberOut is connected

Returns
Whether port RateGroupMemberOut is connected
Parameters
portNumThe port number

Definition at line 697 of file ActiveRateGroupComponentAc.cpp.

◆ isConnected_Time_OutputPort()

bool Svc::ActiveRateGroupComponentBase::isConnected_Time_OutputPort ( NATIVE_INT_TYPE  portNum)
protected

Check whether port Time is connected

Returns
Whether port Time is connected
Parameters
portNumThe port number

Definition at line 660 of file ActiveRateGroupComponentAc.cpp.

◆ isConnected_Tlm_OutputPort()

bool Svc::ActiveRateGroupComponentBase::isConnected_Tlm_OutputPort ( NATIVE_INT_TYPE  portNum)
protected

Check whether port Tlm is connected

Returns
Whether port Tlm is connected
Parameters
portNumThe port number

Definition at line 671 of file ActiveRateGroupComponentAc.cpp.

◆ log_DIAGNOSTIC_RateGroupStarted()

void Svc::ActiveRateGroupComponentBase::log_DIAGNOSTIC_RateGroupStarted ( )
protected

Log event RateGroupStarted

Informational event that rate group has started

Definition at line 889 of file ActiveRateGroupComponentAc.cpp.

◆ log_WARNING_HI_RateGroupCycleSlip()

void Svc::ActiveRateGroupComponentBase::log_WARNING_HI_RateGroupCycleSlip ( U32  cycle)
protected

Log event RateGroupCycleSlip

Warning event that rate group has had a cycle slip

Parameters
cycleThe cycle where the cycle occurred

Definition at line 960 of file ActiveRateGroupComponentAc.cpp.

◆ PingIn_handler()

virtual void Svc::ActiveRateGroupComponentBase::PingIn_handler ( NATIVE_INT_TYPE  portNum,
U32  key 
)
protectedpure virtual

Handler for input port PingIn.

Parameters
portNumThe port number
keyValue to return to pinger

◆ PingIn_handlerBase()

void Svc::ActiveRateGroupComponentBase::PingIn_handlerBase ( NATIVE_INT_TYPE  portNum,
U32  key 
)
protected

Handler base-class function for input port PingIn.

Parameters
portNumThe port number
keyValue to return to pinger

Definition at line 772 of file ActiveRateGroupComponentAc.cpp.

◆ PingIn_preMsgHook()

void Svc::ActiveRateGroupComponentBase::PingIn_preMsgHook ( NATIVE_INT_TYPE  portNum,
U32  key 
)
protectedvirtual

Pre-message hook for async input port PingIn.

Parameters
portNumThe port number
keyValue to return to pinger

Definition at line 842 of file ActiveRateGroupComponentAc.cpp.

◆ PingOut_out()

void Svc::ActiveRateGroupComponentBase::PingOut_out ( NATIVE_INT_TYPE  portNum,
U32  key 
)
protected

Invoke output port PingOut.

Parameters
portNumThe port number
keyValue to return to pinger

Definition at line 855 of file ActiveRateGroupComponentAc.cpp.

◆ RateGroupMemberOut_out()

void Svc::ActiveRateGroupComponentBase::RateGroupMemberOut_out ( NATIVE_INT_TYPE  portNum,
NATIVE_UINT_TYPE  context 
)
protected

Invoke output port RateGroupMemberOut.

Parameters
portNumThe port number
contextThe call order

Definition at line 870 of file ActiveRateGroupComponentAc.cpp.

◆ set_Log_OutputPort()

void Svc::ActiveRateGroupComponentBase::set_Log_OutputPort ( NATIVE_INT_TYPE  portNum,
Fw::InputLogPort port 
)

Connect port to Log[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 347 of file ActiveRateGroupComponentAc.cpp.

◆ set_PingOut_OutputPort()

void Svc::ActiveRateGroupComponentBase::set_PingOut_OutputPort ( NATIVE_INT_TYPE  portNum,
Svc::InputPingPort port 
)

Connect port to PingOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 411 of file ActiveRateGroupComponentAc.cpp.

◆ set_RateGroupMemberOut_OutputPort()

void Svc::ActiveRateGroupComponentBase::set_RateGroupMemberOut_OutputPort ( NATIVE_INT_TYPE  portNum,
Svc::InputSchedPort port 
)

Connect port to RateGroupMemberOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 425 of file ActiveRateGroupComponentAc.cpp.

◆ set_Time_OutputPort()

void Svc::ActiveRateGroupComponentBase::set_Time_OutputPort ( NATIVE_INT_TYPE  portNum,
Fw::InputTimePort port 
)

Connect port to Time[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 379 of file ActiveRateGroupComponentAc.cpp.

◆ set_Tlm_OutputPort()

void Svc::ActiveRateGroupComponentBase::set_Tlm_OutputPort ( NATIVE_INT_TYPE  portNum,
Fw::InputTlmPort port 
)

Connect port to Tlm[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 393 of file ActiveRateGroupComponentAc.cpp.

◆ tlmWrite_RgCycleSlips()

void Svc::ActiveRateGroupComponentBase::tlmWrite_RgCycleSlips ( U32  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel RgCycleSlips

Cycle slips for rate group

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 1100 of file ActiveRateGroupComponentAc.cpp.

◆ tlmWrite_RgMaxTime()

void Svc::ActiveRateGroupComponentBase::tlmWrite_RgMaxTime ( U32  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel RgMaxTime

Max execution time rate group

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 1052 of file ActiveRateGroupComponentAc.cpp.

Friends And Related Function Documentation

◆ ActiveRateGroupComponentBaseFriend

friend class ActiveRateGroupComponentBaseFriend
friend

Friend class for white-box testing.

Definition at line 41 of file ActiveRateGroupComponentAc.hpp.


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