====== XLoadCase ====== **//Inherited from//** [[class::domain::norderitem|NOrderItem]], **//Inherited by//** NULL **//Friend class//** LoadCaseManager, **//Description//** XLoadCase封装了分析步中载荷约束边界条件的设定以及相应的方法,它的类型标识名字为"CLOADCASE"。它由一组在分析步中用到的载荷约束边界条件的实例构成,在每个条件实例里指定了边界条件的状态(是否可用)以及引用系数。一个工况对象属且仅属于一个分析步,一个分析步可以包含多个工况对象,默认清空下一个分析步仅包含一个工况对象。 当一个分析步中包含多个工况对象时,这些工况对象应包含的条件实例所参考的边界条件应一致(状态或者引用系数可能有变换)。 **//Members//** * ConditionManager * [[xloadcase#m_pcndmgr|m_pCndMgr]] * OrderContainer [[xloadcase#m_cndinsts|m_CndInsts]] **//Public interface//** * [[xloadcase#xloadcase1|XLoadCase]](ulong id) * [[xloadcase#~xloadcase|~XLoadCase]]() * const XAnalysis * [[xloadcase#getanalysis|getAnalysis]]() const * void [[xloadcase#setanalysis|setAnalysis]](const XAnalysis * step) * void [[xloadcase#bindconditionmanager|bindConditionManager]](ConditionManager * cndMgr) * void [[xloadcase#initconditioninstance|initConditionInstance]](XAnalysis * step) * XConditionInstance* [[xloadcase#addcondition|addCondition]](const XCondition* cnd, real coef) * void [[xloadcase#removecondition|removeCondition]](const XCondition* cnd) * void [[xloadcase#addconditioninstance|addConditionInstance]](XConditionInstance* cnd) * void [[xloadcase#removecondition|removeCondition]](XConditionInstance* cnd) * const XConditionInstance * [[xloadcase#getconditioninstance|getConditionInstance]](const XCondition* cnd) const * void [[xloadcase#bindconditioniterator|bindConditionIterator]](OrderItemIterator * hIter) const * int [[xloadcase#getconditioncount|getConditionCount]]() const * void [[xloadcase#clear|clear]]() * virtual void [[xloadcase#write|write]](XBinaryIO * io) * virtual ErrorCode [[xloadcase#read|read]](XBinaryIO * io) * void [[xloadcase#write|write]](XH5IO * io, H5Obj * grp) const * bool [[xloadcase#read|read]](XH5IO * io, H5Obj * grp) ---- {{anchor:m_pcndmgr}} **ConditionManager * m_pCndMgr** 条件对象管理器 {{anchor:m_cndinsts}} **OrderContainer m_CndInsts** 条件实例容器 ---- {{anchor:xloadcase1}} **XLoadCase(ulong id)** *function: 构造函数 *parameters: - [i]ulong id: 对象ID *return value: 无 {{anchor:~xloadcase}} **~XLoadCase()** *function: 析构函数 *parameters: NULL *return value: 无 {{anchor:getanalysis}} **const XAnalysis * getAnalysis() const** *function: 获取分析步对象 *parameters: NULL *return value: 分析步对象 {{anchor:setanalysis}} **void setAnalysis(const XAnalysis * step)** *function: 设置分析步对象 *parameters: - [i]const XAnalysis * step: 分析步对象 *return value: 无 {{anchor:bindconditionmanager}} **void bindConditionManager(ConditionManager * cndMgr)** *function: 绑定条件对象管理器 *parameters: - [i]ConditionManager * cndMgr: 条件对象管理器 *return value: 无 {{anchor:initconditioninstance}} **void initConditionInstance(XAnalysis * step)** *function: 初始化条件实例 *parameters: - [i]XAnalysis * step: 分析步对象 *return value: {{anchor:addcondition}} **XConditionInstance* addCondition(const XCondition* cnd, real coef)** *function: 添加条件对象的实例,默认激活有效 *parameters: - [i]const XCondition* cnd: 条件对象 - [i] real coef: 应用系数 *return value: 条件对象的实例 {{anchor:removecondition}} **void removeCondition(const XCondition* cnd)** *function: 删除属于条件对象的实例 *parameters: - [i]const XCondition* cnd: 条件对象 *return value: 无 {{anchor:addconditioninstance}} **void addConditionInstance(XConditionInstance* cnd)** *function: 添加条件实例 *parameters: - [i]XConditionInstance* cnd: 条件实例对象 *return value: 无 {{anchor:removecondition}} **void removeCondition(XConditionInstance* cnd)** *function: 删除条件实例 *parameters: - [i]XConditionInstance* cnd: 条件实例对象 *return value: 无 {{anchor:getconditioninstance}} **const XConditionInstance * getConditionInstance(const XCondition* cnd) const** *function: 获取本工况中属于条件对象的实例 *parameters: - [i]const XCondition* cnd: 条件对象 *return value: 本工况中属于条件对象的实例 {{anchor:bindconditioniterator}} **void bindConditionIterator(OrderItemIterator * hIter) const** *function: 绑定条件实例的迭代器 *parameters: - [i]OrderItemIterator * hIter: 条件实例的迭代器 *return value: 无 {{anchor:getconditioncount}} **int getConditionCount() const** *function: 获取条件实例的个数 *parameters: NULL *return value: 条件实例的个数 {{anchor:clear}} **void clear()** *function: 情况条件实例 *parameters: NULL *return value: 无 {{anchor:write}} **virtual void write(XBinaryIO * io)** *function: 将单元属性信息写入到二进制文件中 *parameters: - [i]XBinaryIO * io: 二进制文件句柄 *return value: 无 {{anchor:read}} **virtual ErrorCode read(XBinaryIO * io)** *function: 从二进制文件中读取单元属性信息 *parameters: - [i]XBinaryIO * io: 二进制文件句柄 *return value: 如成功读取返回Error_None, 否则返回相应错误码 {{anchor:write}} **virtual void write(XH5IO * io, H5Obj * grp)** *function: 将单元属性信息写入到HDF5文件中 *parameters: - [i]XH5IO * io: HDF5文件句柄 - [i] H5Obj * grp: 数据对象所对应的HDF5节点 *return value: 无 {{anchor:read}} **virtual bool read(XH5IO * io, H5Obj * grp)** *function: 从HDF5文件中读取单元属性信息 *parameters: - [i]XH5IO * io: HDF5文件句柄 - [i] H5Obj * grp: 数据对象所对应的HDF5节点 *return value: 无