7 #ifndef Svc_ComLoggerDpComponentAc_HPP 8 #define Svc_ComLoggerDpComponentAc_HPP 25 #if !FW_DIRECT_PORT_CALLS 28 #if !FW_DIRECT_PORT_CALLS 210 #if !FW_DIRECT_PORT_CALLS 227 #if !FW_DIRECT_PORT_CALLS 272 #if !FW_DIRECT_PORT_CALLS 280 #if FW_ENABLE_TEXT_LOGGING == 1 283 void set_LogText_OutputPort(
334 #if !FW_DIRECT_PORT_CALLS 350 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 358 #if FW_ENABLE_TEXT_LOGGING == 1 361 void set_LogText_OutputPort(
363 Fw::InputSerializePort* port
371 Fw::InputSerializePort* port
377 Fw::InputSerializePort* port
383 Fw::InputSerializePort* port
389 Fw::InputSerializePort* port
395 Fw::InputSerializePort* port
401 Fw::InputSerializePort* port
406 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 417 Fw::InputSerializePort* port
441 const char* compName =
"" 507 #if FW_ENABLE_TEXT_LOGGING == 1 512 static constexpr
FwIndexType getNum_LogText_OutputPorts() {
586 #if FW_ENABLE_TEXT_LOGGING == 1 591 bool isConnected_LogText_OutputPort(
659 #if FW_DIRECT_PORT_CALLS 716 #if FW_DIRECT_PORT_CALLS 1067 DpContainer& container,
1098 static void m_p_cmdIn_in(
1113 static void m_p_comIn_in(
1121 static void m_p_pingIn_in(
1128 static void m_p_schedIn_in(
1135 static void m_p_startRecordingIn_in(
1143 static void m_p_stopRecordingIn_in(
1154 #if FW_ENABLE_TEXT_LOGGING 1174 void cmdResponseOut_out(
1199 void productSendOut_out(
1206 void timeCaller_out(
1231 DpContainer& container
1234 #if !FW_DIRECT_PORT_CALLS 1247 #if !FW_DIRECT_PORT_CALLS 1272 #if !FW_DIRECT_PORT_CALLS 1280 #if FW_ENABLE_TEXT_LOGGING == 1 1310 #if !FW_DIRECT_PORT_CALLS 1330 std::atomic<FwIndexType> m_DpBufferErrorThrottle;
void setBaseId(FwDpIdType baseId)
Fw::InputComPort * get_comIn_InputPort(FwIndexType portNum)
Started recording Com buffers.
A data product Container.
static constexpr FwIndexType getNum_logOut_OutputPorts()
Throttle reset count for DpBufferError.
void set_logOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to logOut[portNum].
static constexpr FwIndexType getNum_productGetOut_OutputPorts()
friend class ComLoggerDpTester
Friend class tester implementation to support white-box testing.
static constexpr FwSizeType SIZE_OF_ComBufferRecord_RECORD(FwSizeType arraySize)
Record sizes.
FwIdType FwOpcodeType
The type of a command opcode.
virtual ~ComLoggerDpComponentBase()
Destroy ComLoggerDpComponentBase object.
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
PlatformSizeType FwSizeType
Fw::Success::T dpGet_ComBuffContainer(FwSizeType dataSize, DpContainer &container)
Svc::InputComLoggerStartPort * get_startRecordingIn_InputPort(FwIndexType portNum)
static constexpr FwIndexType getNum_cmdRegOut_OutputPorts()
Failed to start recording due to invalid configuration.
U32 FwDpPriorityType
The type of a data product priority.
void dpSend(DpContainer &container, Fw::Time timeTag=Fw::ZERO_TIME)
Send a data product.
void set_productSendOut_OutputPort(FwIndexType portNum, Fw::InputDpSendPort *port)
Connect port to productSendOut[portNum].
static constexpr FwIndexType getNum_pingOut_OutputPorts()
static constexpr FwIndexType getNum_schedIn_InputPorts()
bool isConnected_pingOut_OutputPort(FwIndexType portNum) const
void log_ACTIVITY_LO_CountersCleared() const
Starts recording ComBuffers at the specified priority.
virtual void StartComDp_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, FwSizeType packetsPerContainer, FwDpPriorityType priority)=0
FwDpIdType getBaseId() const
void StartComDp_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void tlmWrite_NumBuffersDropped(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
void startRecordingIn_handlerBase(FwIndexType portNum, FwSizeType packetsPerContainer, FwDpPriorityType priority)
Handler base-class function for input port startRecordingIn.
Stopped recording Com buffers.
static constexpr FwIndexType getNum_productSendOut_OutputPorts()
void set_pingOut_OutputPort(FwIndexType portNum, Svc::InputPingPort *port)
Connect port to pingOut[portNum].
The container default priorities.
void tlmWrite(FwChanIdType id, Fw::TlmBuffer &_tlmBuff, Fw::Time _tlmTime=Fw::Time()) const
Enum representing a command response.
virtual void pingIn_handler(FwIndexType portNum, U32 key)=0
Handler for input port pingIn.
void set_productGetOut_OutputPort(FwIndexType portNum, Fw::InputDpGetPort *port)
Connect port to productGetOut[portNum].
void StopComDp_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Updated data product priority.
static constexpr FwIndexType getNum_comIn_InputPorts()
void init()
Object initializer.
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum) const
Svc::InputSchedPort * get_schedIn_InputPort(FwIndexType portNum)
SerializeStatus
forward declaration for string
void log_WARNING_HI_DpBufferError(U32 size)
Log event DpBufferError.
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
virtual void StopComDp_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command StopComDp.
FwIdType FwEventIdType
The type of an event identifier.
Auto-generated base for ComLoggerDp component.
Svc::InputComLoggerStopPort * get_stopRecordingIn_InputPort(FwIndexType portNum)
A data product container.
Channel ID for NumBuffersLogged.
bool isConnected_cmdRegOut_OutputPort(FwIndexType portNum) const
virtual void UpdatePriority_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, FwDpPriorityType priority)=0
virtual void comIn_preMsgHook(FwIndexType portNum, Fw::ComBuffer &data, U32 context)
Pre-message hook for async input port comIn.
static constexpr FwIndexType getNum_pingIn_InputPorts()
void log_ACTIVITY_LO_PriorityUpdated(FwDpPriorityType priority) const
Channel ID for NumBuffersDropped.
friend class ComLoggerDpTesterBase
Friend class tester to support autocoded test harness.
FwIdType FwChanIdType
The type of a telemetry channel identifier.
virtual void comIn_handler(FwIndexType portNum, Fw::ComBuffer &data, U32 context)=0
Handler for input port comIn.
Fw::SerializeStatus serializeRecord_ComBufferRecord(const U8 *array, FwSizeType size)
bool isConnected_logOut_OutputPort(FwIndexType portNum) const
Channel ID for LoggingEnabled.
FwSizeType FwSizeStoreType
static constexpr FwIndexType getNum_stopRecordingIn_InputPorts()
void pingOut_out(FwIndexType portNum, U32 key) const
Invoke output port pingOut.
Enum representing event severity.
virtual void UpdatePriority_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command UpdatePriority.
virtual void StartComDp_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command StartComDp.
void stopRecordingIn_handlerBase(FwIndexType portNum)
Handler base-class function for input port stopRecordingIn.
virtual void schedIn_handler(FwIndexType portNum, U32 context)=0
Handler for input port schedIn.
uint8_t U8
8-bit unsigned integer
virtual void StopComDp_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
Svc::InputPingPort * get_pingIn_InputPort(FwIndexType portNum)
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
FwIdType FwDpIdType
The type of a data product identifier.
void comIn_handlerBase(FwIndexType portNum, Fw::ComBuffer &data, U32 context)
Handler base-class function for input port comIn.
Updates the priority of the active container (if any) and of all future containers.
void schedIn_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port schedIn.
bool isConnected_timeCaller_OutputPort(FwIndexType portNum) const
void log_WARNING_LO_StartRecordingFailed(FwSizeType packetsPerContainer) const
virtual void startRecordingIn_handler(FwIndexType portNum, FwSizeType packetsPerContainer, FwDpPriorityType priority)=0
Handler for input port startRecordingIn.
PlatformIndexType FwIndexType
virtual void CLEAR_COUNTERS_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CLEAR_COUNTERS.
virtual void stopRecordingIn_handler(FwIndexType portNum)=0
Handler for input port stopRecordingIn.
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts()
virtual void schedIn_preMsgHook(FwIndexType portNum, U32 context)
Pre-message hook for async input port schedIn.
virtual void stopRecordingIn_preMsgHook(FwIndexType portNum)
Pre-message hook for async input port stopRecordingIn.
RateGroupDivider component implementation.
void set_cmdRegOut_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegOut[portNum].
bool isConnected_productGetOut_OutputPort(FwIndexType portNum) const
static constexpr FwIndexType getNum_tlmOut_OutputPorts()
Fw::InputCmdPort * get_cmdIn_InputPort(FwIndexType portNum)
void cmdIn_handlerBase(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Handler base-class function for input port cmdIn.
Whether a partial container was sent when recording stopped.
void tlmWrite_NumQueueDrops(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
Clears NumBuffersLogged and NumBuffersDropped counters and DpBufferError event throttle.
void UpdatePriority_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void log_ACTIVITY_HI_ComDpStarted(FwSizeType packetsPerContainer) const
Channel ID for NumQueueDrops.
static constexpr FwIndexType getNum_startRecordingIn_InputPorts()
ComLoggerDpComponentBase(const char *compName="")
Construct ComLoggerDpComponentBase object.
void log_ACTIVITY_HI_ComDpStopped(const Svc::ComLoggerDp_PartialContainerStatus &partialContainer) const
void log_WARNING_HI_DpBufferError_ThrottleClear()
Reset throttle value for DpBufferError.
void tlmWrite_NumBuffersLogged(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
DpContainer()
Constructor with default initialization.
virtual void CLEAR_COUNTERS_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
bool isConnected_productSendOut_OutputPort(FwIndexType portNum) const
virtual void startRecordingIn_preMsgHook(FwIndexType portNum, FwSizeType packetsPerContainer, FwDpPriorityType priority)
Pre-message hook for async input port startRecordingIn.
void tlmWrite_LoggingEnabled(bool arg, Fw::Time _tlmTime=Fw::Time()) const
void pingIn_handlerBase(FwIndexType portNum, U32 key)
Handler base-class function for input port pingIn.
virtual void pingIn_preMsgHook(FwIndexType portNum, U32 key)
Pre-message hook for async input port pingIn.
bool isConnected_tlmOut_OutputPort(FwIndexType portNum) const
void regCommands()
Register commands with the Command Dispatcher.
void CLEAR_COUNTERS_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
static constexpr FwIndexType getNum_cmdIn_InputPorts()
static constexpr FwIndexType getNum_timeCaller_OutputPorts()