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
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
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