User Tools

Site Tools


class:domain:materialmanager

MaterialManager

Inherited from XManager,

Inherited by NULL

Friend class NULL

Description

MaterialManager从XManager继承,是材料对象管理器,所有材料对象的创建、销毁、访问以及修改都通过调用它的通用接口完成。它的域识别码是Domain_Material,类型名是“DMATERIAL”。

Members

Public interface


MaterialEntryManager * m_pMatEntries

材料子项管理器


MaterialManager(int size,XMemPool * item_pool, OpnRecorder * rec)

  • function: 构造函数
  • parameters:
    1. [i]int size: 初始对象个数
    2. [i]XMemPool * item_pool: 内存池
    3. [i] OpnRecorder * rec: 数据操作记录器
  • return value: 无

~MaterialManager()

  • function: 析构函数
  • parameters: NULL
  • return value: 无

MaterialEntryManager * getEntryManager()

  • function: 获取材料子项管理器
  • parameters: NULL
  • return value: 材料子项管理器

virtual void addItem(XItem * item)

  • function: 基类函数的重新实现,添加对象
  • parameters:
    1. [i]XItem * item: 材料对象
  • return value: 无

void clear()

  • function: 基类函数的重新实现,清空材料对象
  • parameters: NULL
  • return value: 无

void appendToLibrary(const char * fname,XMaterial * mat)

  • function: 将材料对象添加到Xml库文件中
  • parameters:
    1. [i]const char * fname: Xml库文件名
    2. [i]XMaterial * mat: 材料对象
  • return value: 无

XMaterial * createFromLibrary(const char * fname,const char * mat_name)

  • function: 从库文件中创建材料对象
  • parameters:
    1. [i]const char * fname: 库文件名
    2. [i]const char * mat_name: 材料对象名
  • return value: 材料对象

XMaterial * getMaterialByName(const char * mat_name)

  • function: 获取指定名字的材料对象
  • parameters:
    1. [i]const char * mat_name: 材料名
  • return value: 材料对象

ErrorCode read(XBinaryIO * io)

  • function: 从二进制文件中读取对象数据到管理器中
  • parameters:
    1. [i]XBinaryIO * io: 二进制文件句柄
  • return value: 成功读取返回Error_None, 否则返回相应错误码

void write(XBinaryIO * io)

  • function: 将管理的所有对象数据写入到二进制文件中
  • parameters:
    1. [i]XBinaryIO * io: 二进制文件句柄
  • return value: 无

void write(XH5IO * io, H5Obj * grp)

  • function: 将管理的所有对象数据写入到HDF5文件中
  • parameters:
    1. [i]XH5IO * io: HDF5文件句柄
    2. [i] H5Obj * grp: 对象管理器对应的HDF5节点
  • return value: 无

bool read(XH5IO * io, H5Obj * grp)

  • function: 从HDF5文件中读取对象数据到管理器中
  • parameters:
    1. [i]XH5IO * io: HDF5文件句柄
    2. [i] H5Obj * grp: 对象管理器对应的HDF5节点
  • return value: 完整读取返回true,否则返回false

void linkEntries()

  • function: 构建材料对象与材料子项对象的从属关系
  • parameters: NULL
  • return value: 无

void serialize(XBinaryIO * io, XItem * obj, bool bSave)

  • function: 在undo、redo时从数据操作记录文件中序列化数据对象
  • parameters:
    1. [i]XBinaryIO * io: 二进制数据操作记录文件句柄
    2. [i] XItem * obj: 数据对象
    3. [i] bool bSave: 是否保存数据对象
  • return value: 无
class/domain/materialmanager.txt · Last modified: 2023/08/04 08:40 (external edit)