F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
ComQueueComponentAc.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title ComQueueComponentAc.hpp
3 // \author Generated by fpp-to-cpp
4 // \brief hpp file for ComQueue component base class
5 // ======================================================================
6 
7 #ifndef Svc_ComQueueComponentAc_HPP
8 #define Svc_ComQueueComponentAc_HPP
9 
10 #include <atomic>
11 
13 #include "Fw/Cmd/CmdPortAc.hpp"
14 #include "Fw/Cmd/CmdRegPortAc.hpp"
16 #include "Fw/Cmd/CmdString.hpp"
17 #include "Fw/Com/ComPortAc.hpp"
19 #include "Fw/FPrimeBasicTypes.hpp"
20 #include "Fw/Log/LogPortAc.hpp"
21 #include "Fw/Log/LogString.hpp"
22 #if FW_ENABLE_TEXT_LOGGING == 1
23 #include "Fw/Log/LogTextPortAc.hpp"
24 #endif
28 #include "Fw/Time/TimePortAc.hpp"
29 #include "Fw/Tlm/TlmPortAc.hpp"
30 #include "Fw/Tlm/TlmString.hpp"
37 
38 namespace Svc {
39 
46  {
47 
48  // ----------------------------------------------------------------------
49  // Friend classes
50  // ----------------------------------------------------------------------
51 
53  friend class ComQueueTesterBase;
55  friend class ComQueueTester;
56 
57  protected:
58 
59  // ----------------------------------------------------------------------
60  // Constants
61  // ----------------------------------------------------------------------
62 
64  enum {
66  };
67 
69  enum {
75  };
76 
78  enum {
85  };
86 
88  enum {
91  };
92 
94  enum {
98  };
100 
102  enum {
104  };
105 
107  enum {
110  };
111 
112  public:
113 
114  // ----------------------------------------------------------------------
115  // Component initialization
116  // ----------------------------------------------------------------------
117 
119  void init(
120  FwSizeType queueDepth,
121  FwEnumStoreType instance = 0
122  );
123 
124  public:
125 
126  // ----------------------------------------------------------------------
127  // Getters for special input ports
128  // ----------------------------------------------------------------------
129 
134  FwIndexType portNum
135  );
136 
137  public:
138 
139  // ----------------------------------------------------------------------
140  // Getters for typed input ports
141  // ----------------------------------------------------------------------
142 
147  FwIndexType portNum
148  );
149 
154  FwIndexType portNum
155  );
156 
161  FwIndexType portNum
162  );
163 
168  FwIndexType portNum
169  );
170 
175  FwIndexType portNum
176  );
177 
178  public:
179 
180  // ----------------------------------------------------------------------
181  // Connect input ports to special output ports
182  // ----------------------------------------------------------------------
183 
186  FwIndexType portNum,
187  Fw::InputCmdRegPort* port
188  );
189 
192  FwIndexType portNum,
194  );
195 
197  void set_Log_OutputPort(
198  FwIndexType portNum,
199  Fw::InputLogPort* port
200  );
201 
202 #if FW_ENABLE_TEXT_LOGGING == 1
203 
205  void set_LogText_OutputPort(
206  FwIndexType portNum,
207  Fw::InputLogTextPort* port
208  );
209 
210 #endif
211 
213  void set_Time_OutputPort(
214  FwIndexType portNum,
215  Fw::InputTimePort* port
216  );
217 
219  void set_Tlm_OutputPort(
220  FwIndexType portNum,
221  Fw::InputTlmPort* port
222  );
223 
224  public:
225 
226  // ----------------------------------------------------------------------
227  // Connect typed input ports to typed output ports
228  // ----------------------------------------------------------------------
229 
232  FwIndexType portNum,
234  );
235 
238  FwIndexType portNum,
240  );
241 
242 #if FW_PORT_SERIALIZATION
243 
244  public:
245 
246  // ----------------------------------------------------------------------
247  // Connect serial input ports to special output ports
248  // ----------------------------------------------------------------------
249 
252  FwIndexType portNum,
253  Fw::InputSerializePort* port
254  );
255 
258  FwIndexType portNum,
259  Fw::InputSerializePort* port
260  );
261 
263  void set_Log_OutputPort(
264  FwIndexType portNum,
265  Fw::InputSerializePort* port
266  );
267 
268 #if FW_ENABLE_TEXT_LOGGING == 1
269 
271  void set_LogText_OutputPort(
272  FwIndexType portNum,
273  Fw::InputSerializePort* port
274  );
275 
276 #endif
277 
279  void set_Time_OutputPort(
280  FwIndexType portNum,
281  Fw::InputSerializePort* port
282  );
283 
285  void set_Tlm_OutputPort(
286  FwIndexType portNum,
287  Fw::InputSerializePort* port
288  );
289 
290 #endif
291 
292 #if FW_PORT_SERIALIZATION
293 
294  public:
295 
296  // ----------------------------------------------------------------------
297  // Connect serial input ports to typed output ports
298  // ----------------------------------------------------------------------
299 
302  FwIndexType portNum,
303  Fw::InputSerializePort* port
304  );
305 
308  FwIndexType portNum,
309  Fw::InputSerializePort* port
310  );
311 
312 #endif
313 
314  public:
315 
316  // ----------------------------------------------------------------------
317  // Command registration
318  // ----------------------------------------------------------------------
319 
323  void regCommands();
324 
325  protected:
326 
327  // ----------------------------------------------------------------------
328  // Component construction and destruction
329  // ----------------------------------------------------------------------
330 
333  const char* compName = ""
334  );
335 
337  virtual ~ComQueueComponentBase();
338 
339  protected:
340 
341  // ----------------------------------------------------------------------
342  // Getters for numbers of special input ports
343  // ----------------------------------------------------------------------
344 
350  }
351 
352  protected:
353 
354  // ----------------------------------------------------------------------
355  // Getters for numbers of typed input ports
356  // ----------------------------------------------------------------------
357 
363  }
364 
370  }
371 
377  }
378 
384  }
385 
389  static constexpr FwIndexType getNum_run_InputPorts() {
390  return NUM_RUN_INPUT_PORTS;
391  }
392 
393  protected:
394 
395  // ----------------------------------------------------------------------
396  // Getters for numbers of special output ports
397  // ----------------------------------------------------------------------
398 
404  }
405 
411  }
412 
416  static constexpr FwIndexType getNum_Log_OutputPorts() {
417  return NUM_LOG_OUTPUT_PORTS;
418  }
419 
420 #if FW_ENABLE_TEXT_LOGGING == 1
421 
425  static constexpr FwIndexType getNum_LogText_OutputPorts() {
427  }
428 
429 #endif
430 
435  return NUM_TIME_OUTPUT_PORTS;
436  }
437 
441  static constexpr FwIndexType getNum_Tlm_OutputPorts() {
442  return NUM_TLM_OUTPUT_PORTS;
443  }
444 
445  protected:
446 
447  // ----------------------------------------------------------------------
448  // Getters for numbers of typed output ports
449  // ----------------------------------------------------------------------
450 
456  }
457 
463  }
464 
465  protected:
466 
467  // ----------------------------------------------------------------------
468  // Connection status queries for special output ports
469  // ----------------------------------------------------------------------
470 
475  FwIndexType portNum
476  );
477 
482  FwIndexType portNum
483  );
484 
489  FwIndexType portNum
490  );
491 
492 #if FW_ENABLE_TEXT_LOGGING == 1
493 
497  bool isConnected_LogText_OutputPort(
498  FwIndexType portNum
499  );
500 
501 #endif
502 
507  FwIndexType portNum
508  );
509 
514  FwIndexType portNum
515  );
516 
517  protected:
518 
519  // ----------------------------------------------------------------------
520  // Connection status queries for typed output ports
521  // ----------------------------------------------------------------------
522 
527  FwIndexType portNum
528  );
529 
534  FwIndexType portNum
535  );
536 
537  protected:
538 
539  // ----------------------------------------------------------------------
540  // Handlers to implement for typed input ports
541  // ----------------------------------------------------------------------
542 
544  virtual void bufferQueueIn_handler(
545  FwIndexType portNum,
546  Fw::Buffer& fwBuffer
547  ) = 0;
548 
550  virtual void comPacketQueueIn_handler(
551  FwIndexType portNum,
552  Fw::ComBuffer& data,
553  U32 context
554  ) = 0;
555 
557  virtual void comStatusIn_handler(
558  FwIndexType portNum,
559  Fw::Success& condition
560  ) = 0;
561 
563  virtual void dataReturnIn_handler(
564  FwIndexType portNum,
565  Fw::Buffer& data,
566  const ComCfg::FrameContext& context
567  ) = 0;
568 
570  virtual void run_handler(
571  FwIndexType portNum,
572  U32 context
573  ) = 0;
574 
575  protected:
576 
577  // ----------------------------------------------------------------------
578  // Port handler base-class functions for typed input ports
579  //
580  // Call these functions directly to bypass the corresponding ports
581  // ----------------------------------------------------------------------
582 
585  FwIndexType portNum,
586  Fw::Buffer& fwBuffer
587  );
588 
591  FwIndexType portNum,
592  Fw::ComBuffer& data,
593  U32 context
594  );
595 
598  FwIndexType portNum,
599  Fw::Success& condition
600  );
601 
604  FwIndexType portNum,
605  Fw::Buffer& data,
606  const ComCfg::FrameContext& context
607  );
608 
610  void run_handlerBase(
611  FwIndexType portNum,
612  U32 context
613  );
614 
615  protected:
616 
617  // ----------------------------------------------------------------------
618  // Pre-message hooks for typed async input ports
619  //
620  // Each of these functions is invoked just before processing a message
621  // on the corresponding port. By default, they do nothing. You can
622  // override them to provide specific pre-message behavior.
623  // ----------------------------------------------------------------------
624 
626  virtual void bufferQueueIn_preMsgHook(
627  FwIndexType portNum,
628  Fw::Buffer& fwBuffer
629  );
630 
632  virtual void comPacketQueueIn_preMsgHook(
633  FwIndexType portNum,
634  Fw::ComBuffer& data,
635  U32 context
636  );
637 
639  virtual void comStatusIn_preMsgHook(
640  FwIndexType portNum,
641  Fw::Success& condition
642  );
643 
645  virtual void run_preMsgHook(
646  FwIndexType portNum,
647  U32 context
648  );
649 
650  protected:
651 
652  // ----------------------------------------------------------------------
653  // Hooks for typed async input ports
654  //
655  // Each of these functions is invoked when placing a message on the
656  // queue would cause the queue to overlow. You should override them to provide
657  // specific overflow behavior.
658  // ----------------------------------------------------------------------
659 
661  virtual void bufferQueueIn_overflowHook(
662  FwIndexType portNum,
663  Fw::Buffer& fwBuffer
664  ) = 0;
665 
666  protected:
667 
668  // ----------------------------------------------------------------------
669  // Invocation functions for typed output ports
670  // ----------------------------------------------------------------------
671 
673  void bufferReturnOut_out(
674  FwIndexType portNum,
675  Fw::Buffer& fwBuffer
676  );
677 
679  void dataOut_out(
680  FwIndexType portNum,
681  Fw::Buffer& data,
682  const ComCfg::FrameContext& context
683  );
684 
685  protected:
686 
687  // ----------------------------------------------------------------------
688  // Command response
689  // ----------------------------------------------------------------------
690 
692  void cmdResponse_out(
693  FwOpcodeType opCode,
694  U32 cmdSeq,
695  Fw::CmdResponse response
696  );
697 
698  protected:
699 
700  // ----------------------------------------------------------------------
701  // Command handlers to implement
702  // ----------------------------------------------------------------------
703 
708  virtual void FLUSH_QUEUE_cmdHandler(
709  FwOpcodeType opCode,
710  U32 cmdSeq,
711  Svc::QueueType queueType,
712  FwIndexType indexType
713  ) = 0;
714 
719  virtual void FLUSH_ALL_QUEUES_cmdHandler(
720  FwOpcodeType opCode,
721  U32 cmdSeq
722  ) = 0;
723 
724  protected:
725 
726  // ----------------------------------------------------------------------
727  // Command handler base-class functions
728  //
729  // Call these functions directly to bypass the command input port
730  // ----------------------------------------------------------------------
731 
737  FwOpcodeType opCode,
738  U32 cmdSeq,
739  Fw::CmdArgBuffer& args
740  );
741 
747  FwOpcodeType opCode,
748  U32 cmdSeq,
749  Fw::CmdArgBuffer& args
750  );
751 
752  protected:
753 
754  // ----------------------------------------------------------------------
755  // Pre-message hooks for async commands
756  //
757  // Each of these functions is invoked just before processing the
758  // corresponding command. By default they do nothing. You can
759  // override them to provide specific pre-command behavior.
760  // ----------------------------------------------------------------------
761 
763  virtual void FLUSH_QUEUE_preMsgHook(
764  FwOpcodeType opCode,
765  U32 cmdSeq
766  );
767 
769  virtual void FLUSH_ALL_QUEUES_preMsgHook(
770  FwOpcodeType opCode,
771  U32 cmdSeq
772  );
773 
774  protected:
775 
776  // ----------------------------------------------------------------------
777  // Event logging functions
778  // ----------------------------------------------------------------------
779 
784  Svc::QueueType queueType,
785  U32 index
786  ) const;
787 
788  protected:
789 
790  // ----------------------------------------------------------------------
791  // Telemetry write functions
792  // ----------------------------------------------------------------------
793 
798  const Svc::ComQueueDepth& arg,
799  Fw::Time _tlmTime = Fw::Time()
800  ) const;
801 
806  const Svc::BuffQueueDepth& arg,
807  Fw::Time _tlmTime = Fw::Time()
808  ) const;
809 
810  protected:
811 
812  // ----------------------------------------------------------------------
813  // Time
814  // ----------------------------------------------------------------------
815 
819  Fw::Time getTime() const;
820 
821  private:
822 
823  // ----------------------------------------------------------------------
824  // Message dispatch functions
825  // ----------------------------------------------------------------------
826 
828  virtual MsgDispatchStatus doDispatch();
829 
830  private:
831 
832  // ----------------------------------------------------------------------
833  // Calls for messages received on special input ports
834  // ----------------------------------------------------------------------
835 
837  static void m_p_CmdDisp_in(
838  Fw::PassiveComponentBase* callComp,
839  FwIndexType portNum,
840  FwOpcodeType opCode,
841  U32 cmdSeq,
842  Fw::CmdArgBuffer& args
843  );
844 
845  private:
846 
847  // ----------------------------------------------------------------------
848  // Calls for messages received on typed input ports
849  // ----------------------------------------------------------------------
850 
852  static void m_p_bufferQueueIn_in(
853  Fw::PassiveComponentBase* callComp,
854  FwIndexType portNum,
855  Fw::Buffer& fwBuffer
856  );
857 
859  static void m_p_comPacketQueueIn_in(
860  Fw::PassiveComponentBase* callComp,
861  FwIndexType portNum,
862  Fw::ComBuffer& data,
863  U32 context
864  );
865 
867  static void m_p_comStatusIn_in(
868  Fw::PassiveComponentBase* callComp,
869  FwIndexType portNum,
870  Fw::Success& condition
871  );
872 
874  static void m_p_dataReturnIn_in(
875  Fw::PassiveComponentBase* callComp,
876  FwIndexType portNum,
877  Fw::Buffer& data,
878  const ComCfg::FrameContext& context
879  );
880 
882  static void m_p_run_in(
883  Fw::PassiveComponentBase* callComp,
884  FwIndexType portNum,
885  U32 context
886  );
887 
888  private:
889 
890  // ----------------------------------------------------------------------
891  // Special input ports
892  // ----------------------------------------------------------------------
893 
895  Fw::InputCmdPort m_CmdDisp_InputPort[NUM_CMDDISP_INPUT_PORTS];
896 
897  private:
898 
899  // ----------------------------------------------------------------------
900  // Typed input ports
901  // ----------------------------------------------------------------------
902 
904  Fw::InputBufferSendPort m_bufferQueueIn_InputPort[NUM_BUFFERQUEUEIN_INPUT_PORTS];
905 
907  Fw::InputComPort m_comPacketQueueIn_InputPort[NUM_COMPACKETQUEUEIN_INPUT_PORTS];
908 
911 
914 
916  Svc::InputSchedPort m_run_InputPort[NUM_RUN_INPUT_PORTS];
917 
918  private:
919 
920  // ----------------------------------------------------------------------
921  // Special output ports
922  // ----------------------------------------------------------------------
923 
925  Fw::OutputCmdRegPort m_CmdReg_OutputPort[NUM_CMDREG_OUTPUT_PORTS];
926 
929 
931  Fw::OutputLogPort m_Log_OutputPort[NUM_LOG_OUTPUT_PORTS];
932 
933 #if FW_ENABLE_TEXT_LOGGING == 1
934 
936  Fw::OutputLogTextPort m_LogText_OutputPort[NUM_LOGTEXT_OUTPUT_PORTS];
937 
938 #endif
939 
941  Fw::OutputTimePort m_Time_OutputPort[NUM_TIME_OUTPUT_PORTS];
942 
944  Fw::OutputTlmPort m_Tlm_OutputPort[NUM_TLM_OUTPUT_PORTS];
945 
946  private:
947 
948  // ----------------------------------------------------------------------
949  // Typed output ports
950  // ----------------------------------------------------------------------
951 
953  Fw::OutputBufferSendPort m_bufferReturnOut_OutputPort[NUM_BUFFERRETURNOUT_OUTPUT_PORTS];
954 
957 
958  };
959 
960 }
961 
962 #endif
virtual void comStatusIn_handler(FwIndexType portNum, Fw::Success &condition)=0
Handler for input port comStatusIn.
static constexpr FwIndexType getNum_Tlm_OutputPorts()
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
virtual ~ComQueueComponentBase()
Destroy ComQueueComponentBase object.
void FLUSH_QUEUE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
FwIdType FwOpcodeType
The type of a command opcode.
static constexpr FwIndexType getNum_dataReturnIn_InputPorts()
static constexpr FwIndexType getNum_bufferReturnOut_OutputPorts()
PlatformSizeType FwSizeType
void tlmWrite_buffQueueDepth(const Svc::BuffQueueDepth &arg, Fw::Time _tlmTime=Fw::Time()) const
I32 FwEnumStoreType
void set_Log_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to Log[portNum].
static constexpr FwIndexType getNum_CmdDisp_InputPorts()
virtual void FLUSH_ALL_QUEUES_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command FLUSH_ALL_QUEUES.
static constexpr FwIndexType getNum_CmdReg_OutputPorts()
virtual void FLUSH_QUEUE_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, Svc::QueueType queueType, FwIndexType indexType)=0
virtual void dataReturnIn_handler(FwIndexType portNum, Fw::Buffer &data, const ComCfg::FrameContext &context)=0
Handler for input port dataReturnIn.
void dataOut_out(FwIndexType portNum, Fw::Buffer &data, const ComCfg::FrameContext &context)
Invoke output port dataOut.
void dataReturnIn_handlerBase(FwIndexType portNum, Fw::Buffer &data, const ComCfg::FrameContext &context)
Handler base-class function for input port dataReturnIn.
void set_CmdStatus_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to CmdStatus[portNum].
Svc::InputSchedPort * get_run_InputPort(FwIndexType portNum)
virtual void FLUSH_ALL_QUEUES_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
static constexpr FwIndexType getNum_comPacketQueueIn_InputPorts()
void set_bufferReturnOut_OutputPort(FwIndexType portNum, Fw::InputBufferSendPort *port)
Connect port to bufferReturnOut[portNum].
bool isConnected_bufferReturnOut_OutputPort(FwIndexType portNum)
Enum representing a command response.
virtual void FLUSH_QUEUE_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command FLUSH_QUEUE.
void set_dataOut_OutputPort(FwIndexType portNum, Svc::InputComDataWithContextPort *port)
Connect port to dataOut[portNum].
void FLUSH_ALL_QUEUES_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Array of queue depths for Fw::Com types.
An enumeration of queue data types.
bool isConnected_Log_OutputPort(FwIndexType portNum)
void init()
Object initializer.
Definition: ObjBase.cpp:24
void comStatusIn_handlerBase(FwIndexType portNum, Fw::Success &condition)
Handler base-class function for input port comStatusIn.
virtual void bufferQueueIn_preMsgHook(FwIndexType portNum, Fw::Buffer &fwBuffer)
Pre-message hook for async input port bufferQueueIn.
void set_Tlm_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to Tlm[portNum].
bool isConnected_Time_OutputPort(FwIndexType portNum)
static constexpr FwIndexType getNum_CmdStatus_OutputPorts()
virtual void run_handler(FwIndexType portNum, U32 context)=0
Handler for input port run.
void run_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port run.
static constexpr FwIndexType getNum_bufferQueueIn_InputPorts()
Array of queue depths for Fw::Buffer types.
virtual void run_preMsgHook(FwIndexType portNum, U32 context)
Pre-message hook for async input port run.
void log_WARNING_HI_QueueOverflow(Svc::QueueType queueType, U32 index) const
void set_Time_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to Time[portNum].
Fw::InputComPort * get_comPacketQueueIn_InputPort(FwIndexType portNum)
virtual void bufferQueueIn_handler(FwIndexType portNum, Fw::Buffer &fwBuffer)=0
Handler for input port bufferQueueIn.
virtual void comPacketQueueIn_handler(FwIndexType portNum, Fw::ComBuffer &data, U32 context)=0
Handler for input port comPacketQueueIn.
void comPacketQueueIn_handlerBase(FwIndexType portNum, Fw::ComBuffer &data, U32 context)
Handler base-class function for input port comPacketQueueIn.
Svc::InputComDataWithContextPort * get_dataReturnIn_InputPort(FwIndexType portNum)
virtual void comPacketQueueIn_preMsgHook(FwIndexType portNum, Fw::ComBuffer &data, U32 context)
Pre-message hook for async input port comPacketQueueIn.
Fw::InputBufferSendPort * get_bufferQueueIn_InputPort(FwIndexType portNum)
Fw::InputCmdPort * get_CmdDisp_InputPort(FwIndexType portNum)
static constexpr FwIndexType getNum_dataOut_OutputPorts()
bool isConnected_CmdStatus_OutputPort(FwIndexType portNum)
static constexpr FwIndexType getNum_comStatusIn_InputPorts()
static constexpr FwIndexType getNum_Log_OutputPorts()
Fw::InputSuccessConditionPort * get_comStatusIn_InputPort(FwIndexType portNum)
bool isConnected_Tlm_OutputPort(FwIndexType portNum)
ComQueueComponentBase(const char *compName="")
Construct ComQueueComponentBase object.
PlatformIndexType FwIndexType
Type used to pass context info between components during framing/deframing.
void tlmWrite_comQueueDepth(const Svc::ComQueueDepth &arg, Fw::Time _tlmTime=Fw::Time()) const
RateGroupDivider component implementation.
static constexpr FwIndexType getNum_Time_OutputPorts()
void regCommands()
Register commands with the Command Dispatcher.
virtual void comStatusIn_preMsgHook(FwIndexType portNum, Fw::Success &condition)
Pre-message hook for async input port comStatusIn.
friend class ComQueueTesterBase
Friend class tester to support autocoded test harness.
void set_CmdReg_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to CmdReg[portNum].
virtual void bufferQueueIn_overflowHook(FwIndexType portNum, Fw::Buffer &fwBuffer)=0
Overflow hook for async input port bufferQueueIn.
friend class ComQueueTester
Friend class tester implementation to support white-box testing.
bool isConnected_dataOut_OutputPort(FwIndexType portNum)
Success/Failure.
bool isConnected_CmdReg_OutputPort(FwIndexType portNum)
static constexpr FwIndexType getNum_run_InputPorts()
void bufferQueueIn_handlerBase(FwIndexType portNum, Fw::Buffer &fwBuffer)
Handler base-class function for input port bufferQueueIn.
Auto-generated base for ComQueue component.
void bufferReturnOut_out(FwIndexType portNum, Fw::Buffer &fwBuffer)
Invoke output port bufferReturnOut.