7 #ifndef Svc_ActiveRateGroupComponentAc_HPP 8 #define Svc_ActiveRateGroupComponentAc_HPP 17 #if !FW_DIRECT_PORT_CALLS 20 #if !FW_DIRECT_PORT_CALLS 99 #if !FW_DIRECT_PORT_CALLS 123 #if !FW_DIRECT_PORT_CALLS 137 #if FW_ENABLE_TEXT_LOGGING == 1 140 void set_LogText_OutputPort(
161 #if !FW_DIRECT_PORT_CALLS 183 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 194 Fw::InputSerializePort* port
197 #if FW_ENABLE_TEXT_LOGGING == 1 200 void set_LogText_OutputPort(
202 Fw::InputSerializePort* port
210 Fw::InputSerializePort* port
216 Fw::InputSerializePort* port
221 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 232 Fw::InputSerializePort* port
238 Fw::InputSerializePort* port
251 const char* compName =
"" 290 #if FW_ENABLE_TEXT_LOGGING == 1 295 static constexpr
FwIndexType getNum_LogText_OutputPorts() {
348 #if FW_ENABLE_TEXT_LOGGING == 1 353 bool isConnected_LogText_OutputPort(
411 #if FW_DIRECT_PORT_CALLS 558 static void m_p_CycleIn_in(
565 static void m_p_PingIn_in(
586 #if FW_ENABLE_TEXT_LOGGING 613 #if !FW_DIRECT_PORT_CALLS 629 #if !FW_DIRECT_PORT_CALLS 640 #if FW_ENABLE_TEXT_LOGGING == 1 655 #if !FW_DIRECT_PORT_CALLS 678 bool m_first_update_RgMaxTime =
true;
681 bool m_first_update_RgCycleSlips =
true;
690 U32 m_last_RgMaxTime = {};
693 U32 m_last_RgCycleSlips = {};
void set_PingOut_OutputPort(FwIndexType portNum, Svc::InputPingPort *port)
Connect port to PingOut[portNum].
Informational event that rate group has started.
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()
Warning event that rate group has had a cycle slip.
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].
Channel ID for RgMaxTime.
FwIdType FwEventIdType
The type of an event identifier.
bool isConnected_PingOut_OutputPort(FwIndexType portNum) const
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
void set_Time_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to Time[portNum].
virtual void CycleIn_handler(FwIndexType portNum, Os::RawTime &cycleStart)=0
Handler for input port CycleIn.
Auto-generated base for ActiveRateGroup component.
Channel ID for RgCycleSlips.
PlatformIndexType FwIndexType
static constexpr FwIndexType getNum_Tlm_OutputPorts()
static constexpr FwIndexType getNum_CycleIn_InputPorts()
void tlmWrite(FwChanIdType id, Fw::TlmBuffer &_tlmBuff, Fw::Time _tlmTime=Fw::Time()) const
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.