F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
FileManagerComponentAc.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title FileManagerComponentAc.hpp
3 // \author Generated by fpp-to-cpp
4 // \brief hpp file for FileManager component base class
5 // ======================================================================
6 
7 #ifndef Svc_FileManagerComponentAc_HPP
8 #define Svc_FileManagerComponentAc_HPP
9 
10 #include <atomic>
11 
12 #include "Fw/Cmd/CmdPortAc.hpp"
13 #include "Fw/Cmd/CmdRegPortAc.hpp"
15 #include "Fw/Cmd/CmdString.hpp"
17 #include "Fw/FPrimeBasicTypes.hpp"
18 #include "Fw/Log/LogPortAc.hpp"
19 #include "Fw/Log/LogString.hpp"
20 #if FW_ENABLE_TEXT_LOGGING == 1
21 #include "Fw/Log/LogTextPortAc.hpp"
22 #endif
25 #include "Fw/Time/TimePortAc.hpp"
26 #include "Fw/Tlm/TlmPortAc.hpp"
27 #include "Fw/Tlm/TlmString.hpp"
28 #include "Svc/Ping/PingPortAc.hpp"
31 
32 namespace Svc {
33 
40  {
41 
42  // ----------------------------------------------------------------------
43  // Friend classes
44  // ----------------------------------------------------------------------
45 
47  friend class FileManagerTesterBase;
49  friend class FileManagerTester;
50 
51  protected:
52 
53  // ----------------------------------------------------------------------
54  // Constants
55  // ----------------------------------------------------------------------
56 
58  enum {
60  };
61 
63  enum {
66  };
67 
69  enum {
76  };
77 
79  enum {
81  };
82 
84  enum {
93  };
94 
96  enum {
123  };
124 
126  enum {
129  };
130 
131  public:
132 
133  // ----------------------------------------------------------------------
134  // Component initialization
135  // ----------------------------------------------------------------------
136 
138  void init(
139  FwSizeType queueDepth,
140  FwEnumStoreType instance = 0
141  );
142 
143  public:
144 
145  // ----------------------------------------------------------------------
146  // Getters for special input ports
147  // ----------------------------------------------------------------------
148 
153  FwIndexType portNum
154  );
155 
156  public:
157 
158  // ----------------------------------------------------------------------
159  // Getters for typed input ports
160  // ----------------------------------------------------------------------
161 
166  FwIndexType portNum
167  );
168 
173  FwIndexType portNum
174  );
175 
176  public:
177 
178  // ----------------------------------------------------------------------
179  // Connect input ports to special output ports
180  // ----------------------------------------------------------------------
181 
182 #if FW_ENABLE_TEXT_LOGGING == 1
183 
185  void set_LogText_OutputPort(
186  FwIndexType portNum,
187  Fw::InputLogTextPort* port
188  );
189 
190 #endif
191 
194  FwIndexType portNum,
195  Fw::InputCmdRegPort* port
196  );
197 
200  FwIndexType portNum,
202  );
203 
206  FwIndexType portNum,
207  Fw::InputLogPort* port
208  );
209 
212  FwIndexType portNum,
213  Fw::InputTimePort* port
214  );
215 
218  FwIndexType portNum,
219  Fw::InputTlmPort* port
220  );
221 
222  public:
223 
224  // ----------------------------------------------------------------------
225  // Connect typed input ports to typed output ports
226  // ----------------------------------------------------------------------
227 
230  FwIndexType portNum,
231  Svc::InputPingPort* port
232  );
233 
234 #if FW_PORT_SERIALIZATION
235 
236  public:
237 
238  // ----------------------------------------------------------------------
239  // Connect serial input ports to special output ports
240  // ----------------------------------------------------------------------
241 
242 #if FW_ENABLE_TEXT_LOGGING == 1
243 
245  void set_LogText_OutputPort(
246  FwIndexType portNum,
247  Fw::InputSerializePort* port
248  );
249 
250 #endif
251 
254  FwIndexType portNum,
255  Fw::InputSerializePort* port
256  );
257 
260  FwIndexType portNum,
261  Fw::InputSerializePort* port
262  );
263 
266  FwIndexType portNum,
267  Fw::InputSerializePort* port
268  );
269 
272  FwIndexType portNum,
273  Fw::InputSerializePort* port
274  );
275 
278  FwIndexType portNum,
279  Fw::InputSerializePort* port
280  );
281 
282 #endif
283 
284 #if FW_PORT_SERIALIZATION
285 
286  public:
287 
288  // ----------------------------------------------------------------------
289  // Connect serial input ports to typed output ports
290  // ----------------------------------------------------------------------
291 
294  FwIndexType portNum,
295  Fw::InputSerializePort* port
296  );
297 
298 #endif
299 
300  public:
301 
302  // ----------------------------------------------------------------------
303  // Command registration
304  // ----------------------------------------------------------------------
305 
309  void regCommands();
310 
311  protected:
312 
313  // ----------------------------------------------------------------------
314  // Component construction and destruction
315  // ----------------------------------------------------------------------
316 
319  const char* compName = ""
320  );
321 
323  virtual ~FileManagerComponentBase();
324 
325  protected:
326 
327  // ----------------------------------------------------------------------
328  // Getters for numbers of special input ports
329  // ----------------------------------------------------------------------
330 
335  return NUM_CMDIN_INPUT_PORTS;
336  }
337 
338  protected:
339 
340  // ----------------------------------------------------------------------
341  // Getters for numbers of typed input ports
342  // ----------------------------------------------------------------------
343 
348  return NUM_PINGIN_INPUT_PORTS;
349  }
350 
356  }
357 
358  protected:
359 
360  // ----------------------------------------------------------------------
361  // Getters for numbers of special output ports
362  // ----------------------------------------------------------------------
363 
364 #if FW_ENABLE_TEXT_LOGGING == 1
365 
369  static constexpr FwIndexType getNum_LogText_OutputPorts() {
371  }
372 
373 #endif
374 
380  }
381 
387  }
388 
394  }
395 
401  }
402 
408  }
409 
410  protected:
411 
412  // ----------------------------------------------------------------------
413  // Getters for numbers of typed output ports
414  // ----------------------------------------------------------------------
415 
421  }
422 
423  protected:
424 
425  // ----------------------------------------------------------------------
426  // Connection status queries for special output ports
427  // ----------------------------------------------------------------------
428 
429 #if FW_ENABLE_TEXT_LOGGING == 1
430 
434  bool isConnected_LogText_OutputPort(
435  FwIndexType portNum
436  );
437 
438 #endif
439 
444  FwIndexType portNum
445  );
446 
451  FwIndexType portNum
452  );
453 
458  FwIndexType portNum
459  );
460 
465  FwIndexType portNum
466  );
467 
472  FwIndexType portNum
473  );
474 
475  protected:
476 
477  // ----------------------------------------------------------------------
478  // Connection status queries for typed output ports
479  // ----------------------------------------------------------------------
480 
485  FwIndexType portNum
486  );
487 
488  protected:
489 
490  // ----------------------------------------------------------------------
491  // Handlers to implement for typed input ports
492  // ----------------------------------------------------------------------
493 
495  virtual void pingIn_handler(
496  FwIndexType portNum,
497  U32 key
498  ) = 0;
499 
501  virtual void schedIn_handler(
502  FwIndexType portNum,
503  U32 context
504  ) = 0;
505 
506  protected:
507 
508  // ----------------------------------------------------------------------
509  // Port handler base-class functions for typed input ports
510  //
511  // Call these functions directly to bypass the corresponding ports
512  // ----------------------------------------------------------------------
513 
515  void pingIn_handlerBase(
516  FwIndexType portNum,
517  U32 key
518  );
519 
521  void schedIn_handlerBase(
522  FwIndexType portNum,
523  U32 context
524  );
525 
526  protected:
527 
528  // ----------------------------------------------------------------------
529  // Pre-message hooks for typed async input ports
530  //
531  // Each of these functions is invoked just before processing a message
532  // on the corresponding port. By default, they do nothing. You can
533  // override them to provide specific pre-message behavior.
534  // ----------------------------------------------------------------------
535 
537  virtual void pingIn_preMsgHook(
538  FwIndexType portNum,
539  U32 key
540  );
541 
543  virtual void schedIn_preMsgHook(
544  FwIndexType portNum,
545  U32 context
546  );
547 
548  protected:
549 
550  // ----------------------------------------------------------------------
551  // Invocation functions for typed output ports
552  // ----------------------------------------------------------------------
553 
555  void pingOut_out(
556  FwIndexType portNum,
557  U32 key
558  );
559 
560  protected:
561 
562  // ----------------------------------------------------------------------
563  // Command response
564  // ----------------------------------------------------------------------
565 
567  void cmdResponse_out(
568  FwOpcodeType opCode,
569  U32 cmdSeq,
570  Fw::CmdResponse response
571  );
572 
573  protected:
574 
575  // ----------------------------------------------------------------------
576  // Command handlers to implement
577  // ----------------------------------------------------------------------
578 
582  virtual void CreateDirectory_cmdHandler(
583  FwOpcodeType opCode,
584  U32 cmdSeq,
585  const Fw::CmdStringArg& dirName
586  ) = 0;
587 
591  virtual void MoveFile_cmdHandler(
592  FwOpcodeType opCode,
593  U32 cmdSeq,
594  const Fw::CmdStringArg& sourceFileName,
595  const Fw::CmdStringArg& destFileName
596  ) = 0;
597 
601  virtual void RemoveDirectory_cmdHandler(
602  FwOpcodeType opCode,
603  U32 cmdSeq,
604  const Fw::CmdStringArg& dirName
605  ) = 0;
606 
610  virtual void RemoveFile_cmdHandler(
611  FwOpcodeType opCode,
612  U32 cmdSeq,
613  const Fw::CmdStringArg& fileName,
614  bool ignoreErrors
615  ) = 0;
616 
620  virtual void ShellCommand_cmdHandler(
621  FwOpcodeType opCode,
622  U32 cmdSeq,
623  const Fw::CmdStringArg& command,
624  const Fw::CmdStringArg& logFileName
625  ) = 0;
626 
630  virtual void AppendFile_cmdHandler(
631  FwOpcodeType opCode,
632  U32 cmdSeq,
633  const Fw::CmdStringArg& source,
634  const Fw::CmdStringArg& target
635  ) = 0;
636 
638  virtual void FileSize_cmdHandler(
639  FwOpcodeType opCode,
640  U32 cmdSeq,
641  const Fw::CmdStringArg& fileName
642  ) = 0;
643 
647  virtual void ListDirectory_cmdHandler(
648  FwOpcodeType opCode,
649  U32 cmdSeq,
650  const Fw::CmdStringArg& dirName
651  ) = 0;
652 
653  protected:
654 
655  // ----------------------------------------------------------------------
656  // Command handler base-class functions
657  //
658  // Call these functions directly to bypass the command input port
659  // ----------------------------------------------------------------------
660 
665  FwOpcodeType opCode,
666  U32 cmdSeq,
667  Fw::CmdArgBuffer& args
668  );
669 
674  FwOpcodeType opCode,
675  U32 cmdSeq,
676  Fw::CmdArgBuffer& args
677  );
678 
683  FwOpcodeType opCode,
684  U32 cmdSeq,
685  Fw::CmdArgBuffer& args
686  );
687 
692  FwOpcodeType opCode,
693  U32 cmdSeq,
694  Fw::CmdArgBuffer& args
695  );
696 
701  FwOpcodeType opCode,
702  U32 cmdSeq,
703  Fw::CmdArgBuffer& args
704  );
705 
710  FwOpcodeType opCode,
711  U32 cmdSeq,
712  Fw::CmdArgBuffer& args
713  );
714 
717  FwOpcodeType opCode,
718  U32 cmdSeq,
719  Fw::CmdArgBuffer& args
720  );
721 
726  FwOpcodeType opCode,
727  U32 cmdSeq,
728  Fw::CmdArgBuffer& args
729  );
730 
731  protected:
732 
733  // ----------------------------------------------------------------------
734  // Pre-message hooks for async commands
735  //
736  // Each of these functions is invoked just before processing the
737  // corresponding command. By default they do nothing. You can
738  // override them to provide specific pre-command behavior.
739  // ----------------------------------------------------------------------
740 
742  virtual void CreateDirectory_preMsgHook(
743  FwOpcodeType opCode,
744  U32 cmdSeq
745  );
746 
748  virtual void MoveFile_preMsgHook(
749  FwOpcodeType opCode,
750  U32 cmdSeq
751  );
752 
754  virtual void RemoveDirectory_preMsgHook(
755  FwOpcodeType opCode,
756  U32 cmdSeq
757  );
758 
760  virtual void RemoveFile_preMsgHook(
761  FwOpcodeType opCode,
762  U32 cmdSeq
763  );
764 
766  virtual void ShellCommand_preMsgHook(
767  FwOpcodeType opCode,
768  U32 cmdSeq
769  );
770 
772  virtual void AppendFile_preMsgHook(
773  FwOpcodeType opCode,
774  U32 cmdSeq
775  );
776 
778  virtual void FileSize_preMsgHook(
779  FwOpcodeType opCode,
780  U32 cmdSeq
781  );
782 
784  virtual void ListDirectory_preMsgHook(
785  FwOpcodeType opCode,
786  U32 cmdSeq
787  );
788 
789  protected:
790 
791  // ----------------------------------------------------------------------
792  // Event logging functions
793  // ----------------------------------------------------------------------
794 
799  const Fw::StringBase& dirName,
800  U32 status
801  ) const;
802 
807  const Fw::StringBase& dirName,
808  U32 status
809  ) const;
810 
815  const Fw::StringBase& sourceFileName,
816  const Fw::StringBase& destFileName,
817  U32 status
818  ) const;
819 
824  const Fw::StringBase& fileName,
825  U32 status
826  ) const;
827 
832  const Fw::StringBase& command,
833  U32 status
834  ) const;
835 
840  const Fw::StringBase& source,
841  const Fw::StringBase& target,
842  U32 status
843  ) const;
844 
849  const Fw::StringBase& source,
850  const Fw::StringBase& target
851  ) const;
852 
857  const Fw::StringBase& command
858  ) const;
859 
864  const Fw::StringBase& dirName
865  ) const;
866 
871  const Fw::StringBase& dirName
872  ) const;
873 
878  const Fw::StringBase& sourceFileName,
879  const Fw::StringBase& destFileName
880  ) const;
881 
886  const Fw::StringBase& fileName
887  ) const;
888 
893  const Fw::StringBase& source,
894  const Fw::StringBase& target
895  ) const;
896 
901  const Fw::StringBase& command
902  ) const;
903 
908  const Fw::StringBase& dirName
909  ) const;
910 
915  const Fw::StringBase& dirName
916  ) const;
917 
922  const Fw::StringBase& sourceFileName,
923  const Fw::StringBase& destFileName
924  ) const;
925 
930  const Fw::StringBase& fileName
931  ) const;
932 
937  const Fw::StringBase& fileName,
938  FwSizeType size
939  ) const;
940 
945  const Fw::StringBase& fileName,
946  U32 status
947  ) const;
948 
953  const Fw::StringBase& fileName
954  ) const;
955 
960  const Fw::StringBase& dirName
961  ) const;
962 
967  const Fw::StringBase& dirName,
968  U32 fileCount
969  ) const;
970 
975  const Fw::StringBase& dirName,
976  U32 status
977  ) const;
978 
983  const Fw::StringBase& dirName,
984  const Fw::StringBase& fileName,
985  FwSizeType fileSize
986  ) const;
987 
992  const Fw::StringBase& dirName,
993  const Fw::StringBase& subdirName
994  ) const;
995 
996  protected:
997 
998  // ----------------------------------------------------------------------
999  // Telemetry write functions
1000  // ----------------------------------------------------------------------
1001 
1006  U32 arg,
1007  Fw::Time _tlmTime = Fw::Time()
1008  ) const;
1009 
1013  void tlmWrite_Errors(
1014  U32 arg,
1015  Fw::Time _tlmTime = Fw::Time()
1016  ) const;
1017 
1018  protected:
1019 
1020  // ----------------------------------------------------------------------
1021  // Time
1022  // ----------------------------------------------------------------------
1023 
1027  Fw::Time getTime() const;
1028 
1029  private:
1030 
1031  // ----------------------------------------------------------------------
1032  // Message dispatch functions
1033  // ----------------------------------------------------------------------
1034 
1036  virtual MsgDispatchStatus doDispatch();
1037 
1038  private:
1039 
1040  // ----------------------------------------------------------------------
1041  // Calls for messages received on special input ports
1042  // ----------------------------------------------------------------------
1043 
1045  static void m_p_cmdIn_in(
1046  Fw::PassiveComponentBase* callComp,
1047  FwIndexType portNum,
1048  FwOpcodeType opCode,
1049  U32 cmdSeq,
1050  Fw::CmdArgBuffer& args
1051  );
1052 
1053  private:
1054 
1055  // ----------------------------------------------------------------------
1056  // Calls for messages received on typed input ports
1057  // ----------------------------------------------------------------------
1058 
1060  static void m_p_pingIn_in(
1061  Fw::PassiveComponentBase* callComp,
1062  FwIndexType portNum,
1063  U32 key
1064  );
1065 
1067  static void m_p_schedIn_in(
1068  Fw::PassiveComponentBase* callComp,
1069  FwIndexType portNum,
1070  U32 context
1071  );
1072 
1073  private:
1074 
1075  // ----------------------------------------------------------------------
1076  // Special input ports
1077  // ----------------------------------------------------------------------
1078 
1080  Fw::InputCmdPort m_cmdIn_InputPort[NUM_CMDIN_INPUT_PORTS];
1081 
1082  private:
1083 
1084  // ----------------------------------------------------------------------
1085  // Typed input ports
1086  // ----------------------------------------------------------------------
1087 
1089  Svc::InputPingPort m_pingIn_InputPort[NUM_PINGIN_INPUT_PORTS];
1090 
1092  Svc::InputSchedPort m_schedIn_InputPort[NUM_SCHEDIN_INPUT_PORTS];
1093 
1094  private:
1095 
1096  // ----------------------------------------------------------------------
1097  // Special output ports
1098  // ----------------------------------------------------------------------
1099 
1100 #if FW_ENABLE_TEXT_LOGGING == 1
1101 
1103  Fw::OutputLogTextPort m_LogText_OutputPort[NUM_LOGTEXT_OUTPUT_PORTS];
1104 
1105 #endif
1106 
1108  Fw::OutputCmdRegPort m_cmdRegOut_OutputPort[NUM_CMDREGOUT_OUTPUT_PORTS];
1109 
1111  Fw::OutputCmdResponsePort m_cmdResponseOut_OutputPort[NUM_CMDRESPONSEOUT_OUTPUT_PORTS];
1112 
1114  Fw::OutputLogPort m_eventOut_OutputPort[NUM_EVENTOUT_OUTPUT_PORTS];
1115 
1117  Fw::OutputTimePort m_timeCaller_OutputPort[NUM_TIMECALLER_OUTPUT_PORTS];
1118 
1120  Fw::OutputTlmPort m_tlmOut_OutputPort[NUM_TLMOUT_OUTPUT_PORTS];
1121 
1122  private:
1123 
1124  // ----------------------------------------------------------------------
1125  // Typed output ports
1126  // ----------------------------------------------------------------------
1127 
1129  Svc::OutputPingPort m_pingOut_OutputPort[NUM_PINGOUT_OUTPUT_PORTS];
1130 
1131  };
1132 
1133 }
1134 
1135 #endif
void set_eventOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to eventOut[portNum].
The File System component returned status non-zero when trying to append 2 files together.
void log_WARNING_HI_ListDirectoryError(const Fw::StringBase &dirName, U32 status) const
void AppendFile_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void log_ACTIVITY_HI_DirectoryListingSubdir(const Fw::StringBase &dirName, const Fw::StringBase &subdirName) const
void log_ACTIVITY_HI_CreateDirectoryStarted(const Fw::StringBase &dirName) const
FwIdType FwOpcodeType
The type of a command opcode.
virtual void ListDirectory_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command ListDirectory.
void log_ACTIVITY_HI_RemoveDirectorySucceeded(const Fw::StringBase &dirName) const
void log_ACTIVITY_HI_DirectoryListing(const Fw::StringBase &dirName, const Fw::StringBase &fileName, FwSizeType fileSize) const
virtual void MoveFile_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &sourceFileName, const Fw::CmdStringArg &destFileName)=0
PlatformSizeType FwSizeType
virtual void MoveFile_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command MoveFile.
virtual void ShellCommand_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command ShellCommand.
I32 FwEnumStoreType
void log_WARNING_HI_FileSizeError(const Fw::StringBase &fileName, U32 status) const
static constexpr FwIndexType getNum_tlmOut_OutputPorts()
virtual void pingIn_handler(FwIndexType portNum, U32 key)=0
Handler for input port pingIn.
void FileSize_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Base-class handler function for command FileSize.
void log_ACTIVITY_HI_FileSizeSucceeded(const Fw::StringBase &fileName, FwSizeType size) const
virtual void RemoveFile_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &fileName, bool ignoreErrors)=0
void log_ACTIVITY_HI_ListDirectorySucceeded(const Fw::StringBase &dirName, U32 fileCount) const
Auto-generated base for FileManager component.
void ShellCommand_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
The File System component appended 2 files without error.
static constexpr FwIndexType getNum_timeCaller_OutputPorts()
void log_ACTIVITY_HI_ListDirectoryStarted(const Fw::StringBase &dirName) const
static constexpr FwIndexType getNum_pingOut_OutputPorts()
void pingOut_out(FwIndexType portNum, U32 key)
Invoke output port pingOut.
Enum representing a command response.
virtual void RemoveFile_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command RemoveFile.
bool isConnected_cmdRegOut_OutputPort(FwIndexType portNum)
virtual void schedIn_handler(FwIndexType portNum, U32 context)=0
Handler for input port schedIn.
void log_ACTIVITY_HI_MoveFileStarted(const Fw::StringBase &sourceFileName, const Fw::StringBase &destFileName) const
The File System component created a new directory without error.
static constexpr FwIndexType getNum_eventOut_OutputPorts()
Svc::InputPingPort * get_pingIn_InputPort(FwIndexType portNum)
bool isConnected_timeCaller_OutputPort(FwIndexType portNum)
An error occurred while attempting to move a file.
void log_ACTIVITY_HI_AppendFileSucceeded(const Fw::StringBase &source, const Fw::StringBase &target) const
FileManagerComponentBase(const char *compName="")
Construct FileManagerComponentBase object.
void ListDirectory_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void init()
Object initializer.
Definition: ObjBase.cpp:24
bool isConnected_pingOut_OutputPort(FwIndexType portNum)
void log_ACTIVITY_HI_CreateDirectorySucceeded(const Fw::StringBase &dirName) const
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
An error occurred while attempting to remove a file.
void set_pingOut_OutputPort(FwIndexType portNum, Svc::InputPingPort *port)
Connect port to pingOut[portNum].
The File System component began deleting a directory.
The File System component executed a shell command that returned status zero.
virtual void CreateDirectory_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &dirName)=0
virtual void ListDirectory_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &dirName)=0
void RemoveFile_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
friend class FileManagerTester
Friend class tester implementation to support white-box testing.
void log_ACTIVITY_HI_RemoveDirectoryStarted(const Fw::StringBase &dirName) const
Fw::InputCmdPort * get_cmdIn_InputPort(FwIndexType portNum)
void log_ACTIVITY_HI_ShellCommandSucceeded(const Fw::StringBase &command) const
void RemoveDirectory_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
The File System component began executing a shell command.
The File System component began deleting an existing file.
static constexpr FwIndexType getNum_schedIn_InputPorts()
virtual void schedIn_preMsgHook(FwIndexType portNum, U32 context)
Pre-message hook for async input port schedIn.
The File System component deleted an existing file without error.
virtual void FileSize_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command FileSize.
virtual void ShellCommand_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &command, const Fw::CmdStringArg &logFileName)=0
virtual void CreateDirectory_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CreateDirectory.
Svc::InputSchedPort * get_schedIn_InputPort(FwIndexType portNum)
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
bool isConnected_eventOut_OutputPort(FwIndexType portNum)
void log_ACTIVITY_HI_FileSizeStarted(const Fw::StringBase &fileName) const
virtual ~FileManagerComponentBase()
Destroy FileManagerComponentBase object.
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts()
The File System component appended 2 files without error.
void MoveFile_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
The File System component moved a file to a new location without error.
An error occurred while attempting to remove a directory.
void schedIn_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port schedIn.
virtual void FileSize_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &fileName)=0
Handler for command FileSize.
void log_ACTIVITY_HI_MoveFileSucceeded(const Fw::StringBase &sourceFileName, const Fw::StringBase &destFileName) const
void log_WARNING_HI_DirectoryRemoveError(const Fw::StringBase &dirName, U32 status) const
void pingIn_handlerBase(FwIndexType portNum, U32 key)
Handler base-class function for input port pingIn.
void log_ACTIVITY_HI_AppendFileStarted(const Fw::StringBase &source, const Fw::StringBase &target) const
void tlmWrite_Errors(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
void log_ACTIVITY_HI_RemoveFileStarted(const Fw::StringBase &fileName) const
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
void set_cmdRegOut_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegOut[portNum].
void log_ACTIVITY_HI_ShellCommandStarted(const Fw::StringBase &command) const
PlatformIndexType FwIndexType
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
The File System component began creating a new directory.
static constexpr FwIndexType getNum_pingIn_InputPorts()
void log_WARNING_HI_AppendFileFailed(const Fw::StringBase &source, const Fw::StringBase &target, U32 status) const
void regCommands()
Register commands with the Command Dispatcher.
An error occurred while attempting to create a directory.
static constexpr FwIndexType getNum_cmdIn_InputPorts()
RateGroupDivider component implementation.
virtual void pingIn_preMsgHook(FwIndexType portNum, U32 key)
Pre-message hook for async input port pingIn.
virtual void AppendFile_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command AppendFile.
virtual void RemoveDirectory_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command RemoveDirectory.
void log_WARNING_HI_ShellCommandFailed(const Fw::StringBase &command, U32 status) const
The File System component began moving a file to a new location.
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum)
void log_WARNING_HI_DirectoryCreateError(const Fw::StringBase &dirName, U32 status) const
Append 1 file&#39;s contents to the end of another.
void log_ACTIVITY_HI_RemoveFileSucceeded(const Fw::StringBase &fileName) const
void log_WARNING_HI_FileMoveError(const Fw::StringBase &sourceFileName, const Fw::StringBase &destFileName, U32 status) const
void tlmWrite_CommandsExecuted(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
void CreateDirectory_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
virtual void RemoveDirectory_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &dirName)=0
bool isConnected_tlmOut_OutputPort(FwIndexType portNum)
Perform a Linux shell command and write the output to a log file.
void log_WARNING_HI_FileRemoveError(const Fw::StringBase &fileName, U32 status) const
friend class FileManagerTesterBase
Friend class tester to support autocoded test harness.
The File System component deleted and existing directory without error.
static constexpr FwIndexType getNum_cmdRegOut_OutputPorts()
The File System component executed a shell command that returned status non-zero. ...
virtual void AppendFile_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &source, const Fw::CmdStringArg &target)=0