====== MaterialEntryManager ====== **//Inherited from//** [[class::domain::xmanager|XManager]], **//Inherited by//** NULL **//Friend class//** MaterialManager, **//Description//** **//Public interface//** MaterialEntryManager从XManager继承,是材料子项对象管理器,所有材料子项对象的创建、销毁、访问以及修改都通过调用它的通用接口完成。它的域识别码是Domain_MaterialEntry,类型名是"DMATERIALENTRY"。 * [[materialentrymanager#~materialentrymanager|~MaterialEntryManager]]() * virtual bool [[materialentrymanager#read|read]](XH5IO * io, H5Obj * grp) * virtual void [[materialentrymanager#write|write]](XH5IO * io, H5Obj * grp) * void [[materialentrymanager#serialize|serialize]](XBinaryIO * io, XItem * obj, bool bSave) * void [[materialentrymanager#updateallcache|updateAllCache]]() **//Private interface//** * [[materialentrymanager#materialentrymanager1|MaterialEntryManager]](XMemPool * pool = NULL,int size = 32) ---- {{anchor:~materialentrymanager}} **~MaterialEntryManager()** *function: 析构函数 *parameters: NULL *return value: 无 {{anchor:write}} **void write(XH5IO * io, H5Obj * grp)** *function: 将管理的所有对象数据写入到HDF5文件中 *parameters: - [i]XH5IO * io: HDF5文件句柄 - [i] H5Obj * grp: 对象管理器对应的HDF5节点 *return value: 无 {{anchor:read}} **bool read(XH5IO * io, H5Obj * grp)** *function: 从HDF5文件中读取对象数据到管理器中 *parameters: - [i]XH5IO * io: HDF5文件句柄 - [i] H5Obj * grp: 对象管理器对应的HDF5节点 *return value: 完整读取返回true,否则返回false {{anchor:serialize}} **void serialize(XBinaryIO * io, XItem * obj, bool bSave)** *function: 在undo、redo时从数据操作记录文件中序列化数据对象 *parameters: - [i]XBinaryIO * io: 二进制数据操作记录文件句柄 - [i] XItem * obj: 数据对象 - [i] bool bSave: 是否保存数据对象 *return value: 无 {{anchor:updateallcache}} **void updateAllCache()** *function: 基类函数的重新实现,更新所有材料子项对象有关缓存数据(比如顺序与所属对象的信息) *parameters: NULL *return value: 无 ---- {{anchor:materialentrymanager1}} **MaterialEntryManager(XMemPool * pool = NULL,int size = 32)** *function: *parameters: - [i]XMemPool * pool = NULL: - [i]int size = 32: *return value: