pub trait IFile: IObject {
Show 15 methods
fn read(
&mut self,
option: FileReadOption,
offset: usize,
size: usize,
out_buf: OutNonSecureMapAliasBuffer<u8>
) -> Result<usize>;
fn write(
&mut self,
option: FileWriteOption,
offset: usize,
size: usize,
buf: InNonSecureMapAliasBuffer<u8>
) -> Result<()>;
fn flush(&mut self) -> Result<()>;
fn set_size(&mut self, size: usize) -> Result<()>;
fn get_size(&mut self) -> Result<usize>;
fn operate_range(
&mut self,
operation_id: OperationId,
offset: usize,
size: usize
) -> Result<FileQueryRangeInfo>;
fn operate_range_with_buffer(
&mut self,
operation_id: OperationId,
offset: usize,
size: usize,
in_buf: InNonSecureMapAliasBuffer<u8>,
out_buf: OutNonSecureMapAliasBuffer<u8>
) -> Result<()>;
fn sf_server_impl_read(
&mut self,
protocol: CommandProtocol,
ctx: &mut ServerContext<'_>
) -> Result<()> { ... }
fn sf_server_impl_write(
&mut self,
protocol: CommandProtocol,
ctx: &mut ServerContext<'_>
) -> Result<()> { ... }
fn sf_server_impl_flush(
&mut self,
protocol: CommandProtocol,
ctx: &mut ServerContext<'_>
) -> Result<()> { ... }
fn sf_server_impl_set_size(
&mut self,
protocol: CommandProtocol,
ctx: &mut ServerContext<'_>
) -> Result<()> { ... }
fn sf_server_impl_get_size(
&mut self,
protocol: CommandProtocol,
ctx: &mut ServerContext<'_>
) -> Result<()> { ... }
fn sf_server_impl_operate_range(
&mut self,
protocol: CommandProtocol,
ctx: &mut ServerContext<'_>
) -> Result<()> { ... }
fn sf_server_impl_operate_range_with_buffer(
&mut self,
protocol: CommandProtocol,
ctx: &mut ServerContext<'_>
) -> Result<()> { ... }
fn get_sf_command_metadata_table(&self) -> CommandMetadataTable { ... }
}