F´ Flight Software - C/C++ Documentation NASA-v1.6.0
A framework for building embedded system applications to NASA flight quality standards.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
CommandDispatcherComponentAc.hpp
Go to the documentation of this file.
1// ======================================================================
2// \title CommandDispatcherComponentAc.hpp
3// \author Generated by fpp-to-cpp
4// \brief hpp file for CommandDispatcher component base class
5// ======================================================================
6
7#ifndef Svc_CommandDispatcherComponentAc_HPP
8#define Svc_CommandDispatcherComponentAc_HPP
9
10#include "FpConfig.hpp"
11#include "Fw/Cmd/CmdPortAc.hpp"
15#include "Fw/Cmd/CmdString.hpp"
16#include "Fw/Com/ComPortAc.hpp"
18#include "Fw/Log/LogPortAc.hpp"
19#include "Fw/Log/LogString.hpp"
20#if FW_ENABLE_TEXT_LOGGING == 1
22#endif
26#include "Fw/Tlm/TlmPortAc.hpp"
27#include "Fw/Tlm/TlmString.hpp"
29#include "Os/Mutex.hpp"
31
32namespace Svc {
33
40 {
41
42 // ----------------------------------------------------------------------
43 // Friend classes
44 // ----------------------------------------------------------------------
45
48
49 PROTECTED:
50
51 // ----------------------------------------------------------------------
52 // Constants
53 // ----------------------------------------------------------------------
54
56 enum {
58 };
59
61 enum {
66 };
67
69 enum {
76 };
77
79 enum {
83 };
84
86 enum {
91 };
92
94 enum {
106 };
107
109 enum {
112 };
113
114 public:
115
116 // ----------------------------------------------------------------------
117 // Component initialization
118 // ----------------------------------------------------------------------
119
121 void init(
122 NATIVE_INT_TYPE queueDepth,
123 NATIVE_INT_TYPE instance = 0
124 );
125
126 public:
127
128 // ----------------------------------------------------------------------
129 // Getters for special input ports
130 // ----------------------------------------------------------------------
131
136 NATIVE_INT_TYPE portNum
137 );
138
139 public:
140
141 // ----------------------------------------------------------------------
142 // Getters for typed input ports
143 // ----------------------------------------------------------------------
144
149 NATIVE_INT_TYPE portNum
150 );
151
156 NATIVE_INT_TYPE portNum
157 );
158
163 NATIVE_INT_TYPE portNum
164 );
165
170 NATIVE_INT_TYPE portNum
171 );
172
173 public:
174
175 // ----------------------------------------------------------------------
176 // Connect special input ports to special output ports
177 // ----------------------------------------------------------------------
178
181 NATIVE_INT_TYPE portNum,
183 );
184
187 NATIVE_INT_TYPE portNum,
189 );
190
193 NATIVE_INT_TYPE portNum,
194 Fw::InputLogPort* port
195 );
196
197#if FW_ENABLE_TEXT_LOGGING == 1
198
200 void set_LogText_OutputPort(
201 NATIVE_INT_TYPE portNum,
203 );
204
205#endif
206
209 NATIVE_INT_TYPE portNum,
210 Fw::InputTimePort* port
211 );
212
215 NATIVE_INT_TYPE portNum,
216 Fw::InputTlmPort* port
217 );
218
219 public:
220
221 // ----------------------------------------------------------------------
222 // Connect typed input ports to typed output ports
223 // ----------------------------------------------------------------------
224
227 NATIVE_INT_TYPE portNum,
228 Fw::InputCmdPort* port
229 );
230
233 NATIVE_INT_TYPE portNum,
234 Svc::InputPingPort* port
235 );
236
239 NATIVE_INT_TYPE portNum,
241 );
242
243#if FW_PORT_SERIALIZATION
244
245 public:
246
247 // ----------------------------------------------------------------------
248 // Connect serial input ports to special output ports
249 // ----------------------------------------------------------------------
250
253 NATIVE_INT_TYPE portNum,
254 Fw::InputSerializePort* port
255 );
256
259 NATIVE_INT_TYPE portNum,
260 Fw::InputSerializePort* port
261 );
262
265 NATIVE_INT_TYPE portNum,
266 Fw::InputSerializePort* port
267 );
268
269#if FW_ENABLE_TEXT_LOGGING == 1
270
272 void set_LogText_OutputPort(
273 NATIVE_INT_TYPE portNum,
274 Fw::InputSerializePort* port
275 );
276
277#endif
278
281 NATIVE_INT_TYPE portNum,
282 Fw::InputSerializePort* port
283 );
284
287 NATIVE_INT_TYPE portNum,
288 Fw::InputSerializePort* port
289 );
290
291#endif
292
293#if FW_PORT_SERIALIZATION
294
295 public:
296
297 // ----------------------------------------------------------------------
298 // Connect serial input ports to typed output ports
299 // ----------------------------------------------------------------------
300
303 NATIVE_INT_TYPE portNum,
304 Fw::InputSerializePort* port
305 );
306
309 NATIVE_INT_TYPE portNum,
310 Fw::InputSerializePort* port
311 );
312
315 NATIVE_INT_TYPE portNum,
316 Fw::InputSerializePort* port
317 );
318
319#endif
320
321 public:
322
323 // ----------------------------------------------------------------------
324 // Command registration
325 // ----------------------------------------------------------------------
326
330 void regCommands();
331
332 PROTECTED:
333
334 // ----------------------------------------------------------------------
335 // Component construction and destruction
336 // ----------------------------------------------------------------------
337
340 const char* compName = ""
341 );
342
345
346 PROTECTED:
347
348 // ----------------------------------------------------------------------
349 // Getters for numbers of special input ports
350 // ----------------------------------------------------------------------
351
356
357 PROTECTED:
358
359 // ----------------------------------------------------------------------
360 // Getters for numbers of typed input ports
361 // ----------------------------------------------------------------------
362
367
372
377
382
383 PROTECTED:
384
385 // ----------------------------------------------------------------------
386 // Getters for numbers of special output ports
387 // ----------------------------------------------------------------------
388
393
398
403
404#if FW_ENABLE_TEXT_LOGGING == 1
405
409 NATIVE_INT_TYPE getNum_LogText_OutputPorts();
410
411#endif
412
417
422
423 PROTECTED:
424
425 // ----------------------------------------------------------------------
426 // Getters for numbers of typed output ports
427 // ----------------------------------------------------------------------
428
433
438
443
444 PROTECTED:
445
446 // ----------------------------------------------------------------------
447 // Connection status queries for special output ports
448 // ----------------------------------------------------------------------
449
454 NATIVE_INT_TYPE portNum
455 );
456
461 NATIVE_INT_TYPE portNum
462 );
463
468 NATIVE_INT_TYPE portNum
469 );
470
471#if FW_ENABLE_TEXT_LOGGING == 1
472
476 bool isConnected_LogText_OutputPort(
477 NATIVE_INT_TYPE portNum
478 );
479
480#endif
481
486 NATIVE_INT_TYPE portNum
487 );
488
493 NATIVE_INT_TYPE portNum
494 );
495
496 PROTECTED:
497
498 // ----------------------------------------------------------------------
499 // Connection status queries for typed output ports
500 // ----------------------------------------------------------------------
501
506 NATIVE_INT_TYPE portNum
507 );
508
513 NATIVE_INT_TYPE portNum
514 );
515
520 NATIVE_INT_TYPE portNum
521 );
522
523 PROTECTED:
524
525 // ----------------------------------------------------------------------
526 // Handlers to implement for typed input ports
527 // ----------------------------------------------------------------------
528
530 virtual void compCmdReg_handler(
531 NATIVE_INT_TYPE portNum,
532 FwOpcodeType opCode
533 ) = 0;
534
537 NATIVE_INT_TYPE portNum,
538 FwOpcodeType opCode,
539 U32 cmdSeq,
540 const Fw::CmdResponse& response
541 ) = 0;
542
544 virtual void pingIn_handler(
545 NATIVE_INT_TYPE portNum,
546 U32 key
547 ) = 0;
548
550 virtual void seqCmdBuff_handler(
551 NATIVE_INT_TYPE portNum,
552 Fw::ComBuffer& data,
553 U32 context
554 ) = 0;
555
556 PROTECTED:
557
558 // ----------------------------------------------------------------------
559 // Port handler base-class functions for typed input ports
560 //
561 // Call these functions directly to bypass the corresponding ports
562 // ----------------------------------------------------------------------
563
566 NATIVE_INT_TYPE portNum,
567 FwOpcodeType opCode
568 );
569
572 NATIVE_INT_TYPE portNum,
573 FwOpcodeType opCode,
574 U32 cmdSeq,
575 const Fw::CmdResponse& response
576 );
577
580 NATIVE_INT_TYPE portNum,
581 U32 key
582 );
583
586 NATIVE_INT_TYPE portNum,
587 Fw::ComBuffer& data,
588 U32 context
589 );
590
591 PROTECTED:
592
593 // ----------------------------------------------------------------------
594 // Pre-message hooks for typed async input ports
595 //
596 // Each of these functions is invoked just before processing a message
597 // on the corresponding port. By default, they do nothing. You can
598 // override them to provide specific pre-message behavior.
599 // ----------------------------------------------------------------------
600
602 virtual void compCmdStat_preMsgHook(
603 NATIVE_INT_TYPE portNum,
604 FwOpcodeType opCode,
605 U32 cmdSeq,
606 const Fw::CmdResponse& response
607 );
608
610 virtual void pingIn_preMsgHook(
611 NATIVE_INT_TYPE portNum,
612 U32 key
613 );
614
616 virtual void seqCmdBuff_preMsgHook(
617 NATIVE_INT_TYPE portNum,
618 Fw::ComBuffer& data,
619 U32 context
620 );
621
622 PROTECTED:
623
624 // ----------------------------------------------------------------------
625 // Invocation functions for typed output ports
626 // ----------------------------------------------------------------------
627
629 void compCmdSend_out(
630 NATIVE_INT_TYPE portNum,
631 FwOpcodeType opCode,
632 U32 cmdSeq,
633 Fw::CmdArgBuffer& args
634 );
635
637 void pingOut_out(
638 NATIVE_INT_TYPE portNum,
639 U32 key
640 );
641
643 void seqCmdStatus_out(
644 NATIVE_INT_TYPE portNum,
645 FwOpcodeType opCode,
646 U32 cmdSeq,
647 const Fw::CmdResponse& response
648 );
649
650 PROTECTED:
651
652 // ----------------------------------------------------------------------
653 // Command response
654 // ----------------------------------------------------------------------
655
657 void cmdResponse_out(
658 FwOpcodeType opCode,
659 U32 cmdSeq,
660 Fw::CmdResponse response
661 );
662
663 PROTECTED:
664
665 // ----------------------------------------------------------------------
666 // Command handlers to implement
667 // ----------------------------------------------------------------------
668
673 FwOpcodeType opCode,
674 U32 cmdSeq
675 ) = 0;
676
681 FwOpcodeType opCode,
682 U32 cmdSeq,
683 const Fw::CmdStringArg& arg1
684 ) = 0;
685
690 FwOpcodeType opCode,
691 U32 cmdSeq,
692 I32 arg1,
693 F32 arg2,
694 U8 arg3
695 ) = 0;
696
701 FwOpcodeType opCode,
702 U32 cmdSeq
703 ) = 0;
704
705 PROTECTED:
706
707 // ----------------------------------------------------------------------
708 // Command handler base-class functions
709 //
710 // Call these functions directly to bypass the command input port
711 // ----------------------------------------------------------------------
712
717 FwOpcodeType opCode,
718 U32 cmdSeq,
719 Fw::CmdArgBuffer& args
720 );
721
726 FwOpcodeType opCode,
727 U32 cmdSeq,
728 Fw::CmdArgBuffer& args
729 );
730
735 FwOpcodeType opCode,
736 U32 cmdSeq,
737 Fw::CmdArgBuffer& args
738 );
739
744 FwOpcodeType opCode,
745 U32 cmdSeq,
746 Fw::CmdArgBuffer& args
747 );
748
749 PROTECTED:
750
751 // ----------------------------------------------------------------------
752 // Pre-message hooks for async commands
753 //
754 // Each of these functions is invoked just before processing the
755 // corresponding command. By default they do nothing. You can
756 // override them to provide specific pre-command behavior.
757 // ----------------------------------------------------------------------
758
760 virtual void CMD_NO_OP_preMsgHook(
761 FwOpcodeType opCode,
762 U32 cmdSeq
763 );
764
766 virtual void CMD_NO_OP_STRING_preMsgHook(
767 FwOpcodeType opCode,
768 U32 cmdSeq
769 );
770
772 virtual void CMD_TEST_CMD_1_preMsgHook(
773 FwOpcodeType opCode,
774 U32 cmdSeq
775 );
776
779 FwOpcodeType opCode,
780 U32 cmdSeq
781 );
782
783 PROTECTED:
784
785 // ----------------------------------------------------------------------
786 // Event logging functions
787 // ----------------------------------------------------------------------
788
791 U32 Opcode,
792 I32 port,
793 I32 slot
794 );
795
800 U32 Opcode,
801 I32 port
802 );
803
808 U32 Opcode
809 );
810
815 U32 Opcode,
816 Fw::CmdResponse error
817 );
818
823 Fw::DeserialStatus Status
824 );
825
830 U32 Opcode
831 );
832
837 U32 Opcode
838 );
839
844
849 const Fw::LogStringArg& message
850 );
851
856 I32 arg1,
857 F32 arg2,
858 U8 arg3
859 );
860
865 U32 Opcode,
866 I32 port
867 );
868
869 PROTECTED:
870
871 // ----------------------------------------------------------------------
872 // Telemetry write functions
873 // ----------------------------------------------------------------------
874
879 U32 arg,
880 Fw::Time _tlmTime = Fw::Time()
881 );
882
887 U32 arg,
888 Fw::Time _tlmTime = Fw::Time()
889 );
890
891 PROTECTED:
892
893 // ----------------------------------------------------------------------
894 // Time
895 // ----------------------------------------------------------------------
896
901
902 PROTECTED:
903
904 // ----------------------------------------------------------------------
905 // Mutex operations for guarded ports
906 //
907 // You can override these operations to provide more sophisticated
908 // synchronization
909 // ----------------------------------------------------------------------
910
912 virtual void lock();
913
915 virtual void unLock();
916
917 PRIVATE:
918
919 // ----------------------------------------------------------------------
920 // Message dispatch functions
921 // ----------------------------------------------------------------------
922
924 virtual MsgDispatchStatus doDispatch();
925
926 PRIVATE:
927
928 // ----------------------------------------------------------------------
929 // Calls for messages received on special input ports
930 // ----------------------------------------------------------------------
931
933 static void m_p_CmdDisp_in(
934 Fw::PassiveComponentBase* callComp,
935 NATIVE_INT_TYPE portNum,
936 FwOpcodeType opCode,
937 U32 cmdSeq,
938 Fw::CmdArgBuffer& args
939 );
940
941 PRIVATE:
942
943 // ----------------------------------------------------------------------
944 // Calls for messages received on typed input ports
945 // ----------------------------------------------------------------------
946
948 static void m_p_compCmdReg_in(
949 Fw::PassiveComponentBase* callComp,
950 NATIVE_INT_TYPE portNum,
951 FwOpcodeType opCode
952 );
953
955 static void m_p_compCmdStat_in(
956 Fw::PassiveComponentBase* callComp,
957 NATIVE_INT_TYPE portNum,
958 FwOpcodeType opCode,
959 U32 cmdSeq,
960 const Fw::CmdResponse& response
961 );
962
964 static void m_p_pingIn_in(
965 Fw::PassiveComponentBase* callComp,
966 NATIVE_INT_TYPE portNum,
967 U32 key
968 );
969
971 static void m_p_seqCmdBuff_in(
972 Fw::PassiveComponentBase* callComp,
973 NATIVE_INT_TYPE portNum,
974 Fw::ComBuffer& data,
975 U32 context
976 );
977
978 PRIVATE:
979
980 // ----------------------------------------------------------------------
981 // Special input ports
982 // ----------------------------------------------------------------------
983
985 Fw::InputCmdPort m_CmdDisp_InputPort[NUM_CMDDISP_INPUT_PORTS];
986
987 PRIVATE:
988
989 // ----------------------------------------------------------------------
990 // Typed input ports
991 // ----------------------------------------------------------------------
992
994 Fw::InputCmdRegPort m_compCmdReg_InputPort[NUM_COMPCMDREG_INPUT_PORTS];
995
998
1000 Svc::InputPingPort m_pingIn_InputPort[NUM_PINGIN_INPUT_PORTS];
1001
1003 Fw::InputComPort m_seqCmdBuff_InputPort[NUM_SEQCMDBUFF_INPUT_PORTS];
1004
1005 PRIVATE:
1006
1007 // ----------------------------------------------------------------------
1008 // Special output ports
1009 // ----------------------------------------------------------------------
1010
1012 Fw::OutputCmdRegPort m_CmdReg_OutputPort[NUM_CMDREG_OUTPUT_PORTS];
1013
1016
1018 Fw::OutputLogPort m_Log_OutputPort[NUM_LOG_OUTPUT_PORTS];
1019
1020#if FW_ENABLE_TEXT_LOGGING == 1
1021
1023 Fw::OutputLogTextPort m_LogText_OutputPort[NUM_LOGTEXT_OUTPUT_PORTS];
1024
1025#endif
1026
1028 Fw::OutputTimePort m_Time_OutputPort[NUM_TIME_OUTPUT_PORTS];
1029
1031 Fw::OutputTlmPort m_Tlm_OutputPort[NUM_TLM_OUTPUT_PORTS];
1032
1033 PRIVATE:
1034
1035 // ----------------------------------------------------------------------
1036 // Typed output ports
1037 // ----------------------------------------------------------------------
1038
1040 Fw::OutputCmdPort m_compCmdSend_OutputPort[NUM_COMPCMDSEND_OUTPUT_PORTS];
1041
1043 Svc::OutputPingPort m_pingOut_OutputPort[NUM_PINGOUT_OUTPUT_PORTS];
1044
1047
1048 PRIVATE:
1049
1050 // ----------------------------------------------------------------------
1051 // First update flags for telemetry channels
1052 // ----------------------------------------------------------------------
1053
1055 bool m_first_update_CommandsDispatched;
1056
1058 bool m_first_update_CommandErrors;
1059
1060 PRIVATE:
1061
1062 // ----------------------------------------------------------------------
1063 // Last value storage for telemetry channels
1064 // ----------------------------------------------------------------------
1065
1067 U32 m_last_CommandsDispatched;
1068
1070 U32 m_last_CommandErrors;
1071
1072 PRIVATE:
1073
1074 // ----------------------------------------------------------------------
1075 // Mutexes
1076 // ----------------------------------------------------------------------
1077
1079 Os::Mutex m_guardedPortMutex;
1080
1081 };
1082
1083}
1084
1085#endif
PlatformIntType NATIVE_INT_TYPE
Definition BasicTypes.h:51
float F32
32-bit floating point
Definition BasicTypes.h:45
uint8_t U8
8-bit unsigned integer
Definition BasicTypes.h:26
U32 FwOpcodeType
Definition FpConfig.h:56
C++-compatible configuration header for fprime configuration.
Enum representing a command response.
Deserialization status.
void init()
Object initializer.
Definition ObjBase.cpp:27
Auto-generated base for CommandDispatcher component.
void compCmdSend_out(NATIVE_INT_TYPE portNum, FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Invoke output port compCmdSend.
virtual void CMD_TEST_CMD_1_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CMD_TEST_CMD_1.
void log_ACTIVITY_HI_TestCmd1Args(I32 arg1, F32 arg2, U8 arg3)
virtual void CMD_NO_OP_STRING_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CMD_NO_OP_STRING.
void set_Tlm_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputTlmPort *port)
Connect port to Tlm[portNum].
void regCommands()
Register commands with the Command Dispatcher.
void CMD_NO_OP_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void log_DIAGNOSTIC_OpCodeRegistered(U32 Opcode, I32 port, I32 slot)
Log event OpCodeRegistered.
CommandDispatcherComponentBase(const char *compName="")
Construct CommandDispatcherComponentBase object.
virtual void CMD_NO_OP_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CMD_NO_OP.
bool isConnected_compCmdSend_OutputPort(NATIVE_INT_TYPE portNum)
virtual void unLock()
Unlock the guarded mutex.
void pingIn_handlerBase(NATIVE_INT_TYPE portNum, U32 key)
Handler base-class function for input port pingIn.
void set_seqCmdStatus_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputCmdResponsePort *port)
Connect port to seqCmdStatus[portNum].
virtual void pingIn_handler(NATIVE_INT_TYPE portNum, U32 key)=0
Handler for input port pingIn.
void tlmWrite_CommandErrors(U32 arg, Fw::Time _tlmTime=Fw::Time())
bool isConnected_Tlm_OutputPort(NATIVE_INT_TYPE portNum)
virtual void pingIn_preMsgHook(NATIVE_INT_TYPE portNum, U32 key)
Pre-message hook for async input port pingIn.
@ OPCODE_CMD_CLEAR_TRACKING
Clear command tracking info to recover from components not returning status.
virtual void compCmdStat_preMsgHook(NATIVE_INT_TYPE portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
Pre-message hook for async input port compCmdStat.
@ CHANNELID_COMMANDSDISPATCHED
Channel ID for CommandsDispatched.
@ CHANNELID_COMMANDERRORS
Channel ID for CommandErrors.
@ EVENTID_MALFORMEDCOMMAND
Received a malformed command packet.
@ EVENTID_NOOPRECEIVED
The command dispatcher has successfully received a NO-OP command.
@ EVENTID_TOOMANYCOMMANDS
Exceeded the number of commands that can be simultaneously executed.
@ EVENTID_NOOPSTRINGRECEIVED
The command dispatcher has successfully received a NO-OP command from GUI with a string.
@ EVENTID_TESTCMD1ARGS
This log event message returns the TEST_CMD_1 arguments.
@ EVENTID_OPCODEREREGISTERED
Op code reregistered event.
@ EVENTID_OPCODEERROR
Op code completed with error event.
virtual void seqCmdBuff_handler(NATIVE_INT_TYPE portNum, Fw::ComBuffer &data, U32 context)=0
Handler for input port seqCmdBuff.
void seqCmdStatus_out(NATIVE_INT_TYPE portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
Invoke output port seqCmdStatus.
virtual void compCmdReg_handler(NATIVE_INT_TYPE portNum, FwOpcodeType opCode)=0
Handler for input port compCmdReg.
void compCmdReg_handlerBase(NATIVE_INT_TYPE portNum, FwOpcodeType opCode)
Handler base-class function for input port compCmdReg.
Fw::InputCmdRegPort * get_compCmdReg_InputPort(NATIVE_INT_TYPE portNum)
void set_Time_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputTimePort *port)
Connect port to Time[portNum].
friend class CommandDispatcherComponentBaseFriend
Friend class for white-box testing.
void log_WARNING_HI_MalformedCommand(Fw::DeserialStatus Status)
void pingOut_out(NATIVE_INT_TYPE portNum, U32 key)
Invoke output port pingOut.
void set_CmdStatus_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputCmdResponsePort *port)
Connect port to CmdStatus[portNum].
virtual void seqCmdBuff_preMsgHook(NATIVE_INT_TYPE portNum, Fw::ComBuffer &data, U32 context)
Pre-message hook for async input port seqCmdBuff.
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
Svc::InputPingPort * get_pingIn_InputPort(NATIVE_INT_TYPE portNum)
void compCmdStat_handlerBase(NATIVE_INT_TYPE portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
Handler base-class function for input port compCmdStat.
virtual void CMD_CLEAR_TRACKING_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
Fw::InputCmdResponsePort * get_compCmdStat_InputPort(NATIVE_INT_TYPE portNum)
void set_compCmdSend_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputCmdPort *port)
Connect port to compCmdSend[portNum].
virtual void CMD_NO_OP_STRING_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &arg1)=0
void set_CmdReg_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputCmdRegPort *port)
Connect port to CmdReg[portNum].
virtual void CMD_CLEAR_TRACKING_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CMD_CLEAR_TRACKING.
virtual ~CommandDispatcherComponentBase()
Destroy CommandDispatcherComponentBase object.
void set_Log_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputLogPort *port)
Connect port to Log[portNum].
virtual void CMD_NO_OP_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
bool isConnected_CmdReg_OutputPort(NATIVE_INT_TYPE portNum)
bool isConnected_Log_OutputPort(NATIVE_INT_TYPE portNum)
bool isConnected_CmdStatus_OutputPort(NATIVE_INT_TYPE portNum)
bool isConnected_Time_OutputPort(NATIVE_INT_TYPE portNum)
Fw::InputCmdPort * get_CmdDisp_InputPort(NATIVE_INT_TYPE portNum)
void CMD_TEST_CMD_1_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void tlmWrite_CommandsDispatched(U32 arg, Fw::Time _tlmTime=Fw::Time())
void set_pingOut_OutputPort(NATIVE_INT_TYPE portNum, Svc::InputPingPort *port)
Connect port to pingOut[portNum].
void CMD_NO_OP_STRING_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void seqCmdBuff_handlerBase(NATIVE_INT_TYPE portNum, Fw::ComBuffer &data, U32 context)
Handler base-class function for input port seqCmdBuff.
virtual void lock()
Lock the guarded mutex.
void CMD_CLEAR_TRACKING_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
bool isConnected_pingOut_OutputPort(NATIVE_INT_TYPE portNum)
virtual void CMD_TEST_CMD_1_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, I32 arg1, F32 arg2, U8 arg3)=0
void log_ACTIVITY_HI_NoOpStringReceived(const Fw::LogStringArg &message)
bool isConnected_seqCmdStatus_OutputPort(NATIVE_INT_TYPE portNum)
void log_COMMAND_OpCodeError(U32 Opcode, Fw::CmdResponse error)
Fw::InputComPort * get_seqCmdBuff_InputPort(NATIVE_INT_TYPE portNum)
virtual void compCmdStat_handler(NATIVE_INT_TYPE portNum, FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)=0
Handler for input port compCmdStat.