====== XInterface ====== **//Inherited from//** NULL **//Inherited by//** NULL **//Friend class//** NULL **//Description//** XInterface提供了XDocument和第三方文件相互转换的统一接口,包括把XDocument里的数据导出为第三方数据文件,或者从第三方数据文件导入数据到XDocument中,或者导出指定分析对象到求解文件中,或者从求解结果中提取指定结果数据。为了提高扩展性,XInterface还提供了接口代理XInterfaceProxy的接口以方便特殊场景的定制。 **//Public interface//** * virtual ErrorCode [[xinterface#doexport|doExport]]() * virtual ErrorCode [[xinterface#doimport|doImport]]() * virtual bool [[xinterface#importmodel|importModel]](XModel * mdl) * virtual ErrorCode [[xinterface#exportanalysis|exportAnalysis]](const char * fname, XModel * mdl, XJob * job) * virtual void [[xinterface#setparam|setParam]](void * param) = 0 * virtual bool [[xinterface#extractdata|extractData]](const char * config, void * dataContainer) * virtual void [[xinterface#setproxy|setProxy]](XInterfaceProxy * Proxy) * virtual [[xinterface#~xinterface|~XInterface]]() * virtual XDocument * [[xinterface#getdocument|getDocument]]() * virtual const InterfaceSetting * [[xinterface#getsetting|getSetting]]() * virtual int [[xinterface#getnextelementid|getNextElementID]]() * virtual void [[xinterface#setnextelementid|setNextElementID]](int id) ---- {{anchor:doexport}} **virtual ErrorCode doExport()** *function: 将本地文档的数据导出的接口 *parameters: NULL *return value: {{anchor:doimport}} **virtual ErrorCode doImport()** *function: 导入数据并转换到本地文档中 *parameters: NULL *return value: {{anchor:importmodel}} **virtual bool importModel(XModel * mdl)** *function: 导入模型数据到本地文档中 *parameters: - [i]XModel * mdl: *return value: {{anchor:exportanalysis}} **virtual bool exportAnalysis(const XAnalysis * ana, const char * fname)** *function: 导出指定分析设定到求解文件中 *parameters: - [i]const XAnalysis * ana: 指定分析对象 - [i]const char * fname: 求解文件名 *return value: 成功导出返回true,否则返回false {{anchor:setparam}} **virtual void setParam(void * param) = 0** *function: 设置接口参数 *parameters: - [i]void * param: 接口参数指针 *return value: 无 {{anchor:extractdata}} **virtual bool extractData(const char * config, void * dataContainer)** *function: 按照配置config提取指定结果 *parameters: - [i]const char * config: 提取配置项,由字符串表达 - [i] void * dataContainer: 结果存放容器 *return value: 成功提取返回true,否则返回false {{anchor:setproxy}} **virtual void setProxy(XInterfaceProxy * Proxy)** *function: 设置接口代理,用于适配某些特殊场合的定制化处理 *parameters: - [i]XInterfaceProxy * Proxy: 接口代理 *return value: 无 {{anchor:~xinterface}} **virtual ~XInterface()** *function: 析构函数 *parameters: NULL *return value: 无 {{anchor:getdocument}} **virtual XDocument * getDocument()** *function: 返回与接口对接的文档 *parameters: NULL *return value: {{anchor:getsetting}} **virtual const InterfaceSetting * getSetting()** *function: 获取接口设定 *parameters: NULL *return value: 接口设定