Native Client

PPB_FileIO Struct Reference

The PPB_FileIO struct is used to operate on a regular file (PP_FileType_Regular). More...


Detailed Description

The PPB_FileIO struct is used to operate on a regular file (PP_FileType_Regular).

Data Fields List

PP_Resource(* Create )(PP_Instance instance)
PP_Bool(* IsFileIO )(PP_Resource resource)
int32_t(* Open )(PP_Resource file_io, PP_Resource file_ref, int32_t open_flags, struct PP_CompletionCallback callback)
int32_t(* Query )(PP_Resource file_io, struct PP_FileInfo *info, struct PP_CompletionCallback callback)
int32_t(* Touch )(PP_Resource file_io, PP_Time last_access_time, PP_Time last_modified_time, struct PP_CompletionCallback callback)
int32_t(* Read )(PP_Resource file_io, int64_t offset, char *buffer, int32_t bytes_to_read, struct PP_CompletionCallback callback)
int32_t(* Write )(PP_Resource file_io, int64_t offset, const char *buffer, int32_t bytes_to_write, struct PP_CompletionCallback callback)
int32_t(* SetLength )(PP_Resource file_io, int64_t length, struct PP_CompletionCallback callback)
int32_t(* Flush )(PP_Resource file_io, struct PP_CompletionCallback callback)
void(* Close )(PP_Resource file_io)

Data Fields Details

void(* PPB_FileIO::Close)(PP_Resource file_io)

Close() cancels any IO that may be pending, and closes the FileIO object.

Any pending callbacks will still run, reporting PP_Error_Aborted if pending IO was interrupted. It is not valid to call Open() again after a call to this method. Note: If the FileIO object is destroyed, and it is still open, then it will be implicitly closed, so you are not required to call Close().

Parameters:
[in]file_ioA PP_Resource corresponding to a file FileIO.

Create() creates a new FileIO object.

Parameters:
[in]instanceA PP_Instance identifying the instance with the file.
Returns:
A PP_Resource corresponding to a FileIO if successful or 0 if the module is invalid.
int32_t(* PPB_FileIO::Flush)(PP_Resource file_io, struct PP_CompletionCallback callback)

Flush() flushes changes to disk.

This call can be very expensive!

Parameters:
[in]file_ioA PP_Resource corresponding to a file FileIO.
[in]callbackA PP_CompletionCallback to be called upon completion of Flush().
Returns:
An int32_t containing an error code from pp_errors.h.

IsFileIO() determines if the provided resource is a FileIO.

Parameters:
[in]resourceA PP_Resource corresponding to a FileIO.
Returns:
PP_TRUE if the resource is a PPB_FileIO, PP_FALSE if the resource is invalid or some type other than PPB_FileIO.
int32_t(* PPB_FileIO::Open)(PP_Resource file_io, PP_Resource file_ref, int32_t open_flags, struct PP_CompletionCallback callback)

Open() opens the specified regular file for I/O according to the given open flags, which is a bit-mask of the PP_FileOpenFlags values.

Upon success, the corresponding file is classified as "in use" by this FileIO object until such time as the FileIO object is closed or destroyed.

Parameters:
[in]file_ioA PP_Resource corresponding to a FileIO.
[in]file_refA PP_Resource corresponding to a file reference.
[in]open_flagsA bit-mask of the PP_FileOpenFlags values.
[in]callbackA PP_CompletionCallback to be called upon completion of Open().
Returns:
An int32_t containing an error code from pp_errors.h.
int32_t(* PPB_FileIO::Query)(PP_Resource file_io, struct PP_FileInfo *info, struct PP_CompletionCallback callback)

Query() queries info about the file opened by this FileIO object.

This function will fail if the FileIO object has not been opened.

Parameters:
[in]file_ioA PP_Resource corresponding to a FileIO.
[out]infoThe PP_FileInfo structure representing all information about the file.
[in]callbackA PP_CompletionCallback to be called upon completion of Query().
Returns:
An int32_t containing an error code from pp_errors.h.
int32_t(* PPB_FileIO::Read)(PP_Resource file_io, int64_t offset, char *buffer, int32_t bytes_to_read, struct PP_CompletionCallback callback)

Read() reads from an offset in the file.

The size of the buffer must be large enough to hold the specified number of bytes to read. This function might perform a partial read.

Parameters:
[in]file_ioA PP_Resource corresponding to a file FileIO.
[in]offsetThe offset into the file.
[in]bufferThe buffer to hold the specified number of bytes read.
[in]bytes_to_readThe number of bytes to read from offset.
[in]callbackA PP_CompletionCallback to be called upon completion of Read().
Returns:
An The number of bytes read an error code from pp_errors.h. If the return value is 0, then end-of-file was reached. It is valid to call Read() multiple times with a completion callback to queue up parallel reads from the file at different offsets.
int32_t(* PPB_FileIO::SetLength)(PP_Resource file_io, int64_t length, struct PP_CompletionCallback callback)

SetLength() sets the length of the file.

If the file size is extended, then the extended area of the file is zero-filled. The FileIO object must have been opened with write access.

Parameters:
[in]file_ioA PP_Resource corresponding to a file FileIO.
[in]lengthThe length of the file to be set.
[in]callbackA PP_CompletionCallback to be called upon completion of SetLength().
Returns:
An int32_t containing an error code from pp_errors.h.
int32_t(* PPB_FileIO::Touch)(PP_Resource file_io, PP_Time last_access_time, PP_Time last_modified_time, struct PP_CompletionCallback callback)

Touch() Updates time stamps for the file opened by this FileIO object.

This function will fail if the FileIO object has not been opened.

Parameters:
[in]file_ioA PP_Resource corresponding to a file FileIO.
[in]last_access_timeThe last time the FileIO was accessed.
[in]last_modified_timeThe last time the FileIO was modified.
[in]callbackA PP_CompletionCallback to be called upon completion of Touch().
Returns:
An int32_t containing an error code from pp_errors.h.
int32_t(* PPB_FileIO::Write)(PP_Resource file_io, int64_t offset, const char *buffer, int32_t bytes_to_write, struct PP_CompletionCallback callback)

Write() writes to an offset in the file.

This function might perform a partial write. The FileIO object must have been opened with write access.

Parameters:
[in]file_ioA PP_Resource corresponding to a file FileIO.
[in]offsetThe offset into the file.
[in]bufferThe buffer to hold the specified number of bytes read.
[in]bytes_to_writeThe number of bytes to write to offset.
[in]callbackA PP_CompletionCallback to be called upon completion of Write().
Returns:
An The number of bytes written or an error code from pp_errors.h. If the return value is 0, then end-of-file was reached. It is valid to call Write() multiple times with a completion callback to queue up parallel writes to the file at different offsets.

The documentation for this struct was generated from the following file:

Authentication required

You need to be signed in with Google+ to do that.

Signing you in...

Google Developers needs your permission to do that.