mbed(SerialHalfDuplex入り)

Fork of mbed by mbed official

Committer:
emilmont
Date:
Tue Jan 08 12:46:36 2013 +0000
Revision:
54:71b101360fb9
Child:
55:d722ed6a4237
Support "stream as file" use case
Unify binary libraries
Update copyright

Who changed what in which revision?

UserRevisionLine numberNew contents of line
emilmont 54:71b101360fb9 1 /* mbed Microcontroller Library
emilmont 54:71b101360fb9 2 * Copyright (c) 2006-2013 ARM Limited
emilmont 54:71b101360fb9 3 *
emilmont 54:71b101360fb9 4 * Permission is hereby granted, free of charge, to any person obtaining a copy
emilmont 54:71b101360fb9 5 * of this software and associated documentation files (the "Software"), to deal
emilmont 54:71b101360fb9 6 * in the Software without restriction, including without limitation the rights
emilmont 54:71b101360fb9 7 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
emilmont 54:71b101360fb9 8 * copies of the Software, and to permit persons to whom the Software is
emilmont 54:71b101360fb9 9 * furnished to do so, subject to the following conditions:
emilmont 54:71b101360fb9 10 *
emilmont 54:71b101360fb9 11 * The above copyright notice and this permission notice shall be included in
emilmont 54:71b101360fb9 12 * all copies or substantial portions of the Software.
emilmont 54:71b101360fb9 13 *
emilmont 54:71b101360fb9 14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
emilmont 54:71b101360fb9 15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
emilmont 54:71b101360fb9 16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
emilmont 54:71b101360fb9 17 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
emilmont 54:71b101360fb9 18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
emilmont 54:71b101360fb9 19 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
emilmont 54:71b101360fb9 20 * SOFTWARE.
emilmont 54:71b101360fb9 21 */
emilmont 54:71b101360fb9 22 #ifndef MBED_FILEPATH_H
emilmont 54:71b101360fb9 23 #define MBED_FILEPATH_H
emilmont 54:71b101360fb9 24
emilmont 54:71b101360fb9 25 #include "platform.h"
emilmont 54:71b101360fb9 26
emilmont 54:71b101360fb9 27 #include "FileSystemLike.h"
emilmont 54:71b101360fb9 28 #include "FileLike.h"
emilmont 54:71b101360fb9 29
emilmont 54:71b101360fb9 30 namespace mbed {
emilmont 54:71b101360fb9 31
emilmont 54:71b101360fb9 32 class FilePath {
emilmont 54:71b101360fb9 33 public:
emilmont 54:71b101360fb9 34 FilePath(const char* file_path);
emilmont 54:71b101360fb9 35
emilmont 54:71b101360fb9 36 const char* fileName(void);
emilmont 54:71b101360fb9 37
emilmont 54:71b101360fb9 38 bool isFileSystem(void);
emilmont 54:71b101360fb9 39 FileSystemLike* fileSystem(void);
emilmont 54:71b101360fb9 40
emilmont 54:71b101360fb9 41 bool isFile(void);
emilmont 54:71b101360fb9 42 FileLike* file(void);
emilmont 54:71b101360fb9 43
emilmont 54:71b101360fb9 44 private:
emilmont 54:71b101360fb9 45 const char* file_name;
emilmont 54:71b101360fb9 46 FileBase* fb;
emilmont 54:71b101360fb9 47 };
emilmont 54:71b101360fb9 48
emilmont 54:71b101360fb9 49 } // namespace mbed
emilmont 54:71b101360fb9 50
emilmont 54:71b101360fb9 51 #endif