NodeManager()
| 原型 | NodeManager() |
| 描述 | 构造函数 |
| 参数 | 无 |
| 返回值 | 无 |
~NodeManager()
| 原型 | ~NodeManager() |
| 描述 | 析构函数 |
| 参数 | 无 |
| 返回值 | 无 |
void clear()
| 原型 | void clear() |
| 描述 | 基类函数的重新实现,清空节点对象以及自由节点哈希表 |
| 参数 | 无 |
| 返回值 | 无 |
ErrorCode read(XBinaryIO * io)
| 原型 | ErrorCode read(XBinaryIO * io) |
| 描述 | 从二进制文件中读取对象数据到管理器中 |
| 参数 | [i]XBinaryIO * io: 二进制文件句柄 |
| 返回值 | 成功读取返回Error_None, 否则返回相应错误码 |
void write(XBinaryIO * io)
| 原型 | void write(XBinaryIO * io) |
| 描述 | 将管理的所有对象数据写入到二进制文件中 |
| 参数 | [i]XBinaryIO * io: 二进制文件句柄 |
| 返回值 | 无 |
void write(XH5IO * io, H5Obj * grp)
| 原型 | void write(XH5IO * io, H5Obj * grp) |
| 描述 | 将管理的所有对象数据写入到HDF5文件中 |
| 参数 | [i]XH5IO * io: HDF5文件句柄 [i] H5Obj * grp: 对象管理器对应的HDF5节点 |
| 返回值 | 无 |
bool read(XH5IO * io, H5Obj * grp)
| 原型 | bool read(XH5IO * io, H5Obj * grp) |
| 描述 | 从HDF5文件中读取对象数据到管理器中 |
| 参数 | [i]XH5IO * io: HDF5文件句柄 [i] H5Obj * grp: 对象管理器对应的HDF5节点 |
| 返回值 | 完整读取返回true,否则返回false |
void write(XH5IO * io, H5Obj * grp, vector<NodePtr> * nodes)
| 原型 | void write(XH5IO * io, H5Obj * grp, vector<NodePtr> * nodes) |
| 描述 | 将一组节点对象数据写入到HDF5文件中 |
| 参数 | [i]XH5IO * io: HDF5文件句柄 [i] H5Obj * grp: 对应的HDF5节点 [i] vector<NodePtr> * nodes: 节点对象数组 |
| 返回值 | 无 |
void bindFreeNodeIterator(HashIterator * hIter)
| 原型 | void bindFreeNodeIterator(HashIterator * hIter) |
| 描述 | 绑定自由节点访问迭代器 |
| 参数 | [i]HashIterator * hIter: 自由节点访问迭代器 |
| 返回值 | 无 |
void removeFreeNode(XNode * pn)
| 原型 | void removeFreeNode(XNode * pn) |
| 描述 | 删除自由节点 |
| 参数 | [i]XNode * pn: 自由节点对象 |
| 返回值 | 无 |
void insertFreeNode(XNode * pn)
| 原型 | void insertFreeNode(XNode * pn) |
| 描述 | 插入自由节点对象 |
| 参数 | [i]XNode * pn: 自由节点对象 |
| 返回值 | 无 |
void clearFreeNodes()
| 原型 | void clearFreeNodes() |
| 描述 | 清空自由节点对象 |
| 参数 | 无 |
| 返回值 | 无 |
ulong getFreeNodeCount()
| 原型 | ulong getFreeNodeCount() |
| 描述 | 获取自由节点个数 |
| 参数 | 无 |
| 返回值 | 自由节点个数 |
void updateAfterRenumber(TypeID tid = DItem_Unknown)
| 原型 | void updateAfterRenumber(TypeID tid = DItem_Unknown) |
| 描述 | 基类函数的重新实现,在某些对象重新编号之后更新相关数据 |
| 参数 | [i]TypeID tid = DItem_Unknown: 被重新编号的对象类,这里主要为单元对象 |
| 返回值 | 无 |
void increaseElementCount(const XNode * pn)
| 原型 | void increaseElementCount(const XNode * pn) |
| 描述 | 增加节点关联的单元计数 |
| 参数 | [i]const XNode * pn: 节点对象 |
| 返回值 | 无 |
void attachElement(const XNode * pn,const XElement* el, bool bUpdateElemLink = true)
| 原型 | void attachElement(const XNode * pn,const XElement* el, bool bUpdateElemLink = true) |
| 描述 | 关联节点对象与单元对象,将其更新到节点单元缓存信息中 |
| 参数 | [i]const XNode * pn: 节点对象 [i]const XElement* el: 单元对象 [i] bool bUpdateElemLink = true: 是否实时更新缓存 |
| 返回值 | 无 |
void detachElement(const XNode * pn,const XElement* el)
| 原型 | void detachElement(const XNode * pn,const XElement* el) |
| 描述 | 解除节点对象与单元对象的关联,将其更新到节点单元缓存信息中 |
| 参数 | [i]const XNode * pn: 节点对象 [i]const XElement* el: 单元对象 |
| 返回值 | 无 |
void attachElement(const XElement* el, bool bUpdateElemLink = true)
| 原型 | void attachElement(const XElement* el, bool bUpdateElemLink = true) |
| 描述 | 关联单元对象与其每一个节点对象,将其更新到节点单元缓存信息中 |
| 参数 | [i]const XElement* el: 单元对象 [i] bool bUpdateElemLink = true: 是否实时更新缓存 |
| 返回值 | 无 |
void detachElement(const XElement* el)
| 原型 | void detachElement(const XElement* el) |
| 描述 | 解除单元对象与其每一个节点对象的关联,将其更新到节点单元缓存信息中 |
| 参数 | [i]const XElement* el: 单元对象 |
| 返回值 | 无 |
void clearElementLink(const XNode * pn)
| 原型 | void clearElementLink(const XNode * pn) |
| 描述 | 清空节点的单元缓存信息 |
| 参数 | [i]const XNode * pn: 节点对象 |
| 返回值 | 无 |
void reserveElementLink(const XNode * pn, bool bClear)
| 原型 | void reserveElementLink(const XNode * pn, bool bClear) |
| 描述 | 设置节点的单元信息数据缓存模式为预备模式 |
| 参数 | [i]const XNode * pn: 节点对象 [i] bool bClear: 是否重置关联单元的个数 |
| 返回值 | 无 |
void serialize(XBinaryIO * io, XItem * obj, bool bSave)
| 原型 | void serialize(XBinaryIO * io, XItem * obj, bool bSave) |
| 描述 | 在undo、redo时从数据操作记录文件中序列化数据对象 |
| 参数 | [i]XBinaryIO * io: 二进制数据操作记录文件句柄 [i] XItem * obj: 数据对象 [i] bool bSave: 是否保存数据对象 |
| 返回值 | 无 |