7 #ifndef Svc_TlmChanComponentAc_HPP 8 #define Svc_TlmChanComponentAc_HPP 18 #if !FW_DIRECT_PORT_CALLS 21 #if !FW_DIRECT_PORT_CALLS 101 #if !FW_DIRECT_PORT_CALLS 139 #if !FW_DIRECT_PORT_CALLS 153 #if FW_ENABLE_TEXT_LOGGING == 1 156 void set_eventOutText_OutputPort(
171 #if !FW_DIRECT_PORT_CALLS 193 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 204 Fw::InputSerializePort* port
207 #if FW_ENABLE_TEXT_LOGGING == 1 210 void set_eventOutText_OutputPort(
212 Fw::InputSerializePort* port
220 Fw::InputSerializePort* port
225 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 236 Fw::InputSerializePort* port
242 Fw::InputSerializePort* port
255 const char* compName =
"" 308 #if FW_ENABLE_TEXT_LOGGING == 1 313 static constexpr
FwIndexType getNum_eventOutText_OutputPorts() {
359 #if FW_ENABLE_TEXT_LOGGING == 1 364 bool isConnected_eventOutText_OutputPort(
433 #if FW_DIRECT_PORT_CALLS 527 U32 numTimesDeferredCountReached
588 static void m_p_Run_in(
606 static void m_p_TlmRecv_in(
615 static void m_p_pingIn_in(
636 #if FW_ENABLE_TEXT_LOGGING 639 void eventOutText_out(
655 #if !FW_DIRECT_PORT_CALLS 677 #if !FW_DIRECT_PORT_CALLS 688 #if FW_ENABLE_TEXT_LOGGING == 1 700 #if !FW_DIRECT_PORT_CALLS 723 std::atomic<FwIndexType> m_TlmChanBucketPoolExhaustedThrottle;
virtual void TlmRecv_handler(FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)=0
Handler for input port TlmRecv.
virtual Fw::TlmValid TlmGet_handler(FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)=0
Handler for input port TlmGet.
PlatformSizeType FwSizeType
void pingIn_handlerBase(FwIndexType portNum, U32 key)
Handler base-class function for input port pingIn.
Fw::InputTlmPort * get_TlmRecv_InputPort(FwIndexType portNum)
friend class TlmChanTesterBase
Friend class tester to support autocoded test harness.
Fw::TlmValid TlmGet_handlerBase(FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)
Handler base-class function for input port TlmGet.
bool isConnected_pingOut_OutputPort(FwIndexType portNum) const
bool isConnected_PktSend_OutputPort(FwIndexType portNum) const
bool isConnected_eventOut_OutputPort(FwIndexType portNum) const
bool isConnected_timeCaller_OutputPort(FwIndexType portNum) const
virtual ~TlmChanComponentBase()
Destroy TlmChanComponentBase object.
Epoch Processing cap reached; one or more telemetry entries were deferred this cycle.
Auto-generated base for TlmChan component.
static constexpr FwIndexType getNum_Run_InputPorts()
void set_eventOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to eventOut[portNum].
void init()
Object initializer.
virtual void pingIn_handler(FwIndexType portNum, U32 key)=0
Handler for input port pingIn.
FwIdType FwEventIdType
The type of an event identifier.
void PktSend_out(FwIndexType portNum, Fw::ComBuffer &data, U32 context) const
Invoke output port PktSend.
virtual void lock()
Lock the guarded mutex.
Svc::InputSchedPort * get_Run_InputPort(FwIndexType portNum)
void pingOut_out(FwIndexType portNum, U32 key) const
Invoke output port pingOut.
static constexpr FwIndexType getNum_pingIn_InputPorts()
FwIdType FwChanIdType
The type of a telemetry channel identifier.
void log_WARNING_HI_TlmChanEpochProcessingCapReached(U32 numDeferred, U32 numTimesDeferredCountReached) const
static constexpr FwIndexType getNum_TlmRecv_InputPorts()
Enum representing event severity.
void set_PktSend_OutputPort(FwIndexType portNum, Fw::InputComPort *port)
Connect port to PktSend[portNum].
static constexpr FwIndexType getNum_eventOut_OutputPorts()
static constexpr FwIndexType getNum_PktSend_OutputPorts()
Throttle reset count for TlmChanBucketPoolExhausted.
virtual void Run_preMsgHook(FwIndexType portNum, U32 context)
Pre-message hook for async input port Run.
virtual void Run_handler(FwIndexType portNum, U32 context)=0
Handler for input port Run.
static constexpr FwIndexType getNum_pingOut_OutputPorts()
Svc::InputPingPort * get_pingIn_InputPort(FwIndexType portNum)
virtual void pingIn_preMsgHook(FwIndexType portNum, U32 key)
Pre-message hook for async input port pingIn.
void TlmRecv_handlerBase(FwIndexType portNum, FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)
Handler base-class function for input port TlmRecv.
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
PlatformIndexType FwIndexType
virtual void unLock()
Unlock the guarded mutex.
friend class TlmChanTester
Friend class tester implementation to support white-box testing.
Hash bucket pool is exhausted; the new telemetry channel was dropped.
void set_pingOut_OutputPort(FwIndexType portNum, Svc::InputPingPort *port)
Connect port to pingOut[portNum].
RateGroupDivider component implementation.
Fw::InputTlmGetPort * get_TlmGet_InputPort(FwIndexType portNum)
static constexpr FwIndexType getNum_timeCaller_OutputPorts()
static constexpr FwIndexType getNum_TlmGet_InputPorts()
TlmChanComponentBase(const char *compName="")
Construct TlmChanComponentBase object.
void Run_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port Run.
void log_WARNING_HI_TlmChanBucketPoolExhausted_ThrottleClear()
Reset throttle value for TlmChanBucketPoolExhausted.
void log_WARNING_HI_TlmChanBucketPoolExhausted(FwChanIdType Id)