7 #ifndef Svc_FileUplinkComponentAc_HPP 8 #define Svc_FileUplinkComponentAc_HPP 18 #if !FW_DIRECT_PORT_CALLS 21 #if !FW_DIRECT_PORT_CALLS 121 #if !FW_DIRECT_PORT_CALLS 145 #if !FW_DIRECT_PORT_CALLS 153 #if FW_ENABLE_TEXT_LOGGING == 1 156 void set_LogText_OutputPort(
183 #if !FW_DIRECT_PORT_CALLS 211 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 219 #if FW_ENABLE_TEXT_LOGGING == 1 222 void set_LogText_OutputPort(
224 Fw::InputSerializePort* port
232 Fw::InputSerializePort* port
238 Fw::InputSerializePort* port
244 Fw::InputSerializePort* port
249 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 260 Fw::InputSerializePort* port
266 Fw::InputSerializePort* port
272 Fw::InputSerializePort* port
285 const char* compName =
"" 317 #if FW_ENABLE_TEXT_LOGGING == 1 322 static constexpr
FwIndexType getNum_LogText_OutputPorts() {
382 #if FW_ENABLE_TEXT_LOGGING == 1 387 bool isConnected_LogText_OutputPort(
459 #if FW_DIRECT_PORT_CALLS 709 static void m_p_bufferSendIn_in(
716 static void m_p_pingIn_in(
728 #if FW_ENABLE_TEXT_LOGGING 764 #if !FW_DIRECT_PORT_CALLS 780 #if !FW_DIRECT_PORT_CALLS 788 #if FW_ENABLE_TEXT_LOGGING == 1 806 #if !FW_DIRECT_PORT_CALLS 832 std::atomic<FwIndexType> m_FileWriteErrorThrottle;
835 std::atomic<FwIndexType> m_InvalidReceiveModeThrottle;
838 std::atomic<FwIndexType> m_PacketOutOfBoundsThrottle;
841 std::atomic<FwIndexType> m_PacketOutOfOrderThrottle;
844 std::atomic<FwIndexType> m_PacketDuplicateThrottle;
void tlmWrite_FilesReceived(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
U16 FwPacketDescriptorType
The width of packet descriptors when they are serialized by the framework.
bool isConnected_tlmOut_OutputPort(FwIndexType portNum) const
An error occurred writing to a file.
void set_bufferSendOut_OutputPort(FwIndexType portNum, Fw::InputBufferSendPort *port)
Connect port to bufferSendOut[portNum].
The File Uplink component received a CANCEL packet.
PlatformSizeType FwSizeType
void log_ACTIVITY_HI_UplinkCanceled() const
void log_WARNING_HI_BadChecksum(const Fw::StringBase &fileName, U32 computed, U32 read) const
void set_eventOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to eventOut[portNum].
void bufferSendOut_out(FwIndexType portNum, Fw::Buffer &fwBuffer) const
Invoke output port bufferSendOut.
static constexpr FwIndexType getNum_bufferSendOut_OutputPorts()
An error occurred opening a file.
void tlmWrite(FwChanIdType id, Fw::TlmBuffer &_tlmBuff, Fw::Time _tlmTime=Fw::Time()) const
void log_WARNING_HI_InvalidReceiveMode_ThrottleClear()
Reset throttle value for InvalidReceiveMode.
Channel ID for FilesReceived.
static constexpr FwIndexType getNum_pingIn_InputPorts()
void pingOut_out(FwIndexType portNum, U32 key) const
Invoke output port pingOut.
virtual void bufferSendIn_handler(FwIndexType portNum, Fw::Buffer &fwBuffer)=0
Handler for input port bufferSendIn.
Throttle reset count for PacketDuplicate.
Error decoding file packet.
void init()
Object initializer.
void log_WARNING_HI_DecodeError(I32 status) const
bool isConnected_timeCaller_OutputPort(FwIndexType portNum) const
void log_WARNING_HI_PacketDuplicate(U32 packetIndex)
During receipt of a file, the File Uplink component encountered a packet with offset and size out of ...
FwIdType FwEventIdType
The type of an event identifier.
static constexpr FwIndexType getNum_fileAnnounce_OutputPorts()
void log_ACTIVITY_HI_FileReceived(const Fw::StringBase &fileName) const
static constexpr FwIndexType getNum_bufferSendIn_InputPorts()
void log_WARNING_HI_PacketOutOfOrder_ThrottleClear()
Reset throttle value for PacketOutOfOrder.
virtual void pingIn_preMsgHook(FwIndexType portNum, U32 key)
Pre-message hook for async input port pingIn.
void log_WARNING_HI_InvalidReceiveMode(FwPacketDescriptorType packetType, U32 mode)
void log_WARNING_HI_PacketOutOfBounds(U32 packetIndex, const Fw::StringBase &fileName)
Fw::InputBufferSendPort * get_bufferSendIn_InputPort(FwIndexType portNum)
bool isConnected_eventOut_OutputPort(FwIndexType portNum) const
Channel ID for PacketsReceived.
static constexpr FwIndexType getNum_eventOut_OutputPorts()
void log_WARNING_HI_PacketDuplicate_ThrottleClear()
Reset throttle value for PacketDuplicate.
static constexpr FwIndexType getNum_pingOut_OutputPorts()
void bufferSendIn_handlerBase(FwIndexType portNum, Fw::Buffer &fwBuffer)
Handler base-class function for input port bufferSendIn.
void log_WARNING_HI_FileWriteError(const Fw::StringBase &fileName)
The File Uplink component encountered a duplicate packet during file receipt.
bool isConnected_fileAnnounce_OutputPort(FwIndexType portNum) const
FileUplinkComponentBase(const char *compName="")
Construct FileUplinkComponentBase object.
The File Uplink component encountered an out-of-order packet during file receipt. ...
FwIdType FwChanIdType
The type of a telemetry channel identifier.
void set_fileAnnounce_OutputPort(FwIndexType portNum, Svc::InputFileAnnouncePort *port)
Connect port to fileAnnounce[portNum].
void tlmWrite_Warnings(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
The File Uplink component successfully received a file.
During receipt of a file, the computed checksum value did not match the stored value.
void log_WARNING_HI_FileWriteError_ThrottleClear()
Reset throttle value for FileWriteError.
friend class FileUplinkTesterBase
Friend class tester to support autocoded test harness.
void log_WARNING_HI_FileOpenError(const Fw::StringBase &fileName) const
Enum representing event severity.
bool isConnected_bufferSendOut_OutputPort(FwIndexType portNum) const
virtual ~FileUplinkComponentBase()
Destroy FileUplinkComponentBase object.
static constexpr FwIndexType getNum_timeCaller_OutputPorts()
Throttle reset count for PacketOutOfBounds.
void pingIn_handlerBase(FwIndexType portNum, U32 key)
Handler base-class function for input port pingIn.
Svc::InputPingPort * get_pingIn_InputPort(FwIndexType portNum)
Auto-generated base for FileUplink component.
void log_WARNING_HI_InvalidPacketReceived(FwPacketDescriptorType packetType) const
virtual void bufferSendIn_preMsgHook(FwIndexType portNum, Fw::Buffer &fwBuffer)
Pre-message hook for async input port bufferSendIn.
Throttle reset count for PacketOutOfOrder.
virtual void pingIn_handler(FwIndexType portNum, U32 key)=0
Handler for input port pingIn.
friend class FileUplinkTester
Friend class tester implementation to support white-box testing.
void tlmWrite_PacketsReceived(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
PlatformIndexType FwIndexType
void fileAnnounce_out(FwIndexType portNum, Fw::StringBase &file_name) const
Invoke output port fileAnnounce.
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
void set_pingOut_OutputPort(FwIndexType portNum, Svc::InputPingPort *port)
Connect port to pingOut[portNum].
RateGroupDivider component implementation.
Throttle reset count for FileWriteError.
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
static constexpr FwIndexType getNum_tlmOut_OutputPorts()
void log_WARNING_HI_PacketOutOfBounds_ThrottleClear()
Reset throttle value for PacketOutOfBounds.
void log_WARNING_HI_PacketOutOfOrder(U32 packetIndex, U32 lastPacketIndex)
Throttle reset count for InvalidReceiveMode.
bool isConnected_pingOut_OutputPort(FwIndexType portNum) const
The File Uplink component received a packet with a type that was invalid for the current receive mode...