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 #include "Fw/Log/LogTextPortAc.hpp"
21 #if !FW_DIRECT_PORT_CALLS
23 #endif
24 #if !FW_DIRECT_PORT_CALLS
26 #endif
27 #include "Fw/Time/TimePortAc.hpp"
28 #include "Fw/Tlm/TlmPortAc.hpp"
29 #include "Fw/Tlm/TlmString.hpp"
31 #include "Svc/Ping/PingPortAc.hpp"
35 
36 namespace Svc {
37 
44  {
45 
46  // ----------------------------------------------------------------------
47  // Friend classes
48  // ----------------------------------------------------------------------
49 
51  friend class FileManagerTesterBase;
53  friend class FileManagerTester;
54 
55  protected:
56 
57  // ----------------------------------------------------------------------
58  // Constants
59  // ----------------------------------------------------------------------
60 
62  enum {
64  };
65 
67  enum {
70  };
71 
73  enum {
80  };
81 
83  enum {
85  };
86 
88  enum {
97  };
98 
100  enum {
127  };
128 
130  enum {
133  };
134 
135  public:
136 
137  // ----------------------------------------------------------------------
138  // Component initialization
139  // ----------------------------------------------------------------------
140 
142  void init(
143  FwSizeType queueDepth,
144  FwEnumStoreType instance = 0
145  );
146 
147 #if !FW_DIRECT_PORT_CALLS
148 
149  public:
150 
151  // ----------------------------------------------------------------------
152  // Getters for special input ports
153  // ----------------------------------------------------------------------
154 
159  FwIndexType portNum
160  );
161 
162 #endif
163 
164 #if !FW_DIRECT_PORT_CALLS
165 
166  public:
167 
168  // ----------------------------------------------------------------------
169  // Getters for typed input ports
170  // ----------------------------------------------------------------------
171 
176  FwIndexType portNum
177  );
178 
183  FwIndexType portNum
184  );
185 
186 #endif
187 
188 #if !FW_DIRECT_PORT_CALLS
189 
190  public:
191 
192  // ----------------------------------------------------------------------
193  // Connect input ports to special output ports
194  // ----------------------------------------------------------------------
195 
196 #if FW_ENABLE_TEXT_LOGGING == 1
197 
199  void set_LogText_OutputPort(
200  FwIndexType portNum,
201  Fw::InputLogTextPort* port
202  );
203 
204 #endif
205 
208  FwIndexType portNum,
209  Fw::InputCmdRegPort* port
210  );
211 
214  FwIndexType portNum,
216  );
217 
220  FwIndexType portNum,
221  Fw::InputLogPort* port
222  );
223 
226  FwIndexType portNum,
227  Fw::InputTimePort* port
228  );
229 
232  FwIndexType portNum,
233  Fw::InputTlmPort* port
234  );
235 
236 #endif
237 
238 #if !FW_DIRECT_PORT_CALLS
239 
240  public:
241 
242  // ----------------------------------------------------------------------
243  // Connect typed input ports to typed output ports
244  // ----------------------------------------------------------------------
245 
248  FwIndexType portNum,
249  Svc::InputPingPort* port
250  );
251 
252 #endif
253 
254 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION
255 
256  public:
257 
258  // ----------------------------------------------------------------------
259  // Connect serial input ports to special output ports
260  // ----------------------------------------------------------------------
261 
262 #if FW_ENABLE_TEXT_LOGGING == 1
263 
265  void set_LogText_OutputPort(
266  FwIndexType portNum,
267  Fw::InputSerializePort* port
268  );
269 
270 #endif
271 
274  FwIndexType portNum,
275  Fw::InputSerializePort* port
276  );
277 
280  FwIndexType portNum,
281  Fw::InputSerializePort* port
282  );
283 
286  FwIndexType portNum,
287  Fw::InputSerializePort* port
288  );
289 
292  FwIndexType portNum,
293  Fw::InputSerializePort* port
294  );
295 
298  FwIndexType portNum,
299  Fw::InputSerializePort* port
300  );
301 
302 #endif
303 
304 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION
305 
306  public:
307 
308  // ----------------------------------------------------------------------
309  // Connect serial input ports to typed output ports
310  // ----------------------------------------------------------------------
311 
314  FwIndexType portNum,
315  Fw::InputSerializePort* port
316  );
317 
318 #endif
319 
320  public:
321 
322  // ----------------------------------------------------------------------
323  // Command registration
324  // ----------------------------------------------------------------------
325 
329  void regCommands();
330 
331  protected:
332 
333  // ----------------------------------------------------------------------
334  // Component construction and destruction
335  // ----------------------------------------------------------------------
336 
339  const char* compName = ""
340  );
341 
343  virtual ~FileManagerComponentBase();
344 
345  protected:
346 
347  // ----------------------------------------------------------------------
348  // Getters for numbers of special input ports
349  // ----------------------------------------------------------------------
350 
355  return NUM_CMDIN_INPUT_PORTS;
356  }
357 
358  protected:
359 
360  // ----------------------------------------------------------------------
361  // Getters for numbers of typed input ports
362  // ----------------------------------------------------------------------
363 
368  return NUM_PINGIN_INPUT_PORTS;
369  }
370 
376  }
377 
378  protected:
379 
380  // ----------------------------------------------------------------------
381  // Getters for numbers of special output ports
382  // ----------------------------------------------------------------------
383 
384 #if FW_ENABLE_TEXT_LOGGING == 1
385 
389  static constexpr FwIndexType getNum_LogText_OutputPorts() {
391  }
392 
393 #endif
394 
400  }
401 
407  }
408 
414  }
415 
421  }
422 
428  }
429 
430  protected:
431 
432  // ----------------------------------------------------------------------
433  // Getters for numbers of typed output ports
434  // ----------------------------------------------------------------------
435 
441  }
442 
443  protected:
444 
445  // ----------------------------------------------------------------------
446  // Connection status queries for special output ports
447  // ----------------------------------------------------------------------
448 
449 #if FW_ENABLE_TEXT_LOGGING == 1
450 
454  bool isConnected_LogText_OutputPort(
455  FwIndexType portNum
456  ) const;
457 
458 #endif
459 
464  FwIndexType portNum
465  ) const;
466 
471  FwIndexType portNum
472  ) const;
473 
478  FwIndexType portNum
479  ) const;
480 
485  FwIndexType portNum
486  ) const;
487 
492  FwIndexType portNum
493  ) const;
494 
495  protected:
496 
497  // ----------------------------------------------------------------------
498  // Connection status queries for typed output ports
499  // ----------------------------------------------------------------------
500 
505  FwIndexType portNum
506  ) const;
507 
508 #if FW_DIRECT_PORT_CALLS
509  public:
510 #else
511  protected:
512 #endif
513 
514  // ----------------------------------------------------------------------
515  // Port handler base-class functions for special input ports
516  //
517  // Call these functions directly to bypass the corresponding ports
518  // ----------------------------------------------------------------------
519 
521  void cmdIn_handlerBase(
522  FwIndexType portNum,
523  FwOpcodeType opCode,
524  U32 cmdSeq,
525  Fw::CmdArgBuffer& args
526  );
527 
528  protected:
529 
530  // ----------------------------------------------------------------------
531  // Handlers to implement for typed input ports
532  // ----------------------------------------------------------------------
533 
535  virtual void pingIn_handler(
536  FwIndexType portNum,
537  U32 key
538  ) = 0;
539 
541  virtual void schedIn_handler(
542  FwIndexType portNum,
543  U32 context
544  ) = 0;
545 
546 #if FW_DIRECT_PORT_CALLS
547  public:
548 #else
549  protected:
550 #endif
551 
552  // ----------------------------------------------------------------------
553  // Port handler base-class functions for typed input ports
554  //
555  // Call these functions directly to bypass the corresponding ports
556  // ----------------------------------------------------------------------
557 
559  void pingIn_handlerBase(
560  FwIndexType portNum,
561  U32 key
562  );
563 
565  void schedIn_handlerBase(
566  FwIndexType portNum,
567  U32 context
568  );
569 
570  protected:
571 
572  // ----------------------------------------------------------------------
573  // Pre-message hooks for typed async input ports
574  //
575  // Each of these functions is invoked just before processing a message
576  // on the corresponding port. By default, they do nothing. You can
577  // override them to provide specific pre-message behavior.
578  // ----------------------------------------------------------------------
579 
581  virtual void pingIn_preMsgHook(
582  FwIndexType portNum,
583  U32 key
584  );
585 
586  protected:
587 
588  // ----------------------------------------------------------------------
589  // Invocation functions for typed output ports
590  // ----------------------------------------------------------------------
591 
593  void pingOut_out(
594  FwIndexType portNum,
595  U32 key
596  ) const;
597 
598  protected:
599 
600  // ----------------------------------------------------------------------
601  // Internal interface handlers
602  // ----------------------------------------------------------------------
603 
605  virtual void run_internalInterfaceHandler() = 0;
606 
607  protected:
608 
609  // ----------------------------------------------------------------------
610  // Internal interface base-class functions
611  // ----------------------------------------------------------------------
612 
615 
616  protected:
617 
618  // ----------------------------------------------------------------------
619  // Command response
620  // ----------------------------------------------------------------------
621 
623  void cmdResponse_out(
624  FwOpcodeType opCode,
625  U32 cmdSeq,
626  Fw::CmdResponse response
627  );
628 
629  protected:
630 
631  // ----------------------------------------------------------------------
632  // Command handlers to implement
633  // ----------------------------------------------------------------------
634 
638  virtual void CreateDirectory_cmdHandler(
639  FwOpcodeType opCode,
640  U32 cmdSeq,
641  const Fw::CmdStringArg& dirName
642  ) = 0;
643 
647  virtual void MoveFile_cmdHandler(
648  FwOpcodeType opCode,
649  U32 cmdSeq,
650  const Fw::CmdStringArg& sourceFileName,
651  const Fw::CmdStringArg& destFileName
652  ) = 0;
653 
657  virtual void RemoveDirectory_cmdHandler(
658  FwOpcodeType opCode,
659  U32 cmdSeq,
660  const Fw::CmdStringArg& dirName
661  ) = 0;
662 
666  virtual void RemoveFile_cmdHandler(
667  FwOpcodeType opCode,
668  U32 cmdSeq,
669  const Fw::CmdStringArg& fileName,
670  bool ignoreErrors
671  ) = 0;
672 
676  virtual void AppendFile_cmdHandler(
677  FwOpcodeType opCode,
678  U32 cmdSeq,
679  const Fw::CmdStringArg& source,
680  const Fw::CmdStringArg& target
681  ) = 0;
682 
686  virtual void FileSize_cmdHandler(
687  FwOpcodeType opCode,
688  U32 cmdSeq,
689  const Fw::CmdStringArg& fileName
690  ) = 0;
691 
695  virtual void ListDirectory_cmdHandler(
696  FwOpcodeType opCode,
697  U32 cmdSeq,
698  const Fw::CmdStringArg& dirName
699  ) = 0;
700 
704  virtual void CalculateCrc_cmdHandler(
705  FwOpcodeType opCode,
706  U32 cmdSeq,
707  const Fw::CmdStringArg& filename
708  ) = 0;
709 
710  protected:
711 
712  // ----------------------------------------------------------------------
713  // Command handler base-class functions
714  //
715  // Call these functions directly to bypass the command input port
716  // ----------------------------------------------------------------------
717 
722  FwOpcodeType opCode,
723  U32 cmdSeq,
724  Fw::CmdArgBuffer& args
725  );
726 
731  FwOpcodeType opCode,
732  U32 cmdSeq,
733  Fw::CmdArgBuffer& args
734  );
735 
740  FwOpcodeType opCode,
741  U32 cmdSeq,
742  Fw::CmdArgBuffer& args
743  );
744 
749  FwOpcodeType opCode,
750  U32 cmdSeq,
751  Fw::CmdArgBuffer& args
752  );
753 
758  FwOpcodeType opCode,
759  U32 cmdSeq,
760  Fw::CmdArgBuffer& args
761  );
762 
767  FwOpcodeType opCode,
768  U32 cmdSeq,
769  Fw::CmdArgBuffer& args
770  );
771 
776  FwOpcodeType opCode,
777  U32 cmdSeq,
778  Fw::CmdArgBuffer& args
779  );
780 
785  FwOpcodeType opCode,
786  U32 cmdSeq,
787  Fw::CmdArgBuffer& args
788  );
789 
790  protected:
791 
792  // ----------------------------------------------------------------------
793  // Pre-message hooks for async commands
794  //
795  // Each of these functions is invoked just before processing the
796  // corresponding command. By default they do nothing. You can
797  // override them to provide specific pre-command behavior.
798  // ----------------------------------------------------------------------
799 
801  virtual void CreateDirectory_preMsgHook(
802  FwOpcodeType opCode,
803  U32 cmdSeq
804  );
805 
807  virtual void MoveFile_preMsgHook(
808  FwOpcodeType opCode,
809  U32 cmdSeq
810  );
811 
813  virtual void RemoveDirectory_preMsgHook(
814  FwOpcodeType opCode,
815  U32 cmdSeq
816  );
817 
819  virtual void RemoveFile_preMsgHook(
820  FwOpcodeType opCode,
821  U32 cmdSeq
822  );
823 
825  virtual void AppendFile_preMsgHook(
826  FwOpcodeType opCode,
827  U32 cmdSeq
828  );
829 
831  virtual void FileSize_preMsgHook(
832  FwOpcodeType opCode,
833  U32 cmdSeq
834  );
835 
837  virtual void ListDirectory_preMsgHook(
838  FwOpcodeType opCode,
839  U32 cmdSeq
840  );
841 
843  virtual void CalculateCrc_preMsgHook(
844  FwOpcodeType opCode,
845  U32 cmdSeq
846  );
847 
848  protected:
849 
850  // ----------------------------------------------------------------------
851  // Event logging functions
852  // ----------------------------------------------------------------------
853 
858  const Fw::StringBase& dirName,
859  U32 status
860  ) const;
861 
866  const Fw::StringBase& dirName,
867  U32 status
868  ) const;
869 
874  const Fw::StringBase& sourceFileName,
875  const Fw::StringBase& destFileName,
876  U32 status
877  ) const;
878 
883  const Fw::StringBase& fileName,
884  U32 status
885  ) const;
886 
891  const Fw::StringBase& source,
892  const Fw::StringBase& target,
893  U32 status
894  ) const;
895 
900  const Fw::StringBase& source,
901  const Fw::StringBase& target
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& source,
938  const Fw::StringBase& target
939  ) const;
940 
945  const Fw::StringBase& dirName
946  ) const;
947 
952  const Fw::StringBase& dirName
953  ) const;
954 
959  const Fw::StringBase& sourceFileName,
960  const Fw::StringBase& destFileName
961  ) const;
962 
967  const Fw::StringBase& fileName
968  ) const;
969 
974  const Fw::StringBase& fileName,
975  FwSizeType size
976  ) const;
977 
982  const Fw::StringBase& fileName,
983  U32 status
984  ) const;
985 
990  const Fw::StringBase& fileName
991  ) const;
992 
997  const Fw::StringBase& dirName
998  ) const;
999 
1004  const Fw::StringBase& dirName,
1005  U32 fileCount
1006  ) const;
1007 
1012  const Fw::StringBase& dirName,
1013  U32 status
1014  ) const;
1015 
1020  const Fw::StringBase& dirName,
1021  const Fw::StringBase& fileName,
1022  FwSizeType fileSize
1023  ) const;
1024 
1029  const Fw::StringBase& dirName,
1030  const Fw::StringBase& subdirName
1031  ) const;
1032 
1037  const Fw::StringBase& fileName
1038  ) const;
1039 
1044  const Fw::StringBase& fileName,
1045  U32 status
1046  ) const;
1047 
1052  const Fw::StringBase& fileName,
1053  U32 crc
1054  ) const;
1055 
1056  protected:
1057 
1058  // ----------------------------------------------------------------------
1059  // Telemetry serialized write
1060  // ----------------------------------------------------------------------
1061 
1066  void tlmWrite(
1067  FwChanIdType id,
1068  Fw::TlmBuffer& _tlmBuff,
1069  Fw::Time _tlmTime = Fw::Time()
1070  ) const;
1071 
1072  protected:
1073 
1074  // ----------------------------------------------------------------------
1075  // Telemetry write functions
1076  // ----------------------------------------------------------------------
1077 
1082  U32 arg,
1083  Fw::Time _tlmTime = Fw::Time()
1084  ) const;
1085 
1089  void tlmWrite_Errors(
1090  U32 arg,
1091  Fw::Time _tlmTime = Fw::Time()
1092  ) const;
1093 
1094  protected:
1095 
1096  // ----------------------------------------------------------------------
1097  // Time
1098  // ----------------------------------------------------------------------
1099 
1103  Fw::Time getTime() const;
1104 
1105  private:
1106 
1107  // ----------------------------------------------------------------------
1108  // Message dispatch functions
1109  // ----------------------------------------------------------------------
1110 
1112  virtual MsgDispatchStatus doDispatch();
1113 
1114  private:
1115 
1116  // ----------------------------------------------------------------------
1117  // Calls for messages received on special input ports
1118  // ----------------------------------------------------------------------
1119 
1121  static void m_p_cmdIn_in(
1122  Fw::PassiveComponentBase* callComp,
1123  FwIndexType portNum,
1124  FwOpcodeType opCode,
1125  U32 cmdSeq,
1126  Fw::CmdArgBuffer& args
1127  );
1128 
1129  private:
1130 
1131  // ----------------------------------------------------------------------
1132  // Calls for messages received on typed input ports
1133  // ----------------------------------------------------------------------
1134 
1136  static void m_p_pingIn_in(
1137  Fw::PassiveComponentBase* callComp,
1138  FwIndexType portNum,
1139  U32 key
1140  );
1141 
1143  static void m_p_schedIn_in(
1144  Fw::PassiveComponentBase* callComp,
1145  FwIndexType portNum,
1146  U32 context
1147  );
1148 
1149  private:
1150 
1151  // ----------------------------------------------------------------------
1152  // Invocation functions for special output ports
1153  // ----------------------------------------------------------------------
1154 
1155 #if FW_ENABLE_TEXT_LOGGING
1156 
1158  void LogText_out(
1159  FwIndexType portNum,
1160  FwEventIdType id,
1161  Fw::Time& timeTag,
1162  const Fw::LogSeverity& severity,
1163  Fw::TextLogString& text
1164  ) const;
1165 
1166 #endif
1167 
1169  void cmdRegOut_out(
1170  FwIndexType portNum,
1171  FwOpcodeType opCode
1172  ) const;
1173 
1175  void cmdResponseOut_out(
1176  FwIndexType portNum,
1177  FwOpcodeType opCode,
1178  U32 cmdSeq,
1179  const Fw::CmdResponse& response
1180  ) const;
1181 
1183  void eventOut_out(
1184  FwIndexType portNum,
1185  FwEventIdType id,
1186  Fw::Time& timeTag,
1187  const Fw::LogSeverity& severity,
1188  Fw::LogBuffer& args
1189  ) const;
1190 
1192  void timeCaller_out(
1193  FwIndexType portNum,
1194  Fw::Time& time
1195  ) const;
1196 
1198  void tlmOut_out(
1199  FwIndexType portNum,
1200  FwChanIdType id,
1201  Fw::Time& timeTag,
1202  Fw::TlmBuffer& val
1203  ) const;
1204 
1205 #if !FW_DIRECT_PORT_CALLS
1206 
1207  private:
1208 
1209  // ----------------------------------------------------------------------
1210  // Special input ports
1211  // ----------------------------------------------------------------------
1212 
1214  Fw::InputCmdPort m_cmdIn_InputPort[NUM_CMDIN_INPUT_PORTS];
1215 
1216 #endif
1217 
1218 #if !FW_DIRECT_PORT_CALLS
1219 
1220  private:
1221 
1222  // ----------------------------------------------------------------------
1223  // Typed input ports
1224  // ----------------------------------------------------------------------
1225 
1227  Svc::InputPingPort m_pingIn_InputPort[NUM_PINGIN_INPUT_PORTS];
1228 
1230  Svc::InputSchedPort m_schedIn_InputPort[NUM_SCHEDIN_INPUT_PORTS];
1231 
1232 #endif
1233 
1234 #if !FW_DIRECT_PORT_CALLS
1235 
1236  private:
1237 
1238  // ----------------------------------------------------------------------
1239  // Special output ports
1240  // ----------------------------------------------------------------------
1241 
1242 #if FW_ENABLE_TEXT_LOGGING == 1
1243 
1245  Fw::OutputLogTextPort m_LogText_OutputPort[NUM_LOGTEXT_OUTPUT_PORTS];
1246 
1247 #endif
1248 
1250  Fw::OutputCmdRegPort m_cmdRegOut_OutputPort[NUM_CMDREGOUT_OUTPUT_PORTS];
1251 
1253  Fw::OutputCmdResponsePort m_cmdResponseOut_OutputPort[NUM_CMDRESPONSEOUT_OUTPUT_PORTS];
1254 
1256  Fw::OutputLogPort m_eventOut_OutputPort[NUM_EVENTOUT_OUTPUT_PORTS];
1257 
1259  Fw::OutputTimePort m_timeCaller_OutputPort[NUM_TIMECALLER_OUTPUT_PORTS];
1260 
1262  Fw::OutputTlmPort m_tlmOut_OutputPort[NUM_TLMOUT_OUTPUT_PORTS];
1263 
1264 #endif
1265 
1266 #if !FW_DIRECT_PORT_CALLS
1267 
1268  private:
1269 
1270  // ----------------------------------------------------------------------
1271  // Typed output ports
1272  // ----------------------------------------------------------------------
1273 
1275  Svc::OutputPingPort m_pingOut_OutputPort[NUM_PINGOUT_OUTPUT_PORTS];
1276 
1277 #endif
1278 
1279  };
1280 
1281 }
1282 
1283 #endif
void set_eventOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to eventOut[portNum].
virtual void run_internalInterfaceHandler()=0
Internal interface handler for run.
An error occurred while attempting to remove a directory.
void log_WARNING_HI_ListDirectoryError(const Fw::StringBase &dirName, U32 status) const
The File System component began deleting an existing file.
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.
void log_ACTIVITY_HI_CalculateCrcStarted(const Fw::StringBase &fileName) const
I32 FwEnumStoreType
The File System component created a new directory without error.
virtual void CalculateCrc_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &filename)=0
void log_WARNING_HI_FileSizeError(const Fw::StringBase &fileName, U32 status) const
void run_internalInterfaceInvoke()
Internal interface base-class function for run.
The File System component moved a file to a new location without error.
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)
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
void cmdIn_handlerBase(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Handler base-class function for input port cmdIn.
Auto-generated base for FileManager component.
static constexpr FwIndexType getNum_timeCaller_OutputPorts()
void log_ACTIVITY_HI_CalculateCrcSucceeded(const Fw::StringBase &fileName, U32 crc) const
void CalculateCrc_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void log_ACTIVITY_HI_ListDirectoryStarted(const Fw::StringBase &dirName) const
The File System component began moving a file to a new location.
bool isConnected_tlmOut_OutputPort(FwIndexType portNum) const
static constexpr FwIndexType getNum_pingOut_OutputPorts()
Enum representing a command response.
virtual void RemoveFile_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command RemoveFile.
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
bool isConnected_pingOut_OutputPort(FwIndexType portNum) const
static constexpr FwIndexType getNum_eventOut_OutputPorts()
Svc::InputPingPort * get_pingIn_InputPort(FwIndexType portNum)
void pingOut_out(FwIndexType portNum, U32 key) const
Invoke output port pingOut.
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
void log_ACTIVITY_HI_CreateDirectorySucceeded(const Fw::StringBase &dirName) const
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
FwIdType FwEventIdType
The type of an event identifier.
void set_pingOut_OutputPort(FwIndexType portNum, Svc::InputPingPort *port)
Connect port to pingOut[portNum].
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum) const
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 RemoveDirectory_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
The File System component deleted and existing directory without error.
static constexpr FwIndexType getNum_schedIn_InputPorts()
An error occurred while attempting to move a file.
virtual void FileSize_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command FileSize.
FwIdType FwChanIdType
The type of a telemetry channel identifier.
The File System component returned status non-zero when trying to append 2 files together.
virtual void CreateDirectory_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CreateDirectory.
The File System component began creating a new directory.
Svc::InputSchedPort * get_schedIn_InputPort(FwIndexType portNum)
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
bool isConnected_timeCaller_OutputPort(FwIndexType portNum) const
void log_ACTIVITY_HI_FileSizeStarted(const Fw::StringBase &fileName) const
Enum representing event severity.
virtual ~FileManagerComponentBase()
Destroy FileManagerComponentBase object.
void tlmWrite(FwChanIdType id, Fw::TlmBuffer &_tlmBuff, Fw::Time _tlmTime=Fw::Time()) const
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts()
void MoveFile_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
The File System component appended 2 files without error.
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
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
An error occurred while attempting to create a directory.
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
bool isConnected_eventOut_OutputPort(FwIndexType portNum) 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].
bool isConnected_cmdRegOut_OutputPort(FwIndexType portNum) const
PlatformIndexType FwIndexType
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
The File System component appended 2 files without error.
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.
static constexpr FwIndexType getNum_cmdIn_InputPorts()
RateGroupDivider component implementation.
Append 1 file&#39;s contents to the end of another.
virtual void pingIn_preMsgHook(FwIndexType portNum, U32 key)
Pre-message hook for async input port pingIn.
void log_WARNING_HI_CalculateCrcFailed(const Fw::StringBase &fileName, U32 status) const
virtual void AppendFile_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command AppendFile.
The File System component deleted an existing file without error.
An error occurred while attempting to remove a file.
virtual void RemoveDirectory_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command RemoveDirectory.
The File System component began deleting a directory.
void log_WARNING_HI_DirectoryCreateError(const Fw::StringBase &dirName, U32 status) const
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
void log_WARNING_HI_FileRemoveError(const Fw::StringBase &fileName, U32 status) const
friend class FileManagerTesterBase
Friend class tester to support autocoded test harness.
virtual void CalculateCrc_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command CalculateCrc.
static constexpr FwIndexType getNum_cmdRegOut_OutputPorts()
virtual void AppendFile_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &source, const Fw::CmdStringArg &target)=0