User Tools

Site Tools


class:domain:modelmanager

ModelManager

Inherited from XManager,

Inherited by NULL

Friend class NULL

Description

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

Public interface


ModelManager(OpnRecorder * rec)

  • function: 构造函数
  • parameters:
    1. [i]OpnRecorder * rec: 数据操作记录器,用于undo、redo
  • return value: 无

~ModelManager()

  • function: 析构函数
  • parameters: NULL
  • 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

XModel * createModel(ulong id = 0)

  • function: 便捷函数,用于创建并初始化模型对象
  • parameters:
    1. [i]ulong id = 0: 模型对象ID
  • 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/modelmanager.txt · Last modified: 2023/08/04 08:40 (external edit)