Руслан Урядинский / libuavcan

Dependents:   UAVCAN UAVCAN_Subscriber

Embed: (wiki syntax)

« Back to documentation index

BasicFileServerBackend Class Reference

This interface implements a POSIX compliant IFileServerBackend interface. More...

#include <basic_file_server_backend.hpp>

Inherits uavcan::IFileServerBackend.

Public Types

enum  
 

All read operations must return this number of bytes, unless end of file is reached.

More...

Public Member Functions

virtual int16_t write (const Path &path, const uint64_t offset, const uint8_t *buffer, const uint16_t size)
 Backend for uavcan.protocol.file.Write.
virtual int16_t remove (const Path &path)
 Backend for uavcan.protocol.file.Delete.
virtual int16_t getDirectoryEntryInfo (const Path &directory_path, const uint32_t entry_index, EntryType &out_type, Path &out_entry_full_path)
 Backend for uavcan.protocol.file.GetDirectoryEntryInfo.

Static Public Member Functions

static char getPathSeparator ()
 Shortcut for uavcan.protocol.file.Path.SEPARATOR.

Protected Member Functions

virtual uavcan::int16_t getInfo (const Path &path, uavcan::uint64_t &out_size, EntryType &out_type)
 Back-end for uavcan.protocol.file.GetInfo.
virtual uavcan::int16_t read (const Path &path, const uavcan::uint64_t offset, uavcan::uint8_t *out_buffer, uavcan::uint16_t &inout_size)
 Back-end for uavcan.protocol.file.Read.

Detailed Description

This interface implements a POSIX compliant IFileServerBackend interface.

Definition at line 35 of file basic_file_server_backend.hpp.


Member Enumeration Documentation

anonymous enum [inherited]

All read operations must return this number of bytes, unless end of file is reached.

Definition at line 36 of file file_server.hpp.


Member Function Documentation

virtual int16_t getDirectoryEntryInfo ( const Path &  directory_path,
const uint32_t  entry_index,
EntryType &  out_type,
Path &  out_entry_full_path 
) [virtual, inherited]

Backend for uavcan.protocol.file.GetDirectoryEntryInfo.

Refer to uavcan.protocol.file.EntryType for the list of available bit flags. Implementation of this method is NOT required; by default it returns uavcan.protocol.file.Error.NOT_IMPLEMENTED. On success the method must return zero.

Definition at line 93 of file file_server.hpp.

virtual uavcan::int16_t getInfo ( const Path &  path,
uavcan::uint64_t &  out_size,
EntryType &  out_type 
) [protected, virtual]

Back-end for uavcan.protocol.file.GetInfo.

Implementation of this method is required. On success the method must return zero.

Implements IFileServerBackend.

Definition at line 340 of file basic_file_server_backend.hpp.

static char getPathSeparator (  ) [static, inherited]

Shortcut for uavcan.protocol.file.Path.SEPARATOR.

Definition at line 41 of file file_server.hpp.

virtual uavcan::int16_t read ( const Path &  path,
const uavcan::uint64_t  offset,
uavcan::uint8_t *  out_buffer,
uavcan::uint16_t &  inout_size 
) [protected, virtual]

Back-end for uavcan.protocol.file.Read.

Implementation of this method is required. inout_size is set to ReadSize; read operation is required to return exactly this amount, except if the end of file is reached. On success the method must return zero.

Implements IFileServerBackend.

Definition at line 382 of file basic_file_server_backend.hpp.

virtual int16_t remove ( const Path &  path ) [virtual, inherited]

Backend for uavcan.protocol.file.Delete.

('delete' is a C++ keyword, so 'remove' is used instead) Implementation of this method is NOT required; by default it returns uavcan.protocol.file.Error.NOT_IMPLEMENTED. On success the method must return zero.

Definition at line 81 of file file_server.hpp.

virtual int16_t write ( const Path &  path,
const uint64_t  offset,
const uint8_t *  buffer,
const uint16_t  size 
) [virtual, inherited]

Backend for uavcan.protocol.file.Write.

Implementation of this method is NOT required; by default it returns uavcan.protocol.file.Error.NOT_IMPLEMENTED. On success the method must return zero.

Definition at line 67 of file file_server.hpp.