CMGDK r49-rc2
公有成员 | 公有属性 | 保护成员 | 保护属性
hgl::FinUseData< F, T >模板类参考

缓冲区管理模板(以最终使用时间为基准) 更多...

#include <FinUseData.H>

继承图,类hgl::FinUseData< F, T >
hgl::Object hgl::_Object

所有成员的列表。

公有成员

 FinUseData (int)
virtual ~FinUseData ()
virtual FudItem< F, T > * Add (const F &, const T &)
 增加一个数据
virtual bool Find (const F &, T &, bool=true)
 取得一个数据(如果没有不会自动创建)
virtual bool Get (const F &, T &, bool=true)
 取得一个数据(如果没有会自动创建)
void Clear ()
 清除所有数据
void DeleteByFlag (const F &)
void DeleteByData (T &)
bool Update (const F &, T &)
 更新数据

公有属性

Property< intCount
 当前缓冲区数据数量
Property< intMaxCount
 当前缓冲区最大值

保护成员

int GetCount ()
int GetMaxCount ()
virtual void SetMaxCount (int)
virtual bool Create (const F &, T &)
 创建数据
virtual void Clear (const F &, T &)
 清除数据
void MoveToStart (FudItem< F, T > *)
 移动某一个数据到最前面
void Delete (FudItem< F, T > *)
 清除某一个数据
void ClearEnd ()
 清除最后一个数据

保护属性

FudItem< F, T > * start_item
FudItem< F, T > * end_item
int count
int max_count

详细描述

template<typename F, typename T>
class hgl::FinUseData< F, T >

缓冲区管理模板(以最终使用时间为基准)

缓冲区管理模板(当缓冲区满时,将最长时间没有使用的清除)
现这个模板使用双头链表,每次添加或使用的数据会被移到链表的最前端。
这样使用率最低的数据会被存在链表的最末端,当缓冲区满时,最末端的数据将会被清除。


构造及析构函数文档

template<typename F , typename T >
hgl::FinUseData< F, T >::FinUseData ( int  value)

本类构造函数

参数:
value缓冲区最大数据量
template<typename F , typename T >
hgl::FinUseData< F, T >::~FinUseData ( ) [virtual]

成员函数文档

template<typename F, typename T>
FudItem< F, T > * hgl::FinUseData< F, T >::Add ( const F &  flag,
const T &  data 
) [virtual]

增加一个数据

添加一个数据

参数:
flag数据标识
data数据
template<typename F, typename T>
void hgl::FinUseData< F, T >::Clear ( const F &  ,
T &   
) [protected, virtual]

清除数据

hgl::TileBuffer重载。

template<typename F, typename T>
void hgl::FinUseData< F, T >::Clear ( )

清除所有数据

清数所有数据

template<typename F , typename T >
void hgl::FinUseData< F, T >::ClearEnd ( ) [protected]

清除最后一个数据

template<typename F, typename T>
bool hgl::FinUseData< F, T >::Create ( const F &  ,
T &   
) [protected, virtual]

创建数据

hgl::TileBuffer重载。

template<typename F, typename T>
void hgl::FinUseData< F, T >::Delete ( FudItem< F, T > *  obj) [protected]

清除某一个数据

template<typename F , typename T>
void hgl::FinUseData< F, T >::DeleteByData ( T &  data)
template<typename F, typename T >
void hgl::FinUseData< F, T >::DeleteByFlag ( const F &  flag)
template<typename F, typename T>
bool hgl::FinUseData< F, T >::Find ( const F &  flag,
T &  data,
bool  mts = true 
) [virtual]

取得一个数据(如果没有不会自动创建)

取得一个数据,在没有数据时,不自动创建数据,返回false

参数:
flag数据标识
data数据存放地
mts是否对数据调频
返回:
是否取得数据成功
template<typename F, typename T>
bool hgl::FinUseData< F, T >::Get ( const F &  flag,
T &  data,
bool  mts = true 
) [virtual]

取得一个数据(如果没有会自动创建)

取得一个数据,如果数据不存在,调用Create创建数据,如失败返回false

参数:
flag数据标识
data数据存放地
mts是否对数据动态调频
返回:
是否取得数据 true/false
template<typename F, typename T>
int hgl::FinUseData< F, T >::GetCount ( ) [inline, protected]
template<typename F, typename T>
int hgl::FinUseData< F, T >::GetMaxCount ( ) [inline, protected]
template<typename F, typename T>
void hgl::FinUseData< F, T >::MoveToStart ( FudItem< F, T > *  item) [protected]

移动某一个数据到最前面

template<typename F , typename T >
void hgl::FinUseData< F, T >::SetMaxCount ( int  value) [protected, virtual]
template<typename F, typename T>
bool hgl::FinUseData< F, T >::Update ( const F &  flag,
T &  data 
)

更新数据


成员数据文档

template<typename F, typename T>
int hgl::FinUseData< F, T >::count [protected]
template<typename F, typename T>
Property<int> hgl::FinUseData< F, T >::Count

当前缓冲区数据数量

template<typename F, typename T>
FudItem<F,T> * hgl::FinUseData< F, T >::end_item [protected]
template<typename F, typename T>
int hgl::FinUseData< F, T >::max_count [protected]
template<typename F, typename T>
Property<int> hgl::FinUseData< F, T >::MaxCount

当前缓冲区最大值

template<typename F, typename T>
FudItem<F,T>* hgl::FinUseData< F, T >::start_item [protected]

该类的文档由以下文件生成:
 全部  名字空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义