62 virtual bool Lock(DWORD dwTime = INFINITE)
const
95 if ( m_pReader == NULL )
107 if ( m_pReader == NULL )
111 return ToIndex(m_pReader->
GetSize());
121 virtual BYTE
Get(INDEX index)
const
123 if ( m_pReader == NULL || !
IsInRange(index) )
127 if ( m_pReader->
Seek(index) >= 0 )
148 virtual const BYTE&
At(INDEX index)
const
150 m_iTempNo = (m_iTempNo + 1) & 0x0F;
151 return m_abTemp[m_iTempNo] =
Get(index);
168 mutable BYTE m_abTemp[16];
169 mutable INDEX m_iTempNo;
238 if ( ! m_fa->
Set(m_index, b) )
244 BYTE m_Get(
void)
const
246 return m_fa->
Get(m_index);
260 operator BYTE(
void)
const
273 return m_Set(
static_cast<BYTE
>(b));
284 return m_Set(
static_cast<BYTE
>(m_Get() + b));
295 return m_Set(
static_cast<BYTE
>(m_Get() - b));
313 return (*m_V)[m_ind];
317 return (*m_V)[m_ind+i];
364 virtual bool Lock(DWORD dwTime = INFINITE)
const
397 if ( m_pWriter == NULL )
409 if ( m_pWriter == NULL )
413 return ToIndex(m_pWriter->
GetSize());
426 if ( m_pWriter == NULL || m_pWriter->
Seek(size) < 0 )
441 virtual BYTE
Get(INDEX index)
const
443 if ( m_pWriter == NULL || !
IsInRange(index) )
447 if ( m_pWriter->
Seek(index) >= 0 )
468 virtual const BYTE&
At(INDEX index)
const
470 m_iTempNo = (m_iTempNo + 1) & 0x0F;
471 m_abTemp[m_iTempNo] =
Get(index);
472 return m_abTemp[m_iTempNo];
482 virtual BYTE&
Ref(INDEX index)
509 if ( m_pWriter == NULL || !
IsInRange(index) )
513 return CRef(
this, index);
522 virtual INDEX
Add(
const BYTE& t)
524 if ( m_pWriter == NULL )
526 return INVALID_INDEX;
529 if ( r != INVALID_INDEX )
531 m_pWriter->
Write(1, &t);
556 if ( m_pWriter == NULL )
572 virtual bool Set(INDEX index,
const BYTE& t)
574 if ( m_pWriter != NULL &&
IsInRange(index) && m_pWriter->
Seek(index) >= 0 )
576 m_pWriter->
Write(1, &t);
584 mutable BYTE m_abTemp[16];
585 mutable INDEX m_iTempNo;
virtual size_t GetSize(void) const
[取得] 要素数取得.
virtual const BYTE & At(INDEX index) const
[取得] 要素の参照取得.
virtual BYTE Get(INDEX index) const
[取得] 要素の取得.
BYTE operator[](INDEX index) const
[取得] 要素の取得.
virtual bool Lock(DWORD dwTime=INFINITE) const
[排他] ロック
CReaderAdapter(void)
コンストラクタ
void Detach(void)
[操作] デタッチ.
virtual void Unlock(void) const
[排他] アンロック
bool Attach(const IReader *pReader)
[操作] アタッチ.
bool IsValid(void) const
[確認] 有効チェック
BYTE operator+=(BYTE b)
[計算] データ加算
BYTE operator-=(BYTE b)
[取得] データ引算
BYTE operator=(BYTE b)
[設定] データ設定
virtual size_t GetSize(void) const
[取得] 要素数取得.
const_iterator end(void) const
[反復] 最後const_iterator.
bool Attach(IWriter *pWriter)
[操作] アタッチ.
virtual const BYTE & At(INDEX index) const
[取得] 要素の参照取得.
virtual BYTE Get(INDEX index) const
[取得] 要素の取得.
CWriterAdapter(void)
コンストラクタ
iterator begin(void)
[反復] 先頭iterator.
virtual bool Remove(INDEX index)
[削除] 要素一つ削除.
virtual INDEX Add(const BYTE &t)
[追加] 要素一つ追加.
BYTE operator[](INDEX index) const
[取得] 要素の取得.
virtual bool Lock(DWORD dwTime=INFINITE) const
[排他] ロック
virtual bool SetSize(size_t size)
[設定] 要素数設定.
virtual bool RemoveAll(void)
[削除] 全要素削除 .
void Detach(void)
[操作] デタッチ.
virtual bool Set(INDEX index, const BYTE &t)
[設定] 要素の設定.
CRef operator[](INDEX index)
[取得] 要素の参照取得.
const_iterator begin(void) const
[反復] 先頭const_iterator.
virtual void Unlock(void) const
[排他] アンロック
virtual BYTE & Ref(INDEX index)
[取得] 要素の参照取得.
iterator end(void)
[反復] 最後iterator.
CValueAcceleration operator*(const CValueSpeed &s, const CValueFrequency &f)
[計算] 掛算 (加速度 = 速度 × 周波数) .
bool IsInRange(INDEX index) const
[確認] INDEXの有効確認.
virtual LONGLONG Seek(LONGLONG llOffset, ESeekMode eSeek=TOP) const =0
[操作] シーク.
void ReadExactly(size_t size, LPVOID _P) const
[取得] 読み込み.
virtual LONGLONG GetSize(void) const =0
[取得] サイズ取得
virtual bool CanRead(void) const =0
[確認] 読み込み可能か
virtual void SetEnd(void)=0
[設定] EOFを指定.
virtual bool CanWrite(void) const =0
[確認] 書込み可能か
virtual void Write(size_t size, LPCVOID P)=0
[保存] 書き込み