Lumino
ln::FileStream Class Reference

ファイル用の Stream です。 More...

#include <FileStream.hpp>

Inheritance diagram for ln::FileStream:
ln::Stream ln::RefObject

Public Member Functions

void close ()
 ファイルを閉じます。
 
const PathfilePath () const
 ファイルの絶対パスを取得します。
 
virtual bool canRead () const override
 読み取りをサポートするかどうかを確認します。
 
virtual bool canWrite () const override
 書き込みをサポートするかどうかを確認します。
 
virtual int64_t length () const override
 ストリームの長さ (バイト単位) を取得します。 More...
 
virtual int64_t position () const override
 ストリーム内の現在位置 (ファイルポインタの位置) を取得します。 More...
 
virtual size_t read (void *buffer, size_t byteCount) override
 バイト シーケンスを読み取り、読み取ったバイト数の分だけストリームの現在位置を進めます。 More...
 
virtual void write (const void *data, size_t byteCount) override
 現在のストリームにバイト シーケンスを書き込み、書き込んだバイト数の分だけストリームの現在位置を進めます。 More...
 
virtual void seek (int64_t offset, SeekOrigin origin) override
 ストリームの現在位置を指定した位置に設定します。 More...
 
virtual void flush () override
 ストリームの内部バッファのデータを全てターゲット(ファイル等)に書き込み、内部バッファをクリアします。
 

Static Public Member Functions

static Ref< FileStreamcreate (const StringRef &filePath, FileOpenMode openMode=FileOpenMode::Read)
 ファイルを開き、FileStream を作成します。 More...
 

Additional Inherited Members

- Protected Member Functions inherited from ln::RefObject
virtual void finalize ()
 参照がなくなり、オブジェクトが削除されようとしているときに呼び出されます。実装コードでは仮想関数を呼び出すことができます。主にデストラクタの制限を回避するために使用します。
 

Detailed Description

ファイル用の Stream です。

Member Function Documentation

◆ create()

static Ref<FileStream> ln::FileStream::create ( const StringRef filePath,
FileOpenMode  openMode = FileOpenMode::Read 
)
static

ファイルを開き、FileStream を作成します。

Parameters
[in]filePath: ファイル名
[in]openMode: ファイルを開く方法 (FileOpenMode のフラグの組み合わせ)

◆ length()

virtual int64_t ln::FileStream::length ( ) const
overridevirtual

ストリームの長さ (バイト単位) を取得します。

Attention
パイプストリームでは、この機能はサポートされません。

Implements ln::Stream.

◆ position()

virtual int64_t ln::FileStream::position ( ) const
overridevirtual

ストリーム内の現在位置 (ファイルポインタの位置) を取得します。

Attention
パイプストリームでは、この機能はサポートされません。

Implements ln::Stream.

◆ read()

virtual size_t ln::FileStream::read ( void *  buffer,
size_t  byteCount 
)
overridevirtual

バイト シーケンスを読み取り、読み取ったバイト数の分だけストリームの現在位置を進めます。

Parameters
buffer: 読み取ったデータの格納先アドレス
byteCount: 読み取るバイト数
Returns
実際に読み取ったバイト数。EOF に到達している場合は 0 を返します。

Implements ln::Stream.

◆ seek()

virtual void ln::FileStream::seek ( int64_t  offset,
SeekOrigin  origin 
)
overridevirtual

ストリームの現在位置を指定した位置に設定します。

Attention
パイプストリームでは、この機能はサポートされません。

Implements ln::Stream.

◆ write()

virtual void ln::FileStream::write ( const void *  data,
size_t  byteCount 
)
overridevirtual

現在のストリームにバイト シーケンスを書き込み、書き込んだバイト数の分だけストリームの現在位置を進めます。

Parameters
data: 書き込むデータ
byteCount: バイト数

Implements ln::Stream.


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