org.simBio.sim.analyzer.graph.results
クラス CachedBuffer

java.lang.Object
  上位を拡張 org.simBio.sim.analyzer.graph.results.CachedBuffer

public class CachedBuffer
extends java.lang.Object

キャッシュ機能付きの、時系列データバッファ.
本クラスは、ファイルをバッファにして、配列の時系列データを格納・取出しすることが できます.

作成者:
misaki

コンストラクタの概要
CachedBuffer(java.io.File file)
           
 
メソッドの概要
 void addDoubles(double[] value)
          double 配列を書き出す.
 void addLongs(long[] value)
          long 配列を書き出す.
 void clear()
          バッファの内容をクリアする.
 void close()
          インスタンスを使用終了し、バッファファイルを開放する.
protected  void flushWriteCache()
          書き込みキャッシュをディスクに書き出す。
 long getCount()
          書き込みバッファの使用容量を取得する.
 double getDouble(long index, int targetSeries)
          インデックスと系列番号を指定して、double値を読み込む
 long getLong(long index, int targetSeries)
          インデックスと系列番号を指定して、long値を読み込む
 void getPrepareDouble(long indexMin, long indexMax)
          先読みキャッシュにdouble値を読み込む.
 void getPrepareLong(long indexMin, long indexMax)
          先読みキャッシュにlong値を読み込む.
protected  org.simBio.sim.analyzer.graph.results.CachedBuffer.ReadCache getReadCache(long numReadPosition, long numReadsRequired)
          指定した位置のデータが読まれたキャッシュを取得する。
 int getSeries()
          系列数を取得する.
 int getWriteBufferCapacity()
          書き込みバッファの容量を取得する.
protected  void loadCache(org.simBio.sim.analyzer.graph.results.CachedBuffer.ReadCache cache, long numReadPosition, long numReadsRequired)
          キャッシュにデータを読み込む
protected  void loadCacheSub(org.simBio.sim.analyzer.graph.results.CachedBuffer.ReadCache cache, long indexMin, long indexMax, int unitBytes)
          キャッシュにデータを読み込む(内部メソッド)
 void setSeries(int i)
          系列数を設定する.
 void setWriteBufferCapacity(int i)
          書き込みバッファの容量を設定する.
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

CachedBuffer

public CachedBuffer(java.io.File file)
             throws java.io.IOException
パラメータ:
file - バッファとして使用するファイル
例外:
java.io.IOException
メソッドの詳細

close

public void close()
           throws java.io.IOException
インスタンスを使用終了し、バッファファイルを開放する.

例外:
java.io.IOException

clear

public void clear()
           throws java.io.IOException
バッファの内容をクリアする.

例外:
java.io.IOException

loadCache

protected void loadCache(org.simBio.sim.analyzer.graph.results.CachedBuffer.ReadCache cache,
                         long numReadPosition,
                         long numReadsRequired)
キャッシュにデータを読み込む

パラメータ:
cache - 読み込まれるキャッシュオブジェクト
numReadPosition - 読み込み開始位置
numReadsRequired - 読み込みバイト数

getReadCache

protected org.simBio.sim.analyzer.graph.results.CachedBuffer.ReadCache getReadCache(long numReadPosition,
                                                                                    long numReadsRequired)
指定した位置のデータが読まれたキャッシュを取得する。

パラメータ:
numReadPosition - 読み込み開始位置
numReadsRequired - 読み込みバイト数
戻り値:
キャッシュオブジェクト

loadCacheSub

protected void loadCacheSub(org.simBio.sim.analyzer.graph.results.CachedBuffer.ReadCache cache,
                            long indexMin,
                            long indexMax,
                            int unitBytes)
キャッシュにデータを読み込む(内部メソッド)

パラメータ:
cache - 読み込まれるキャッシュオブジェクト
indexMin - 読み込み開始要素
indexMax - 読み込み最終要素
unitBytes - 要素単位容量(バイト)

flushWriteCache

protected void flushWriteCache()
                        throws java.io.IOException
書き込みキャッシュをディスクに書き出す。

例外:
java.io.IOException

addDoubles

public void addDoubles(double[] value)
double 配列を書き出す.

パラメータ:
value - double 配列

addLongs

public void addLongs(long[] value)
long 配列を書き出す.

パラメータ:
value - long 配列

getPrepareDouble

public void getPrepareDouble(long indexMin,
                             long indexMax)
先読みキャッシュにdouble値を読み込む.

パラメータ:
indexMin - インデックス最小値
indexMax - インデックス最大値

getDouble

public double getDouble(long index,
                        int targetSeries)
インデックスと系列番号を指定して、double値を読み込む

パラメータ:
index - インデックス
targetSeries - 系列番号(0..n-1)
戻り値:
取り出された値

getPrepareLong

public void getPrepareLong(long indexMin,
                           long indexMax)
先読みキャッシュにlong値を読み込む.

パラメータ:
indexMin - インデックス最小値
indexMax - インデックス最大値

getLong

public long getLong(long index,
                    int targetSeries)
インデックスと系列番号を指定して、long値を読み込む

パラメータ:
index - インデックス
targetSeries - 系列番号(0..n-1)
戻り値:
取り出された値

setSeries

public void setSeries(int i)
系列数を設定する.

パラメータ:
i - 系列数

getSeries

public int getSeries()
系列数を取得する.

戻り値:
系列数

setWriteBufferCapacity

public void setWriteBufferCapacity(int i)
書き込みバッファの容量を設定する.

パラメータ:
i - 書き込みバッファの容量(実容量は、 i * 系列数 * データサイズ)

getWriteBufferCapacity

public int getWriteBufferCapacity()
書き込みバッファの容量を取得する.

戻り値:
書き込みバッファの容量(実容量は、 i * 系列数 * データサイズ)

getCount

public long getCount()
書き込みバッファの使用容量を取得する.

戻り値:
書き込みバッファの使用容量(実容量は、 i * 系列数 * データサイズ)


???(C) 2002-2007 ?????????????????????