F´ Flight Software - C/C++ Documentation
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 <atomic>
11 
13 #include "Fw/Cmd/CmdPortAc.hpp"
14 #include "Fw/Cmd/CmdRegPortAc.hpp"
16 #include "Fw/Cmd/CmdString.hpp"
18 #include "Fw/FPrimeBasicTypes.hpp"
19 #include "Fw/Log/LogPortAc.hpp"
20 #include "Fw/Log/LogString.hpp"
21 #if FW_ENABLE_TEXT_LOGGING == 1
22 #include "Fw/Log/LogTextPortAc.hpp"
23 #endif
26 #include "Fw/Time/TimePortAc.hpp"
27 #include "Fw/Tlm/TlmPortAc.hpp"
28 #include "Fw/Tlm/TlmString.hpp"
33 
34 namespace Svc {
35 
42  {
43 
44  // ----------------------------------------------------------------------
45  // Friend classes
46  // ----------------------------------------------------------------------
47 
49  friend class DpWriterTesterBase;
51  friend class DpWriterTester;
52 
53  protected:
54 
55  // ----------------------------------------------------------------------
56  // Constants
57  // ----------------------------------------------------------------------
58 
60  enum {
62  };
63 
65  enum {
68  };
69 
71  enum {
78  };
79 
81  enum {
85  };
86 
88  enum {
90  };
91 
93  enum {
102  };
103 
105  enum {
113  };
114 
116  enum {
122  };
123 
124  public:
125 
126  // ----------------------------------------------------------------------
127  // Component initialization
128  // ----------------------------------------------------------------------
129 
131  void init(
132  FwSizeType queueDepth,
133  FwEnumStoreType instance = 0
134  );
135 
136  public:
137 
138  // ----------------------------------------------------------------------
139  // Getters for special input ports
140  // ----------------------------------------------------------------------
141 
146  FwIndexType portNum
147  );
148 
149  public:
150 
151  // ----------------------------------------------------------------------
152  // Getters for typed input ports
153  // ----------------------------------------------------------------------
154 
159  FwIndexType portNum
160  );
161 
166  FwIndexType portNum
167  );
168 
169  public:
170 
171  // ----------------------------------------------------------------------
172  // Connect input ports to special output ports
173  // ----------------------------------------------------------------------
174 
177  FwIndexType portNum,
178  Fw::InputCmdRegPort* port
179  );
180 
183  FwIndexType portNum,
185  );
186 
189  FwIndexType portNum,
190  Fw::InputLogPort* port
191  );
192 
193 #if FW_ENABLE_TEXT_LOGGING == 1
194 
196  void set_textEventOut_OutputPort(
197  FwIndexType portNum,
198  Fw::InputLogTextPort* port
199  );
200 
201 #endif
202 
205  FwIndexType portNum,
206  Fw::InputTimePort* port
207  );
208 
211  FwIndexType portNum,
212  Fw::InputTlmPort* port
213  );
214 
215  public:
216 
217  // ----------------------------------------------------------------------
218  // Connect typed input ports to typed output ports
219  // ----------------------------------------------------------------------
220 
223  FwIndexType portNum,
225  );
226 
229  FwIndexType portNum,
231  );
232 
235  FwIndexType portNum,
237  );
238 
239 #if FW_PORT_SERIALIZATION
240 
241  public:
242 
243  // ----------------------------------------------------------------------
244  // Connect serial input ports to special output ports
245  // ----------------------------------------------------------------------
246 
249  FwIndexType portNum,
250  Fw::InputSerializePort* port
251  );
252 
255  FwIndexType portNum,
256  Fw::InputSerializePort* port
257  );
258 
261  FwIndexType portNum,
262  Fw::InputSerializePort* port
263  );
264 
265 #if FW_ENABLE_TEXT_LOGGING == 1
266 
268  void set_textEventOut_OutputPort(
269  FwIndexType portNum,
270  Fw::InputSerializePort* port
271  );
272 
273 #endif
274 
277  FwIndexType portNum,
278  Fw::InputSerializePort* port
279  );
280 
283  FwIndexType portNum,
284  Fw::InputSerializePort* port
285  );
286 
287 #endif
288 
289 #if FW_PORT_SERIALIZATION
290 
291  public:
292 
293  // ----------------------------------------------------------------------
294  // Connect serial input ports to typed output ports
295  // ----------------------------------------------------------------------
296 
299  FwIndexType portNum,
300  Fw::InputSerializePort* port
301  );
302 
305  FwIndexType portNum,
306  Fw::InputSerializePort* port
307  );
308 
311  FwIndexType portNum,
312  Fw::InputSerializePort* port
313  );
314 
315 #endif
316 
317  public:
318 
319  // ----------------------------------------------------------------------
320  // Command registration
321  // ----------------------------------------------------------------------
322 
326  void regCommands();
327 
328  protected:
329 
330  // ----------------------------------------------------------------------
331  // Component construction and destruction
332  // ----------------------------------------------------------------------
333 
336  const char* compName = ""
337  );
338 
340  virtual ~DpWriterComponentBase();
341 
342  protected:
343 
344  // ----------------------------------------------------------------------
345  // Getters for numbers of special input ports
346  // ----------------------------------------------------------------------
347 
352  return NUM_CMDIN_INPUT_PORTS;
353  }
354 
355  protected:
356 
357  // ----------------------------------------------------------------------
358  // Getters for numbers of typed input ports
359  // ----------------------------------------------------------------------
360 
366  }
367 
373  }
374 
375  protected:
376 
377  // ----------------------------------------------------------------------
378  // Getters for numbers of special output ports
379  // ----------------------------------------------------------------------
380 
386  }
387 
393  }
394 
400  }
401 
402 #if FW_ENABLE_TEXT_LOGGING == 1
403 
407  static constexpr FwIndexType getNum_textEventOut_OutputPorts() {
409  }
410 
411 #endif
412 
418  }
419 
425  }
426 
427  protected:
428 
429  // ----------------------------------------------------------------------
430  // Getters for numbers of typed output ports
431  // ----------------------------------------------------------------------
432 
438  }
439 
445  }
446 
452  }
453 
454  protected:
455 
456  // ----------------------------------------------------------------------
457  // Connection status queries for special output ports
458  // ----------------------------------------------------------------------
459 
464  FwIndexType portNum
465  );
466 
471  FwIndexType portNum
472  );
473 
478  FwIndexType portNum
479  );
480 
481 #if FW_ENABLE_TEXT_LOGGING == 1
482 
486  bool isConnected_textEventOut_OutputPort(
487  FwIndexType portNum
488  );
489 
490 #endif
491 
496  FwIndexType portNum
497  );
498 
503  FwIndexType portNum
504  );
505 
506  protected:
507 
508  // ----------------------------------------------------------------------
509  // Connection status queries for typed output ports
510  // ----------------------------------------------------------------------
511 
516  FwIndexType portNum
517  );
518 
523  FwIndexType portNum
524  );
525 
530  FwIndexType portNum
531  );
532 
533  protected:
534 
535  // ----------------------------------------------------------------------
536  // Handlers to implement for typed input ports
537  // ----------------------------------------------------------------------
538 
540  virtual void bufferSendIn_handler(
541  FwIndexType portNum,
542  Fw::Buffer& fwBuffer
543  ) = 0;
544 
546  virtual void schedIn_handler(
547  FwIndexType portNum,
548  U32 context
549  ) = 0;
550 
551  protected:
552 
553  // ----------------------------------------------------------------------
554  // Port handler base-class functions for typed input ports
555  //
556  // Call these functions directly to bypass the corresponding ports
557  // ----------------------------------------------------------------------
558 
561  FwIndexType portNum,
562  Fw::Buffer& fwBuffer
563  );
564 
566  void schedIn_handlerBase(
567  FwIndexType portNum,
568  U32 context
569  );
570 
571  protected:
572 
573  // ----------------------------------------------------------------------
574  // Pre-message hooks for typed async input ports
575  //
576  // Each of these functions is invoked just before processing a message
577  // on the corresponding port. By default, they do nothing. You can
578  // override them to provide specific pre-message behavior.
579  // ----------------------------------------------------------------------
580 
582  virtual void bufferSendIn_preMsgHook(
583  FwIndexType portNum,
584  Fw::Buffer& fwBuffer
585  );
586 
588  virtual void schedIn_preMsgHook(
589  FwIndexType portNum,
590  U32 context
591  );
592 
593  protected:
594 
595  // ----------------------------------------------------------------------
596  // Invocation functions for typed output ports
597  // ----------------------------------------------------------------------
598 
601  FwIndexType portNum,
602  Fw::Buffer& fwBuffer
603  );
604 
606  void dpWrittenOut_out(
607  FwIndexType portNum,
608  const Fw::StringBase& fileName,
609  FwDpPriorityType priority,
610  FwSizeType size
611  );
612 
615  FwIndexType portNum,
616  Fw::Buffer& fwBuffer
617  );
618 
619  protected:
620 
621  // ----------------------------------------------------------------------
622  // Command response
623  // ----------------------------------------------------------------------
624 
626  void cmdResponse_out(
627  FwOpcodeType opCode,
628  U32 cmdSeq,
629  Fw::CmdResponse response
630  );
631 
632  protected:
633 
634  // ----------------------------------------------------------------------
635  // Command handlers to implement
636  // ----------------------------------------------------------------------
637 
641  virtual void CLEAR_EVENT_THROTTLE_cmdHandler(
642  FwOpcodeType opCode,
643  U32 cmdSeq
644  ) = 0;
645 
646  protected:
647 
648  // ----------------------------------------------------------------------
649  // Command handler base-class functions
650  //
651  // Call these functions directly to bypass the command input port
652  // ----------------------------------------------------------------------
653 
658  FwOpcodeType opCode,
659  U32 cmdSeq,
660  Fw::CmdArgBuffer& args
661  );
662 
663  protected:
664 
665  // ----------------------------------------------------------------------
666  // Pre-message hooks for async commands
667  //
668  // Each of these functions is invoked just before processing the
669  // corresponding command. By default they do nothing. You can
670  // override them to provide specific pre-command behavior.
671  // ----------------------------------------------------------------------
672 
674  virtual void CLEAR_EVENT_THROTTLE_preMsgHook(
675  FwOpcodeType opCode,
676  U32 cmdSeq
677  );
678 
679  protected:
680 
681  // ----------------------------------------------------------------------
682  // Event logging functions
683  // ----------------------------------------------------------------------
684 
689 
694  FwSizeType bufferSize,
695  U32 minSize
696  );
697 
702  FwSizeType bufferSize,
703  U32 storedHash,
704  U32 computedHash
705  );
706 
711  FwSizeType bufferSize,
712  U32 errorCode
713  );
714 
719  FwSizeType bufferSize,
720  U32 minSize
721  );
722 
727  U32 status,
728  const Fw::StringBase& file
729  );
730 
735  U32 status,
736  U32 bytesWritten,
737  U32 bytesToWrite,
738  const Fw::StringBase& file
739  );
740 
745  U32 bytes,
746  const Fw::StringBase& file
747  ) const;
748 
749  protected:
750 
751  // ----------------------------------------------------------------------
752  // Event throttle reset functions
753  // ----------------------------------------------------------------------
754 
757 
760 
763 
766 
769 
772 
775 
776  protected:
777 
778  // ----------------------------------------------------------------------
779  // Telemetry write functions
780  // ----------------------------------------------------------------------
781 
786  U32 arg,
787  Fw::Time _tlmTime = Fw::Time()
788  );
789 
794  U64 arg,
795  Fw::Time _tlmTime = Fw::Time()
796  );
797 
802  U32 arg,
803  Fw::Time _tlmTime = Fw::Time()
804  );
805 
810  U32 arg,
811  Fw::Time _tlmTime = Fw::Time()
812  );
813 
817  void tlmWrite_NumErrors(
818  U32 arg,
819  Fw::Time _tlmTime = Fw::Time()
820  );
821 
822  protected:
823 
824  // ----------------------------------------------------------------------
825  // Time
826  // ----------------------------------------------------------------------
827 
831  Fw::Time getTime() const;
832 
833  private:
834 
835  // ----------------------------------------------------------------------
836  // Message dispatch functions
837  // ----------------------------------------------------------------------
838 
840  virtual MsgDispatchStatus doDispatch();
841 
842  private:
843 
844  // ----------------------------------------------------------------------
845  // Calls for messages received on special input ports
846  // ----------------------------------------------------------------------
847 
849  static void m_p_cmdIn_in(
850  Fw::PassiveComponentBase* callComp,
851  FwIndexType portNum,
852  FwOpcodeType opCode,
853  U32 cmdSeq,
854  Fw::CmdArgBuffer& args
855  );
856 
857  private:
858 
859  // ----------------------------------------------------------------------
860  // Calls for messages received on typed input ports
861  // ----------------------------------------------------------------------
862 
864  static void m_p_bufferSendIn_in(
865  Fw::PassiveComponentBase* callComp,
866  FwIndexType portNum,
867  Fw::Buffer& fwBuffer
868  );
869 
871  static void m_p_schedIn_in(
872  Fw::PassiveComponentBase* callComp,
873  FwIndexType portNum,
874  U32 context
875  );
876 
877  private:
878 
879  // ----------------------------------------------------------------------
880  // Special input ports
881  // ----------------------------------------------------------------------
882 
884  Fw::InputCmdPort m_cmdIn_InputPort[NUM_CMDIN_INPUT_PORTS];
885 
886  private:
887 
888  // ----------------------------------------------------------------------
889  // Typed input ports
890  // ----------------------------------------------------------------------
891 
893  Fw::InputBufferSendPort m_bufferSendIn_InputPort[NUM_BUFFERSENDIN_INPUT_PORTS];
894 
896  Svc::InputSchedPort m_schedIn_InputPort[NUM_SCHEDIN_INPUT_PORTS];
897 
898  private:
899 
900  // ----------------------------------------------------------------------
901  // Special output ports
902  // ----------------------------------------------------------------------
903 
905  Fw::OutputCmdRegPort m_cmdRegIn_OutputPort[NUM_CMDREGIN_OUTPUT_PORTS];
906 
908  Fw::OutputCmdResponsePort m_cmdResponseOut_OutputPort[NUM_CMDRESPONSEOUT_OUTPUT_PORTS];
909 
911  Fw::OutputLogPort m_eventOut_OutputPort[NUM_EVENTOUT_OUTPUT_PORTS];
912 
913 #if FW_ENABLE_TEXT_LOGGING == 1
914 
916  Fw::OutputLogTextPort m_textEventOut_OutputPort[NUM_TEXTEVENTOUT_OUTPUT_PORTS];
917 
918 #endif
919 
921  Fw::OutputTimePort m_timeGetOut_OutputPort[NUM_TIMEGETOUT_OUTPUT_PORTS];
922 
924  Fw::OutputTlmPort m_tlmOut_OutputPort[NUM_TLMOUT_OUTPUT_PORTS];
925 
926  private:
927 
928  // ----------------------------------------------------------------------
929  // Typed output ports
930  // ----------------------------------------------------------------------
931 
933  Fw::OutputBufferSendPort m_deallocBufferSendOut_OutputPort[NUM_DEALLOCBUFFERSENDOUT_OUTPUT_PORTS];
934 
936  Svc::OutputDpWrittenPort m_dpWrittenOut_OutputPort[NUM_DPWRITTENOUT_OUTPUT_PORTS];
937 
939  Fw::OutputBufferSendPort m_procBufferSendOut_OutputPort[NUM_PROCBUFFERSENDOUT_OUTPUT_PORTS];
940 
941  private:
942 
943  // ----------------------------------------------------------------------
944  // Counter values for event throttling
945  // ----------------------------------------------------------------------
946 
948  std::atomic<FwIndexType> m_InvalidBufferThrottle;
949 
951  std::atomic<FwIndexType> m_BufferTooSmallForPacketThrottle;
952 
954  std::atomic<FwIndexType> m_InvalidHeaderHashThrottle;
955 
957  std::atomic<FwIndexType> m_InvalidHeaderThrottle;
958 
960  std::atomic<FwIndexType> m_BufferTooSmallForDataThrottle;
961 
963  std::atomic<FwIndexType> m_FileOpenErrorThrottle;
964 
966  std::atomic<FwIndexType> m_FileWriteErrorThrottle;
967 
968  private:
969 
970  // ----------------------------------------------------------------------
971  // First update flags for telemetry channels
972  // ----------------------------------------------------------------------
973 
975  bool m_first_update_NumBuffersReceived = true;
976 
978  bool m_first_update_NumBytesWritten = true;
979 
981  bool m_first_update_NumSuccessfulWrites = true;
982 
984  bool m_first_update_NumFailedWrites = true;
985 
987  bool m_first_update_NumErrors = true;
988 
989  private:
990 
991  // ----------------------------------------------------------------------
992  // Last value storage for telemetry channels
993  // ----------------------------------------------------------------------
994 
996  U32 m_last_NumBuffersReceived = {};
997 
999  U64 m_last_NumBytesWritten = {};
1000 
1002  U32 m_last_NumSuccessfulWrites = {};
1003 
1005  U32 m_last_NumFailedWrites = {};
1006 
1008  U32 m_last_NumErrors = {};
1009 
1010  };
1011 
1012 }
1013 
1014 #endif
static constexpr FwIndexType getNum_bufferSendIn_InputPorts()
void deallocBufferSendOut_out(FwIndexType portNum, Fw::Buffer &fwBuffer)
Invoke output port deallocBufferSendOut.
virtual ~DpWriterComponentBase()
Destroy DpWriterComponentBase object.
bool isConnected_procBufferSendOut_OutputPort(FwIndexType portNum)
FwIdType FwOpcodeType
The type of a command opcode.
void log_WARNING_HI_BufferTooSmallForData(FwSizeType bufferSize, U32 minSize)
void schedIn_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port schedIn.
virtual void CLEAR_EVENT_THROTTLE_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
PlatformSizeType FwSizeType
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts()
U32 FwDpPriorityType
The type of a data product priority.
I32 FwEnumStoreType
static constexpr FwIndexType getNum_eventOut_OutputPorts()
Received buffer is too small to hold the data specified in the header.
An error occurred when opening a file.
void set_dpWrittenOut_OutputPort(FwIndexType portNum, Svc::InputDpWrittenPort *port)
Connect port to dpWrittenOut[portNum].
bool isConnected_deallocBufferSendOut_OutputPort(FwIndexType portNum)
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
Error occurred when deserializing the packet header.
friend class DpWriterTester
Friend class tester implementation to support white-box testing.
Enum representing a command response.
virtual void bufferSendIn_preMsgHook(FwIndexType portNum, Fw::Buffer &fwBuffer)
Pre-message hook for async input port bufferSendIn.
static constexpr FwIndexType getNum_schedIn_InputPorts()
static constexpr FwIndexType getNum_timeGetOut_OutputPorts()
static constexpr FwIndexType getNum_deallocBufferSendOut_OutputPorts()
bool isConnected_tlmOut_OutputPort(FwIndexType portNum)
void tlmWrite_NumErrors(U32 arg, Fw::Time _tlmTime=Fw::Time())
void init()
Object initializer.
Definition: ObjBase.cpp:24
Fw::InputBufferSendPort * get_bufferSendIn_InputPort(FwIndexType portNum)
void log_WARNING_HI_InvalidBuffer_ThrottleClear()
Reset throttle value for InvalidBuffer.
void tlmWrite_NumFailedWrites(U32 arg, Fw::Time _tlmTime=Fw::Time())
The received buffer has an invalid header hash.
void log_WARNING_HI_FileWriteError_ThrottleClear()
Reset throttle value for FileWriteError.
void CLEAR_EVENT_THROTTLE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
bool isConnected_dpWrittenOut_OutputPort(FwIndexType portNum)
void procBufferSendOut_out(FwIndexType portNum, Fw::Buffer &fwBuffer)
Invoke output port procBufferSendOut.
void dpWrittenOut_out(FwIndexType portNum, const Fw::StringBase &fileName, FwDpPriorityType priority, FwSizeType size)
Invoke output port dpWrittenOut.
Fw::InputCmdPort * get_cmdIn_InputPort(FwIndexType portNum)
void log_WARNING_HI_InvalidHeaderHash(FwSizeType bufferSize, U32 storedHash, U32 computedHash)
void set_deallocBufferSendOut_OutputPort(FwIndexType portNum, Fw::InputBufferSendPort *port)
Connect port to deallocBufferSendOut[portNum].
void tlmWrite_NumBuffersReceived(U32 arg, Fw::Time _tlmTime=Fw::Time())
static constexpr FwIndexType getNum_procBufferSendOut_OutputPorts()
bool isConnected_eventOut_OutputPort(FwIndexType portNum)
void log_WARNING_HI_BufferTooSmallForData_ThrottleClear()
Reset throttle value for BufferTooSmallForData.
void log_WARNING_HI_FileOpenError_ThrottleClear()
Reset throttle value for FileOpenError.
static constexpr FwIndexType getNum_tlmOut_OutputPorts()
DpWriterComponentBase(const char *compName="")
Construct DpWriterComponentBase object.
Received buffer is too small to hold a data product packet.
void log_WARNING_HI_FileOpenError(U32 status, const Fw::StringBase &file)
void log_WARNING_HI_InvalidHeader_ThrottleClear()
Reset throttle value for InvalidHeader.
void log_WARNING_HI_InvalidHeaderHash_ThrottleClear()
Reset throttle value for InvalidHeaderHash.
void log_WARNING_HI_BufferTooSmallForPacket(FwSizeType bufferSize, U32 minSize)
void regCommands()
Register commands with the Command Dispatcher.
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
void log_ACTIVITY_LO_FileWritten(U32 bytes, const Fw::StringBase &file) const
static constexpr FwIndexType getNum_cmdRegIn_OutputPorts()
virtual void CLEAR_EVENT_THROTTLE_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CLEAR_EVENT_THROTTLE.
virtual void schedIn_handler(FwIndexType portNum, U32 context)=0
Handler for input port schedIn.
PlatformIndexType FwIndexType
static constexpr FwIndexType getNum_dpWrittenOut_OutputPorts()
void set_eventOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to eventOut[portNum].
An error occurred when writing to a file.
virtual void bufferSendIn_handler(FwIndexType portNum, Fw::Buffer &fwBuffer)=0
Handler for input port bufferSendIn.
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum)
void log_WARNING_HI_FileWriteError(U32 status, U32 bytesWritten, U32 bytesToWrite, const Fw::StringBase &file)
void set_timeGetOut_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeGetOut[portNum].
RateGroupDivider component implementation.
bool isConnected_cmdRegIn_OutputPort(FwIndexType portNum)
friend class DpWriterTesterBase
Friend class tester to support autocoded test harness.
void bufferSendIn_handlerBase(FwIndexType portNum, Fw::Buffer &fwBuffer)
Handler base-class function for input port bufferSendIn.
void tlmWrite_NumBytesWritten(U64 arg, Fw::Time _tlmTime=Fw::Time())
virtual void schedIn_preMsgHook(FwIndexType portNum, U32 context)
Pre-message hook for async input port schedIn.
void log_WARNING_HI_InvalidHeader(FwSizeType bufferSize, U32 errorCode)
void tlmWrite_NumSuccessfulWrites(U32 arg, Fw::Time _tlmTime=Fw::Time())
void log_WARNING_HI_BufferTooSmallForPacket_ThrottleClear()
Reset throttle value for BufferTooSmallForPacket.
void set_procBufferSendOut_OutputPort(FwIndexType portNum, Fw::InputBufferSendPort *port)
Connect port to procBufferSendOut[portNum].
Svc::InputSchedPort * get_schedIn_InputPort(FwIndexType portNum)
void set_cmdRegIn_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegIn[portNum].
Auto-generated base for DpWriter component.
bool isConnected_timeGetOut_OutputPort(FwIndexType portNum)
static constexpr FwIndexType getNum_cmdIn_InputPorts()
#define U64(C)
Definition: sha.h:181