mbed library sources. Supersedes mbed-src.

Dependents:   Nucleo_Hello_Encoder BLE_iBeaconScan AM1805_DEMO DISCO-F429ZI_ExportTemplate1 ... more

Committer:
AnnaBridge
Date:
Wed Feb 20 22:31:08 2019 +0000
Revision:
189:f392fc9709a3
Parent:
178:79309dc6340a
mbed library release version 165

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 189:f392fc9709a3 3 * SPDX-License-Identifier: Apache-2.0
AnnaBridge 167:e84263d55307 4 *
AnnaBridge 167:e84263d55307 5 * Licensed under the Apache License, Version 2.0 (the "License");
AnnaBridge 167:e84263d55307 6 * you may not use this file except in compliance with the License.
AnnaBridge 167:e84263d55307 7 * You may obtain a copy of the License at
AnnaBridge 167:e84263d55307 8 *
AnnaBridge 167:e84263d55307 9 * http://www.apache.org/licenses/LICENSE-2.0
AnnaBridge 167:e84263d55307 10 *
AnnaBridge 167:e84263d55307 11 * Unless required by applicable law or agreed to in writing, software
AnnaBridge 167:e84263d55307 12 * distributed under the License is distributed on an "AS IS" BASIS,
AnnaBridge 167:e84263d55307 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
AnnaBridge 167:e84263d55307 14 * See the License for the specific language governing permissions and
AnnaBridge 167:e84263d55307 15 * limitations under the License.
AnnaBridge 167:e84263d55307 16 */
AnnaBridge 167:e84263d55307 17 #ifndef MBED_FILELIKE_H
AnnaBridge 167:e84263d55307 18 #define MBED_FILELIKE_H
AnnaBridge 167:e84263d55307 19
AnnaBridge 167:e84263d55307 20 #include "platform/mbed_toolchain.h"
AnnaBridge 167:e84263d55307 21 #include "platform/FileBase.h"
AnnaBridge 167:e84263d55307 22 #include "platform/FileHandle.h"
AnnaBridge 168:9672193075cf 23 #include "platform/NonCopyable.h"
AnnaBridge 167:e84263d55307 24
AnnaBridge 167:e84263d55307 25 namespace mbed {
AnnaBridge 167:e84263d55307 26 /** \addtogroup platform */
AnnaBridge 178:79309dc6340a 27 /** @{*/
AnnaBridge 178:79309dc6340a 28 /**
AnnaBridge 178:79309dc6340a 29 * \defgroup platform_FileLike FileLike class
AnnaBridge 178:79309dc6340a 30 * @{
AnnaBridge 178:79309dc6340a 31 */
AnnaBridge 178:79309dc6340a 32 /** Class FileLike
AnnaBridge 178:79309dc6340a 33 *
AnnaBridge 167:e84263d55307 34 * A file-like object is one that can be opened with fopen by
AnnaBridge 167:e84263d55307 35 * fopen("/name", mode).
AnnaBridge 167:e84263d55307 36 *
AnnaBridge 167:e84263d55307 37 * @note Synchronization level: Set by subclass
AnnaBridge 167:e84263d55307 38 */
AnnaBridge 168:9672193075cf 39 class FileLike : public FileHandle, public FileBase, private NonCopyable<FileLike> {
AnnaBridge 167:e84263d55307 40 public:
AnnaBridge 167:e84263d55307 41 /** Constructor FileLike
AnnaBridge 167:e84263d55307 42 *
AnnaBridge 167:e84263d55307 43 * @param name The name to use to open the file.
AnnaBridge 167:e84263d55307 44 */
AnnaBridge 167:e84263d55307 45 FileLike(const char *name = NULL) : FileBase(name, FilePathType) {}
AnnaBridge 167:e84263d55307 46 virtual ~FileLike() {}
AnnaBridge 167:e84263d55307 47 };
AnnaBridge 167:e84263d55307 48
AnnaBridge 178:79309dc6340a 49 /**@}*/
AnnaBridge 178:79309dc6340a 50
AnnaBridge 178:79309dc6340a 51 /**@}*/
AnnaBridge 167:e84263d55307 52
AnnaBridge 167:e84263d55307 53 } // namespace mbed
AnnaBridge 167:e84263d55307 54
AnnaBridge 167:e84263d55307 55 #endif