====== SolutionAdapter ====== **//Inherited from//** NULL **//Inherited by//** NULL **//Friend class//** NULL **//Description//** SolutionAdapter是导入导出接口中的分析适配器基类,一个接口经常要处理不同求解类型的分析数据,这些不同求解类型的分析数据所包含的数据对象根据求解类型导入导出的形式可能略有差异,并不总是按照统一的方式处理,如果把这些逻辑处理过程放在一起代码会越来越臃肿越来越难以维护,为了避免这个问题,需要将这些逻辑解耦分别处理,从SolutionAdapter继承的子类就可以将解耦的逻辑各自封装,使代码清晰易懂,便于维护扩展。 **//Members//** * const XAnalysis * [[solutionadapter#m_pana|m_pAna]] * XModel * [[solutionadapter#m_pmesh|m_pMesh]] * XInterface * [[solutionadapter#m_pif|m_pIf]] **//Public interface//** * [[solutionadapter#solutionadapter1|SolutionAdapter]](XInterface * ifptr, const XAnalysis * ana, XModel * mesh) * virtual bool [[solutionadapter#doimport|doImport]](FileHandler fp) * virtual bool [[solutionadapter#importcontrol|importControl]](FileHandler fp) * virtual bool [[solutionadapter#importloadcase|importLoadCase]](FileHandler fp) * virtual bool [[solutionadapter#importcondition|importCondition]](const XLoadCase *lc, FileHandler fp) * virtual bool [[solutionadapter#importmaterial|importMaterial]](FileHandler fp) * virtual void [[solutionadapter#doexport|doExport]](FileHandler fp) * virtual void [[solutionadapter#exportcontrol|exportControl]](FileHandler fp) * virtual void [[solutionadapter#exportloadcase|exportLoadCase]](FileHandler fp) * virtual void [[solutionadapter#exportcondition|exportCondition]](const XLoadCase *lc, FileHandler fp) * virtual void [[solutionadapter#exportmaterial|exportMaterial]](FileHandler fp) ---- {{anchor:m_pana}} **const XAnalysis * m_pAna** 分析对象 {{anchor:m_pmesh}} **XModel * m_pMesh** 模型对象 {{anchor:m_pif}} **XInterface * m_pIf** 接口对象 ---- {{anchor:solutionadapter1}} **SolutionAdapter(XInterface * ifptr, const XAnalysis * ana, XModel * mesh)** *function: 构造函数 *parameters: - [i] XInterface * ifptr: 接口对象,适配器的宿主对象 - [i] const XAnalysis * ana: 分析对象 - [i] XModel * mesh: 模型对象,包含节点单元信息 *return value: {{anchor:doimport}} **virtual bool doImport(FileHandler fp)** *function: 导入数据的逻辑总入口 *parameters: - [i] FileHandler fp: 文件句柄 *return value: 如正确导入,返回true,否则返回false {{anchor:importcontrol}} **virtual bool importControl(FileHandler fp)** *function: 导入分析的控制参数 *parameters: - [i] FileHandler fp: 文件句柄 *return value: 如正确导入,返回true,否则返回false {{anchor:importloadcase}} **virtual bool importLoadCase(FileHandler fp)** *function: 导入分析工况的逻辑入口 *parameters: - [i] FileHandler fp: *return value: 如正确导入,返回true,否则返回false {{anchor:importcondition}} **virtual bool importCondition(const XLoadCase *lc, FileHandler fp)** *function: 导入边界条件的逻辑入口 *parameters: - [i] const XLoadCase *lc: 分析工况对象 - [i] FileHandler fp: 文件句柄 *return value: 如正确导入,返回true,否则返回false {{anchor:importmaterial}} **virtual bool importMaterial(FileHandler fp)** *function: 导入材料的逻辑入口 *parameters: - [i] FileHandler fp: 文件句柄 *return value: 如正确导入,返回true,否则返回false {{anchor:doexport}} **virtual void doExport(FileHandler fp)** *function: 导出数据的逻辑总入口 *parameters: - [i] FileHandler fp: 文件句柄 *return value: 无 {{anchor:exportcontrol}} **virtual void exportControl(FileHandler fp)** *function: 导出分析控制参数 *parameters: - [i] FileHandler fp: 文件句柄 *return value: 无 {{anchor:exportloadcase}} **virtual void exportLoadCase(FileHandler fp)** *function: 导出分析工况 *parameters: - [i] FileHandler fp: 文件句柄 *return value: 无 {{anchor:exportcondition}} **virtual void exportCondition(const XLoadCase *lc, FileHandler fp)** *function: 导出分析工况的边界条件设定 *parameters: - [i] const XLoadCase *lc: - [i] FileHandler fp: 文件句柄 *return value: 无 {{anchor:exportmaterial}} **virtual void exportMaterial(FileHandler fp)** *function: 导出材料数据 *parameters: - [i] FileHandler fp: 文件句柄 *return value: 无