mbed library sources. Supersedes mbed-src.

Fork of mbed-dev by mbed official

Committer:
pmcorreia
Date:
Tue Oct 09 14:42:37 2018 +0000
Revision:
187:fa51feb62426
Parent:
178:79309dc6340a
Updated version to work with F446RE

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 167:e84263d55307 1 /* mbed Microcontroller Library
AnnaBridge 167:e84263d55307 2 * Copyright (c) 2006-2013 ARM Limited
AnnaBridge 167:e84263d55307 3 *
AnnaBridge 167:e84263d55307 4 * Licensed under the Apache License, Version 2.0 (the "License");
AnnaBridge 167:e84263d55307 5 * you may not use this file except in compliance with the License.
AnnaBridge 167:e84263d55307 6 * You may obtain a copy of the License at
AnnaBridge 167:e84263d55307 7 *
AnnaBridge 167:e84263d55307 8 * http://www.apache.org/licenses/LICENSE-2.0
AnnaBridge 167:e84263d55307 9 *
AnnaBridge 167:e84263d55307 10 * Unless required by applicable law or agreed to in writing, software
AnnaBridge 167:e84263d55307 11 * distributed under the License is distributed on an "AS IS" BASIS,
AnnaBridge 167:e84263d55307 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
AnnaBridge 167:e84263d55307 13 * See the License for the specific language governing permissions and
AnnaBridge 167:e84263d55307 14 * limitations under the License.
AnnaBridge 167:e84263d55307 15 */
AnnaBridge 167:e84263d55307 16 #ifndef MBED_FILEPATH_H
AnnaBridge 167:e84263d55307 17 #define MBED_FILEPATH_H
AnnaBridge 167:e84263d55307 18
AnnaBridge 167:e84263d55307 19 #include "platform/platform.h"
AnnaBridge 167:e84263d55307 20
AnnaBridge 167:e84263d55307 21 #include "platform/FileSystemLike.h"
AnnaBridge 167:e84263d55307 22 #include "platform/FileLike.h"
AnnaBridge 167:e84263d55307 23
AnnaBridge 167:e84263d55307 24 namespace mbed {
AnnaBridge 167:e84263d55307 25 /** \addtogroup platform */
AnnaBridge 178:79309dc6340a 26 /** @{*/
AnnaBridge 167:e84263d55307 27 /**
AnnaBridge 178:79309dc6340a 28 * \defgroup platform_FilePath FilePath class
AnnaBridge 178:79309dc6340a 29 * @{
AnnaBridge 167:e84263d55307 30 */
AnnaBridge 178:79309dc6340a 31
AnnaBridge 167:e84263d55307 32 class FileSystem;
AnnaBridge 178:79309dc6340a 33 /** Class FilePath
AnnaBridge 178:79309dc6340a 34 *
AnnaBridge 178:79309dc6340a 35 */
AnnaBridge 178:79309dc6340a 36
AnnaBridge 167:e84263d55307 37 class FilePath {
AnnaBridge 167:e84263d55307 38 public:
AnnaBridge 178:79309dc6340a 39 /** Constructor FilePath
AnnaBridge 178:79309dc6340a 40 *
AnnaBridge 178:79309dc6340a 41 * @param file_path The path of file.
AnnaBridge 178:79309dc6340a 42 */
AnnaBridge 167:e84263d55307 43 FilePath(const char* file_path);
AnnaBridge 167:e84263d55307 44
AnnaBridge 167:e84263d55307 45 const char* fileName(void);
AnnaBridge 167:e84263d55307 46
AnnaBridge 167:e84263d55307 47 bool isFileSystem(void);
AnnaBridge 167:e84263d55307 48 FileSystemLike* fileSystem(void);
AnnaBridge 167:e84263d55307 49
AnnaBridge 167:e84263d55307 50 bool isFile(void);
AnnaBridge 167:e84263d55307 51 FileLike* file(void);
AnnaBridge 167:e84263d55307 52 bool exists(void);
AnnaBridge 167:e84263d55307 53
AnnaBridge 167:e84263d55307 54 private:
AnnaBridge 167:e84263d55307 55 const char* file_name;
AnnaBridge 167:e84263d55307 56 FileBase* fb;
AnnaBridge 167:e84263d55307 57 };
AnnaBridge 167:e84263d55307 58
AnnaBridge 178:79309dc6340a 59 /**@}*/
AnnaBridge 178:79309dc6340a 60
AnnaBridge 178:79309dc6340a 61 /**@}*/
AnnaBridge 178:79309dc6340a 62
AnnaBridge 167:e84263d55307 63 } // namespace mbed
AnnaBridge 167:e84263d55307 64
AnnaBridge 167:e84263d55307 65 #endif