F´ Flight Software - C/C++ Documentation NASA-v1.6.0
A framework for building embedded system applications to NASA flight quality standards.
Loading...
Searching...
No Matches
FileSystem.hpp
Go to the documentation of this file.
1#ifndef _FileSystem_hpp_
2#define _FileSystem_hpp_
3
4#include <FpConfig.hpp>
5#include <Fw/Types/String.hpp>
6
7#define FILE_SYSTEM_CHUNK_SIZE (256u)
8
9namespace Os {
10
11 // This namespace encapsulates a very simple file system interface that has the most often-used features.
12 namespace FileSystem {
13
14 typedef enum {
26 } Status;
27
28 Status createDirectory(const char* path);
29 Status removeDirectory(const char* path);
30 Status readDirectory(const char* path, const U32 maxNum, Fw::String fileArray[], U32& numFiles);
31 Status removeFile(const char* path);
32 Status moveFile(const char* originPath, const char* destPath);
33 Status copyFile(const char* originPath, const char* destPath);
34 Status appendFile(const char* originPath, const char* destPath, bool createMissingDest=false);
35 Status getFileSize(const char* path, FwSizeType& size);
36 Status getFileCount(const char* directory, U32& fileCount);
37 Status changeWorkingDirectory(const char* path);
38 Status getFreeSpace(const char* path, FwSizeType& totalBytes, FwSizeType& freeBytes);
39 }
40
41}
42
43#endif
PlatformSizeType FwSizeType
Definition FpConfig.h:18
C++-compatible configuration header for fprime configuration.
Status getFileCount(const char *directory, U32 &fileCount)
counts the number of files in the given directory
Status getFreeSpace(const char *path, FwSizeType &totalBytes, FwSizeType &freeBytes)
get FS free and total space in bytes on filesystem containing path
Status createDirectory(const char *path)
create a new directory at location path
Definition FileSystem.cpp:8
Status moveFile(const char *originPath, const char *destPath)
Status getFileSize(const char *path, FwSizeType &size)
append file origin to destination file. If boolean true, creates a brand new file if the destination ...
Status changeWorkingDirectory(const char *path)
move current directory to path
Status appendFile(const char *originPath, const char *destPath, bool createMissingDest)
copies a file from origin to destination
@ OP_OK
Operation was successful.
@ NOT_DIR
Path is not a directory.
@ ALREADY_EXISTS
File already exists.
@ NO_PERMISSION
No permission to write.
@ IS_DIR
Path is a directory.
@ INVALID_PATH
Path is too long, too many sym links, doesn't exist, ect.
@ FILE_LIMIT
Too many files or links.
@ OTHER_ERROR
other OS-specific error
@ NOT_EMPTY
directory is not empty
@ NO_SPACE
No space left.
@ BUSY
Operand is in use by the system or by a process.
Status copyFile(const char *originPath, const char *destPath)
moves a file from origin to destination
Status removeDirectory(const char *path)
remove a directory at location path
Status readDirectory(const char *path, const U32 maxNum, Fw::String fileArray[])
Status removeFile(const char *path)
removes a file at location path
Definition File.cpp:6