7 #ifndef Svc_ActiveRateGroupComponentAc_HPP 8 #define Svc_ActiveRateGroupComponentAc_HPP 16 #if FW_ENABLE_TEXT_LOGGING == 1 19 #if !FW_DIRECT_PORT_CALLS 22 #if !FW_DIRECT_PORT_CALLS 101 #if !FW_DIRECT_PORT_CALLS 125 #if !FW_DIRECT_PORT_CALLS 139 #if FW_ENABLE_TEXT_LOGGING == 1 142 void set_LogText_OutputPort(
163 #if !FW_DIRECT_PORT_CALLS 185 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 196 Fw::InputSerializePort* port
199 #if FW_ENABLE_TEXT_LOGGING == 1 202 void set_LogText_OutputPort(
204 Fw::InputSerializePort* port
212 Fw::InputSerializePort* port
218 Fw::InputSerializePort* port
223 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 234 Fw::InputSerializePort* port
240 Fw::InputSerializePort* port
253 const char* compName =
"" 292 #if FW_ENABLE_TEXT_LOGGING == 1 297 static constexpr
FwIndexType getNum_LogText_OutputPorts() {
350 #if FW_ENABLE_TEXT_LOGGING == 1 355 bool isConnected_LogText_OutputPort(
413 #if FW_DIRECT_PORT_CALLS 544 static void m_p_CycleIn_in(
551 static void m_p_PingIn_in(
572 #if FW_ENABLE_TEXT_LOGGING 599 #if !FW_DIRECT_PORT_CALLS 615 #if !FW_DIRECT_PORT_CALLS 626 #if FW_ENABLE_TEXT_LOGGING == 1 641 #if !FW_DIRECT_PORT_CALLS 664 bool m_first_update_RgMaxTime =
true;
667 bool m_first_update_RgCycleSlips =
true;
676 U32 m_last_RgMaxTime = {};
679 U32 m_last_RgCycleSlips = {};
void set_PingOut_OutputPort(FwIndexType portNum, Svc::InputPingPort *port)
Connect port to PingOut[portNum].
void tlmWrite_RgCycleSlips(U32 arg, Fw::Time _tlmTime=Fw::Time())
friend class ActiveRateGroupTesterBase
Friend class tester to support autocoded test harness.
PlatformSizeType FwSizeType
static constexpr FwIndexType getNum_PingIn_InputPorts()
static constexpr FwIndexType getNum_RateGroupMemberOut_OutputPorts()
void CycleIn_handlerBase(FwIndexType portNum, Os::RawTime &cycleStart)
Handler base-class function for input port CycleIn.
static constexpr FwIndexType getNum_Log_OutputPorts()
Informational event that rate group has started.
void PingOut_out(FwIndexType portNum, U32 key) const
Invoke output port PingOut.
bool isConnected_Tlm_OutputPort(FwIndexType portNum) const
static constexpr FwIndexType getNum_Time_OutputPorts()
virtual void PingIn_preMsgHook(FwIndexType portNum, U32 key)
Pre-message hook for async input port PingIn.
virtual ~ActiveRateGroupComponentBase()
Destroy ActiveRateGroupComponentBase object.
virtual void CycleIn_preMsgHook(FwIndexType portNum, Os::RawTime &cycleStart)
Pre-message hook for async input port CycleIn.
void set_Log_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to Log[portNum].
void init()
Object initializer.
ActiveRateGroupComponentBase(const char *compName="")
Construct ActiveRateGroupComponentBase object.
bool isConnected_Time_OutputPort(FwIndexType portNum) const
void set_RateGroupMemberOut_OutputPort(FwIndexType portNum, Svc::InputSchedPort *port)
Connect port to RateGroupMemberOut[portNum].
FwIdType FwEventIdType
The type of an event identifier.
bool isConnected_PingOut_OutputPort(FwIndexType portNum) const
Channel ID for RgMaxTime.
FwIdType FwChanIdType
The type of a telemetry channel identifier.
static constexpr FwIndexType getNum_PingOut_OutputPorts()
void log_DIAGNOSTIC_RateGroupStarted() const
void tlmWrite_RgMaxTime(U32 arg, Fw::Time _tlmTime=Fw::Time())
Enum representing event severity.
bool isConnected_Log_OutputPort(FwIndexType portNum) const
void RateGroupMemberOut_out(FwIndexType portNum, U32 context) const
Invoke output port RateGroupMemberOut.
void log_WARNING_HI_RateGroupCycleSlip(U32 cycle) const
Warning event that rate group has had a cycle slip.
void set_Time_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to Time[portNum].
Channel ID for RgCycleSlips.
virtual void CycleIn_handler(FwIndexType portNum, Os::RawTime &cycleStart)=0
Handler for input port CycleIn.
Auto-generated base for ActiveRateGroup component.
PlatformIndexType FwIndexType
static constexpr FwIndexType getNum_Tlm_OutputPorts()
static constexpr FwIndexType getNum_CycleIn_InputPorts()
Svc::InputPingPort * get_PingIn_InputPort(FwIndexType portNum)
RateGroupDivider component implementation.
virtual void PingIn_handler(FwIndexType portNum, U32 key)=0
Handler for input port PingIn.
friend class ActiveRateGroupTester
Friend class tester implementation to support white-box testing.
bool isConnected_RateGroupMemberOut_OutputPort(FwIndexType portNum) const
Svc::InputCyclePort * get_CycleIn_InputPort(FwIndexType portNum)
void set_Tlm_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to Tlm[portNum].
void PingIn_handlerBase(FwIndexType portNum, U32 key)
Handler base-class function for input port PingIn.