update

Embed: (wiki syntax)

« Back to documentation index

FileLike Class Reference

FileLike Class Reference
[FileLike class]

Class FileLike. More...

#include <FileLike.h>

Inherits mbed::FileHandle, and mbed::FileBase.

Public Member Functions

 FileLike (const char *name=NULL)
 Constructor FileLike.
virtual ssize_t read (void *buffer, size_t size)=0
 Read the contents of a file into a buffer.
virtual ssize_t write (const void *buffer, size_t size)=0
 Write the contents of a buffer to a file.
virtual off_t seek (off_t offset, int whence=SEEK_SET)=0
 Move the file position to a given offset from from a given location.
virtual int close ()=0
 Close a file.
virtual int sync ()
 Flush any buffers associated with the file.
virtual int isatty ()
 Check if the file in an interactive terminal device.
virtual off_t tell ()
 Get the file position of the file.
virtual void rewind ()
 Rewind the file position to the beginning of the file.
virtual off_t size ()
 Get the size of the file.
 MBED_DEPRECATED_SINCE ("mbed-os-5.4","Replaced by FileHandle::seek") virtual off_t lseek(off_t offset
 Move the file position to a given offset from a given location.

Detailed Description

Class FileLike.

A file-like object is one that can be opened with fopen by fopen("/name", mode).

Note:
Synchronization level: Set by subclass

Definition at line 39 of file FileLike.h.


Constructor & Destructor Documentation

FileLike ( const char *  name = NULL )

Constructor FileLike.

Parameters:
nameThe name to use to open the file.

Definition at line 45 of file FileLike.h.


Member Function Documentation

virtual int close (  ) [pure virtual, inherited]

Close a file.

Returns:
0 on success, negative error code on failure
virtual int isatty (  ) [virtual, inherited]

Check if the file in an interactive terminal device.

Returns:
True if the file is a terminal
False if the file is not a terminal
Negative error code on failure

Definition at line 110 of file FileHandle.h.

MBED_DEPRECATED_SINCE ( "mbed-os-5.4"  ,
"Replaced by FileHandle::seek"   
) [inherited]

Move the file position to a given offset from a given location.

Parameters:
offsetThe offset from whence to move to
whenceSEEK_SET for the start of the file, SEEK_CUR for the current file position, or SEEK_END for the end of the file.
Returns:
new file position on success, -1 on failure or unsupported
virtual ssize_t read ( void *  buffer,
size_t  size 
) [pure virtual, inherited]

Read the contents of a file into a buffer.

Devices acting as FileHandles should follow POSIX semantics:

* if no data is available, and nonblocking set, return -EAGAIN * if no data is available, and blocking set, wait until some data is available * If any data is available, call returns immediately

Parameters:
bufferThe buffer to read in to
sizeThe number of bytes to read
Returns:
The number of bytes read, 0 at end of file, negative error on failure
virtual void rewind (  ) [virtual, inherited]

Rewind the file position to the beginning of the file.

Note:
This is equivalent to seek(0, SEEK_SET)

Definition at line 130 of file FileHandle.h.

virtual off_t seek ( off_t  offset,
int  whence = SEEK_SET 
) [pure virtual, inherited]

Move the file position to a given offset from from a given location.

Parameters:
offsetThe offset from whence to move to
whenceThe start of where to seek SEEK_SET to start from beginning of file, SEEK_CUR to start from current position in file, SEEK_END to start from end of file
Returns:
The new offset of the file, negative error code on failure
virtual off_t size (  ) [virtual, inherited]

Get the size of the file.

Returns:
Size of the file in bytes
virtual int sync (  ) [virtual, inherited]

Flush any buffers associated with the file.

Returns:
0 on success, negative error code on failure

Definition at line 99 of file FileHandle.h.

virtual off_t tell (  ) [virtual, inherited]

Get the file position of the file.

Note:
This is equivalent to seek(0, SEEK_CUR)
Returns:
The current offset in the file, negative error code on failure

Definition at line 121 of file FileHandle.h.

virtual ssize_t write ( const void *  buffer,
size_t  size 
) [pure virtual, inherited]

Write the contents of a buffer to a file.

Devices acting as FileHandles should follow POSIX semantics:

* if blocking, block until all data is written * if no data can be written, and nonblocking set, return -EAGAIN * if some data can be written, and nonblocking set, write partial

Parameters:
bufferThe buffer to write from
sizeThe number of bytes to write
Returns:
The number of bytes written, negative error on failure