F´ Flight Software - C/C++ Documentation  devel
A framework for building embedded system applications to NASA flight quality standards.
DpWriterComponentAc.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title DpWriterComponentAc.hpp
3 // \author Generated by fpp-to-cpp
4 // \brief hpp file for DpWriter component base class
5 // ======================================================================
6 
7 #ifndef Svc_DpWriterComponentAc_HPP
8 #define Svc_DpWriterComponentAc_HPP
9 
10 #include "FpConfig.hpp"
12 #include "Fw/Cmd/CmdPortAc.hpp"
13 #include "Fw/Cmd/CmdRegPortAc.hpp"
15 #include "Fw/Cmd/CmdString.hpp"
17 #include "Fw/Log/LogPortAc.hpp"
18 #include "Fw/Log/LogString.hpp"
19 #if FW_ENABLE_TEXT_LOGGING == 1
20 #include "Fw/Log/LogTextPortAc.hpp"
21 #endif
24 #include "Fw/Time/TimePortAc.hpp"
25 #include "Fw/Tlm/TlmPortAc.hpp"
26 #include "Fw/Tlm/TlmString.hpp"
29 
30 namespace Svc {
31 
38  {
39 
40  // ----------------------------------------------------------------------
41  // Friend classes
42  // ----------------------------------------------------------------------
43 
46 
47  PROTECTED:
48 
49  // ----------------------------------------------------------------------
50  // Constants
51  // ----------------------------------------------------------------------
52 
54  enum {
56  };
57 
59  enum {
62  };
63 
65  enum {
72  };
73 
75  enum {
79  };
80 
82  enum {
84  };
85 
87  enum {
96  };
97 
99  enum {
107  };
108 
110  enum {
116  };
117 
118  public:
119 
120  // ----------------------------------------------------------------------
121  // Component initialization
122  // ----------------------------------------------------------------------
123 
125  void init(
126  FwSizeType queueDepth,
127  FwEnumStoreType instance = 0
128  );
129 
130  public:
131 
132  // ----------------------------------------------------------------------
133  // Getters for special input ports
134  // ----------------------------------------------------------------------
135 
140  FwIndexType portNum
141  );
142 
143  public:
144 
145  // ----------------------------------------------------------------------
146  // Getters for typed input ports
147  // ----------------------------------------------------------------------
148 
153  FwIndexType portNum
154  );
155 
160  FwIndexType portNum
161  );
162 
163  public:
164 
165  // ----------------------------------------------------------------------
166  // Connect input ports to special output ports
167  // ----------------------------------------------------------------------
168 
171  FwIndexType portNum,
172  Fw::InputCmdRegPort* port
173  );
174 
177  FwIndexType portNum,
179  );
180 
183  FwIndexType portNum,
184  Fw::InputLogPort* port
185  );
186 
187 #if FW_ENABLE_TEXT_LOGGING == 1
188 
190  void set_textEventOut_OutputPort(
191  FwIndexType portNum,
192  Fw::InputLogTextPort* port
193  );
194 
195 #endif
196 
199  FwIndexType portNum,
200  Fw::InputTimePort* port
201  );
202 
205  FwIndexType portNum,
206  Fw::InputTlmPort* port
207  );
208 
209  public:
210 
211  // ----------------------------------------------------------------------
212  // Connect typed input ports to typed output ports
213  // ----------------------------------------------------------------------
214 
217  FwIndexType portNum,
219  );
220 
223  FwIndexType portNum,
225  );
226 
229  FwIndexType portNum,
231  );
232 
233 #if FW_PORT_SERIALIZATION
234 
235  public:
236 
237  // ----------------------------------------------------------------------
238  // Connect serial input ports to special output ports
239  // ----------------------------------------------------------------------
240 
243  FwIndexType portNum,
244  Fw::InputSerializePort* port
245  );
246 
249  FwIndexType portNum,
250  Fw::InputSerializePort* port
251  );
252 
255  FwIndexType portNum,
256  Fw::InputSerializePort* port
257  );
258 
259 #if FW_ENABLE_TEXT_LOGGING == 1
260 
262  void set_textEventOut_OutputPort(
263  FwIndexType portNum,
264  Fw::InputSerializePort* port
265  );
266 
267 #endif
268 
271  FwIndexType portNum,
272  Fw::InputSerializePort* port
273  );
274 
277  FwIndexType portNum,
278  Fw::InputSerializePort* port
279  );
280 
281 #endif
282 
283 #if FW_PORT_SERIALIZATION
284 
285  public:
286 
287  // ----------------------------------------------------------------------
288  // Connect serial input ports to typed output ports
289  // ----------------------------------------------------------------------
290 
293  FwIndexType portNum,
294  Fw::InputSerializePort* port
295  );
296 
299  FwIndexType portNum,
300  Fw::InputSerializePort* port
301  );
302 
305  FwIndexType portNum,
306  Fw::InputSerializePort* port
307  );
308 
309 #endif
310 
311  public:
312 
313  // ----------------------------------------------------------------------
314  // Command registration
315  // ----------------------------------------------------------------------
316 
320  void regCommands();
321 
322  PROTECTED:
323 
324  // ----------------------------------------------------------------------
325  // Component construction and destruction
326  // ----------------------------------------------------------------------
327 
330  const char* compName = ""
331  );
332 
334  virtual ~DpWriterComponentBase();
335 
336  PROTECTED:
337 
338  // ----------------------------------------------------------------------
339  // Getters for numbers of special input ports
340  // ----------------------------------------------------------------------
341 
346 
347  PROTECTED:
348 
349  // ----------------------------------------------------------------------
350  // Getters for numbers of typed input ports
351  // ----------------------------------------------------------------------
352 
357 
362 
363  PROTECTED:
364 
365  // ----------------------------------------------------------------------
366  // Getters for numbers of special output ports
367  // ----------------------------------------------------------------------
368 
373 
378 
383 
384 #if FW_ENABLE_TEXT_LOGGING == 1
385 
389  FwIndexType getNum_textEventOut_OutputPorts() const;
390 
391 #endif
392 
397 
402 
403  PROTECTED:
404 
405  // ----------------------------------------------------------------------
406  // Getters for numbers of typed output ports
407  // ----------------------------------------------------------------------
408 
413 
418 
423 
424  PROTECTED:
425 
426  // ----------------------------------------------------------------------
427  // Connection status queries for special output ports
428  // ----------------------------------------------------------------------
429 
434  FwIndexType portNum
435  );
436 
441  FwIndexType portNum
442  );
443 
448  FwIndexType portNum
449  );
450 
451 #if FW_ENABLE_TEXT_LOGGING == 1
452 
456  bool isConnected_textEventOut_OutputPort(
457  FwIndexType portNum
458  );
459 
460 #endif
461 
466  FwIndexType portNum
467  );
468 
473  FwIndexType portNum
474  );
475 
476  PROTECTED:
477 
478  // ----------------------------------------------------------------------
479  // Connection status queries for typed output ports
480  // ----------------------------------------------------------------------
481 
486  FwIndexType portNum
487  );
488 
493  FwIndexType portNum
494  );
495 
500  FwIndexType portNum
501  );
502 
503  PROTECTED:
504 
505  // ----------------------------------------------------------------------
506  // Handlers to implement for typed input ports
507  // ----------------------------------------------------------------------
508 
510  virtual void bufferSendIn_handler(
511  FwIndexType portNum,
512  Fw::Buffer& fwBuffer
513  ) = 0;
514 
516  virtual void schedIn_handler(
517  FwIndexType portNum,
518  U32 context
519  ) = 0;
520 
521  PROTECTED:
522 
523  // ----------------------------------------------------------------------
524  // Port handler base-class functions for typed input ports
525  //
526  // Call these functions directly to bypass the corresponding ports
527  // ----------------------------------------------------------------------
528 
531  FwIndexType portNum,
532  Fw::Buffer& fwBuffer
533  );
534 
536  void schedIn_handlerBase(
537  FwIndexType portNum,
538  U32 context
539  );
540 
541  PROTECTED:
542 
543  // ----------------------------------------------------------------------
544  // Pre-message hooks for typed async input ports
545  //
546  // Each of these functions is invoked just before processing a message
547  // on the corresponding port. By default, they do nothing. You can
548  // override them to provide specific pre-message behavior.
549  // ----------------------------------------------------------------------
550 
552  virtual void bufferSendIn_preMsgHook(
553  FwIndexType portNum,
554  Fw::Buffer& fwBuffer
555  );
556 
558  virtual void schedIn_preMsgHook(
559  FwIndexType portNum,
560  U32 context
561  );
562 
563  PROTECTED:
564 
565  // ----------------------------------------------------------------------
566  // Invocation functions for typed output ports
567  // ----------------------------------------------------------------------
568 
571  FwIndexType portNum,
572  Fw::Buffer& fwBuffer
573  );
574 
576  void dpWrittenOut_out(
577  FwIndexType portNum,
578  const Fw::StringBase& fileName,
579  FwDpPriorityType priority,
580  FwSizeType size
581  );
582 
585  FwIndexType portNum,
586  Fw::Buffer& fwBuffer
587  );
588 
589  PROTECTED:
590 
591  // ----------------------------------------------------------------------
592  // Command response
593  // ----------------------------------------------------------------------
594 
596  void cmdResponse_out(
597  FwOpcodeType opCode,
598  U32 cmdSeq,
599  Fw::CmdResponse response
600  );
601 
602  PROTECTED:
603 
604  // ----------------------------------------------------------------------
605  // Command handlers to implement
606  // ----------------------------------------------------------------------
607 
612  FwOpcodeType opCode,
613  U32 cmdSeq
614  ) = 0;
615 
616  PROTECTED:
617 
618  // ----------------------------------------------------------------------
619  // Command handler base-class functions
620  //
621  // Call these functions directly to bypass the command input port
622  // ----------------------------------------------------------------------
623 
628  FwOpcodeType opCode,
629  U32 cmdSeq,
630  Fw::CmdArgBuffer& args
631  );
632 
633  PROTECTED:
634 
635  // ----------------------------------------------------------------------
636  // Pre-message hooks for async commands
637  //
638  // Each of these functions is invoked just before processing the
639  // corresponding command. By default they do nothing. You can
640  // override them to provide specific pre-command behavior.
641  // ----------------------------------------------------------------------
642 
644  virtual void CLEAR_EVENT_THROTTLE_preMsgHook(
645  FwOpcodeType opCode,
646  U32 cmdSeq
647  );
648 
649  PROTECTED:
650 
651  // ----------------------------------------------------------------------
652  // Event logging functions
653  // ----------------------------------------------------------------------
654 
659 
664  U32 bufferSize,
665  U32 minSize
666  );
667 
672  U32 bufferSize,
673  U32 storedHash,
674  U32 computedHash
675  );
676 
681  U32 bufferSize,
682  U32 errorCode
683  );
684 
689  U32 bufferSize,
690  U32 minSize
691  );
692 
697  U32 status,
698  const Fw::StringBase& file
699  );
700 
705  U32 status,
706  U32 bytesWritten,
707  U32 bytesToWrite,
708  const Fw::StringBase& file
709  );
710 
715  U32 bytes,
716  const Fw::StringBase& file
717  );
718 
719  PROTECTED:
720 
721  // ----------------------------------------------------------------------
722  // Event throttle reset functions
723  // ----------------------------------------------------------------------
724 
727 
730 
733 
736 
739 
742 
745 
746  PROTECTED:
747 
748  // ----------------------------------------------------------------------
749  // Telemetry write functions
750  // ----------------------------------------------------------------------
751 
756  U32 arg,
757  Fw::Time _tlmTime = Fw::Time()
758  );
759 
764  U64 arg,
765  Fw::Time _tlmTime = Fw::Time()
766  );
767 
772  U32 arg,
773  Fw::Time _tlmTime = Fw::Time()
774  );
775 
780  U32 arg,
781  Fw::Time _tlmTime = Fw::Time()
782  );
783 
787  void tlmWrite_NumErrors(
788  U32 arg,
789  Fw::Time _tlmTime = Fw::Time()
790  );
791 
792  PROTECTED:
793 
794  // ----------------------------------------------------------------------
795  // Time
796  // ----------------------------------------------------------------------
797 
801  Fw::Time getTime();
802 
803  PRIVATE:
804 
805  // ----------------------------------------------------------------------
806  // Message dispatch functions
807  // ----------------------------------------------------------------------
808 
810  virtual MsgDispatchStatus doDispatch();
811 
812  PRIVATE:
813 
814  // ----------------------------------------------------------------------
815  // Calls for messages received on special input ports
816  // ----------------------------------------------------------------------
817 
819  static void m_p_cmdIn_in(
820  Fw::PassiveComponentBase* callComp,
821  FwIndexType portNum,
822  FwOpcodeType opCode,
823  U32 cmdSeq,
824  Fw::CmdArgBuffer& args
825  );
826 
827  PRIVATE:
828 
829  // ----------------------------------------------------------------------
830  // Calls for messages received on typed input ports
831  // ----------------------------------------------------------------------
832 
834  static void m_p_bufferSendIn_in(
835  Fw::PassiveComponentBase* callComp,
836  FwIndexType portNum,
837  Fw::Buffer& fwBuffer
838  );
839 
841  static void m_p_schedIn_in(
842  Fw::PassiveComponentBase* callComp,
843  FwIndexType portNum,
844  U32 context
845  );
846 
847  PRIVATE:
848 
849  // ----------------------------------------------------------------------
850  // Special input ports
851  // ----------------------------------------------------------------------
852 
854  Fw::InputCmdPort m_cmdIn_InputPort[NUM_CMDIN_INPUT_PORTS];
855 
856  PRIVATE:
857 
858  // ----------------------------------------------------------------------
859  // Typed input ports
860  // ----------------------------------------------------------------------
861 
863  Fw::InputBufferSendPort m_bufferSendIn_InputPort[NUM_BUFFERSENDIN_INPUT_PORTS];
864 
866  Svc::InputSchedPort m_schedIn_InputPort[NUM_SCHEDIN_INPUT_PORTS];
867 
868  PRIVATE:
869 
870  // ----------------------------------------------------------------------
871  // Special output ports
872  // ----------------------------------------------------------------------
873 
875  Fw::OutputCmdRegPort m_cmdRegIn_OutputPort[NUM_CMDREGIN_OUTPUT_PORTS];
876 
878  Fw::OutputCmdResponsePort m_cmdResponseOut_OutputPort[NUM_CMDRESPONSEOUT_OUTPUT_PORTS];
879 
881  Fw::OutputLogPort m_eventOut_OutputPort[NUM_EVENTOUT_OUTPUT_PORTS];
882 
883 #if FW_ENABLE_TEXT_LOGGING == 1
884 
886  Fw::OutputLogTextPort m_textEventOut_OutputPort[NUM_TEXTEVENTOUT_OUTPUT_PORTS];
887 
888 #endif
889 
891  Fw::OutputTimePort m_timeGetOut_OutputPort[NUM_TIMEGETOUT_OUTPUT_PORTS];
892 
894  Fw::OutputTlmPort m_tlmOut_OutputPort[NUM_TLMOUT_OUTPUT_PORTS];
895 
896  PRIVATE:
897 
898  // ----------------------------------------------------------------------
899  // Typed output ports
900  // ----------------------------------------------------------------------
901 
903  Fw::OutputBufferSendPort m_deallocBufferSendOut_OutputPort[NUM_DEALLOCBUFFERSENDOUT_OUTPUT_PORTS];
904 
906  Svc::OutputDpWrittenPort m_dpWrittenOut_OutputPort[NUM_DPWRITTENOUT_OUTPUT_PORTS];
907 
909  Fw::OutputBufferSendPort m_procBufferSendOut_OutputPort[NUM_PROCBUFFERSENDOUT_OUTPUT_PORTS];
910 
911  PRIVATE:
912 
913  // ----------------------------------------------------------------------
914  // Counter values for event throttling
915  // ----------------------------------------------------------------------
916 
918  FwIndexType m_InvalidBufferThrottle;
919 
921  FwIndexType m_BufferTooSmallForPacketThrottle;
922 
924  FwIndexType m_InvalidHeaderHashThrottle;
925 
927  FwIndexType m_InvalidHeaderThrottle;
928 
930  FwIndexType m_BufferTooSmallForDataThrottle;
931 
933  FwIndexType m_FileOpenErrorThrottle;
934 
936  FwIndexType m_FileWriteErrorThrottle;
937 
938  PRIVATE:
939 
940  // ----------------------------------------------------------------------
941  // First update flags for telemetry channels
942  // ----------------------------------------------------------------------
943 
945  bool m_first_update_NumBuffersReceived;
946 
948  bool m_first_update_NumBytesWritten;
949 
951  bool m_first_update_NumSuccessfulWrites;
952 
954  bool m_first_update_NumFailedWrites;
955 
957  bool m_first_update_NumErrors;
958 
959  PRIVATE:
960 
961  // ----------------------------------------------------------------------
962  // Last value storage for telemetry channels
963  // ----------------------------------------------------------------------
964 
966  U32 m_last_NumBuffersReceived;
967 
969  U64 m_last_NumBytesWritten;
970 
972  U32 m_last_NumSuccessfulWrites;
973 
975  U32 m_last_NumFailedWrites;
976 
978  U32 m_last_NumErrors;
979 
980  };
981 
982 }
983 
984 #endif
I32 FwEnumStoreType
Definition: FpConfig.h:64
U32 FwDpPriorityType
Definition: FpConfig.h:119
U32 FwOpcodeType
Definition: FpConfig.h:91
PlatformSizeType FwSizeType
Definition: FpConfig.h:35
PlatformIndexType FwIndexType
Definition: FpConfig.h:25
C++-compatible configuration header for fprime configuration.
Enum representing a command response.
void init()
Object initializer.
Definition: ObjBase.cpp:27
Definition: Time.hpp:9
Auto-generated base for DpWriter component.
bool isConnected_cmdRegIn_OutputPort(FwIndexType portNum)
void deallocBufferSendOut_out(FwIndexType portNum, Fw::Buffer &fwBuffer)
Invoke output port deallocBufferSendOut.
void log_WARNING_HI_BufferTooSmallForData(U32 bufferSize, U32 minSize)
void CLEAR_EVENT_THROTTLE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
FwIndexType getNum_bufferSendIn_InputPorts() const
virtual void bufferSendIn_handler(FwIndexType portNum, Fw::Buffer &fwBuffer)=0
Handler for input port bufferSendIn.
void dpWrittenOut_out(FwIndexType portNum, const Fw::StringBase &fileName, FwDpPriorityType priority, FwSizeType size)
Invoke output port dpWrittenOut.
Fw::InputBufferSendPort * get_bufferSendIn_InputPort(FwIndexType portNum)
virtual void bufferSendIn_preMsgHook(FwIndexType portNum, Fw::Buffer &fwBuffer)
Pre-message hook for async input port bufferSendIn.
void log_WARNING_HI_InvalidHeader_ThrottleClear()
Reset throttle value for InvalidHeader.
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum)
DpWriterComponentBase(const char *compName="")
Construct DpWriterComponentBase object.
friend class DpWriterComponentBaseFriend
Friend class for white-box testing.
void log_WARNING_HI_FileOpenError(U32 status, const Fw::StringBase &file)
void log_WARNING_HI_FileWriteError(U32 status, U32 bytesWritten, U32 bytesToWrite, const Fw::StringBase &file)
void log_WARNING_HI_InvalidBuffer_ThrottleClear()
Reset throttle value for InvalidBuffer.
void bufferSendIn_handlerBase(FwIndexType portNum, Fw::Buffer &fwBuffer)
Handler base-class function for input port bufferSendIn.
bool isConnected_deallocBufferSendOut_OutputPort(FwIndexType portNum)
FwIndexType getNum_deallocBufferSendOut_OutputPorts() const
@ OPCODE_CLEAR_EVENT_THROTTLE
Clear event throttling.
void set_eventOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to eventOut[portNum].
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
bool isConnected_tlmOut_OutputPort(FwIndexType portNum)
FwIndexType getNum_cmdResponseOut_OutputPorts() const
void tlmWrite_NumSuccessfulWrites(U32 arg, Fw::Time _tlmTime=Fw::Time())
Fw::InputCmdPort * get_cmdIn_InputPort(FwIndexType portNum)
bool isConnected_eventOut_OutputPort(FwIndexType portNum)
bool isConnected_procBufferSendOut_OutputPort(FwIndexType portNum)
void log_WARNING_HI_BufferTooSmallForPacket_ThrottleClear()
Reset throttle value for BufferTooSmallForPacket.
FwIndexType getNum_cmdRegIn_OutputPorts() const
virtual void CLEAR_EVENT_THROTTLE_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
@ EVENTID_INVALIDHEADER_THROTTLE
Throttle reset count for InvalidHeader.
@ EVENTID_INVALIDHEADERHASH_THROTTLE
Throttle reset count for InvalidHeaderHash.
@ EVENTID_FILEWRITEERROR_THROTTLE
Throttle reset count for FileWriteError.
@ EVENTID_BUFFERTOOSMALLFORDATA_THROTTLE
Throttle reset count for BufferTooSmallForData.
@ EVENTID_FILEOPENERROR_THROTTLE
Throttle reset count for FileOpenError.
@ EVENTID_INVALIDBUFFER_THROTTLE
Throttle reset count for InvalidBuffer.
@ EVENTID_BUFFERTOOSMALLFORPACKET_THROTTLE
Throttle reset count for BufferTooSmallForPacket.
void log_WARNING_HI_InvalidHeaderHash_ThrottleClear()
Reset throttle value for InvalidHeaderHash.
void log_WARNING_HI_FileWriteError_ThrottleClear()
Reset throttle value for FileWriteError.
FwIndexType getNum_tlmOut_OutputPorts() const
FwIndexType getNum_procBufferSendOut_OutputPorts() const
void set_timeGetOut_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeGetOut[portNum].
void tlmWrite_NumBuffersReceived(U32 arg, Fw::Time _tlmTime=Fw::Time())
void log_ACTIVITY_LO_FileWritten(U32 bytes, const Fw::StringBase &file)
virtual void schedIn_handler(FwIndexType portNum, U32 context)=0
Handler for input port schedIn.
void procBufferSendOut_out(FwIndexType portNum, Fw::Buffer &fwBuffer)
Invoke output port procBufferSendOut.
void regCommands()
Register commands with the Command Dispatcher.
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
void set_deallocBufferSendOut_OutputPort(FwIndexType portNum, Fw::InputBufferSendPort *port)
Connect port to deallocBufferSendOut[portNum].
void tlmWrite_NumBytesWritten(U64 arg, Fw::Time _tlmTime=Fw::Time())
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
void set_dpWrittenOut_OutputPort(FwIndexType portNum, Svc::InputDpWrittenPort *port)
Connect port to dpWrittenOut[portNum].
void set_procBufferSendOut_OutputPort(FwIndexType portNum, Fw::InputBufferSendPort *port)
Connect port to procBufferSendOut[portNum].
void schedIn_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port schedIn.
void log_WARNING_HI_BufferTooSmallForPacket(U32 bufferSize, U32 minSize)
void log_WARNING_HI_InvalidHeader(U32 bufferSize, U32 errorCode)
Svc::InputSchedPort * get_schedIn_InputPort(FwIndexType portNum)
FwIndexType getNum_schedIn_InputPorts() const
void set_cmdRegIn_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegIn[portNum].
@ CHANNELID_NUMBUFFERSRECEIVED
Channel ID for NumBuffersReceived.
@ CHANNELID_NUMBYTESWRITTEN
Channel ID for NumBytesWritten.
@ CHANNELID_NUMSUCCESSFULWRITES
Channel ID for NumSuccessfulWrites.
@ CHANNELID_NUMERRORS
Channel ID for NumErrors.
@ CHANNELID_NUMFAILEDWRITES
Channel ID for NumFailedWrites.
FwIndexType getNum_timeGetOut_OutputPorts() const
bool isConnected_dpWrittenOut_OutputPort(FwIndexType portNum)
FwIndexType getNum_dpWrittenOut_OutputPorts() const
bool isConnected_timeGetOut_OutputPort(FwIndexType portNum)
void log_WARNING_HI_FileOpenError_ThrottleClear()
Reset throttle value for FileOpenError.
FwIndexType getNum_cmdIn_InputPorts() const
void tlmWrite_NumErrors(U32 arg, Fw::Time _tlmTime=Fw::Time())
virtual void CLEAR_EVENT_THROTTLE_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CLEAR_EVENT_THROTTLE.
virtual void schedIn_preMsgHook(FwIndexType portNum, U32 context)
Pre-message hook for async input port schedIn.
virtual ~DpWriterComponentBase()
Destroy DpWriterComponentBase object.
void tlmWrite_NumFailedWrites(U32 arg, Fw::Time _tlmTime=Fw::Time())
FwIndexType getNum_eventOut_OutputPorts() const
void log_WARNING_HI_BufferTooSmallForData_ThrottleClear()
Reset throttle value for BufferTooSmallForData.
@ EVENTID_INVALIDHEADER
Error occurred when deserializing the packet header.
@ EVENTID_INVALIDBUFFER
Received buffer is invalid.
@ EVENTID_BUFFERTOOSMALLFORDATA
Received buffer is too small to hold the data specified in the header.
@ EVENTID_BUFFERTOOSMALLFORPACKET
Received buffer is too small to hold a data product packet.
@ EVENTID_INVALIDHEADERHASH
The received buffer has an invalid header hash.
@ EVENTID_FILEWRITEERROR
An error occurred when writing to a file.
@ EVENTID_FILEOPENERROR
An error occurred when opening a file.
void log_WARNING_HI_InvalidHeaderHash(U32 bufferSize, U32 storedHash, U32 computedHash)
#define U64(C)
Definition: sha.h:176