<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://www.xt-solution.cn/xdoc/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://www.xt-solution.cn/xdoc/feed.php">
        <title>XT Document class:application</title>
        <description></description>
        <link>https://www.xt-solution.cn/xdoc/</link>
        <image rdf:resource="https://www.xt-solution.cn/xdoc/lib/tpl/dokuwiki/images/favicon.ico" />
       <dc:date>2026-10-23T18:28:09+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:commandmanager&amp;rev=1684203275&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:interface&amp;rev=1592664204&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:interfacefactory&amp;rev=1592664204&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:solutionadapter&amp;rev=1746773204&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xcommand&amp;rev=1709187991&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xdocument&amp;rev=1684203275&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xinterface&amp;rev=1746773204&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xinterfaceproxy&amp;rev=1746773204&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xpicker&amp;rev=1660003381&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xviewdata&amp;rev=1691109650&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://www.xt-solution.cn/xdoc/lib/tpl/dokuwiki/images/favicon.ico">
        <title>XT Document</title>
        <link>https://www.xt-solution.cn/xdoc/</link>
        <url>https://www.xt-solution.cn/xdoc/lib/tpl/dokuwiki/images/favicon.ico</url>
    </image>
    <item rdf:about="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:commandmanager&amp;rev=1684203275&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-05-16T10:14:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>class:application:commandmanager</title>
        <link>https://www.xt-solution.cn/xdoc/doku.php?id=class:application:commandmanager&amp;rev=1684203275&amp;do=diff</link>
        <description>﻿

CommandManager

Inherited from  NULL

Inherited by  NULL

Friend class  NULL

Description

所有的命令都必须在CommandManager里注册之后才能被主程序使用，命令的创建以及销毁都通过CommandManager来完成。所有的命令中有一种比较特殊的命令，它不需要任何输入，它的输出也不改变任何持久性数据，这种命令称为OneClick命令，OneClick命令一般都通过调用MainFrame的executeCommand函数直接来完成，但是需要通过函数isOneClickCommand来判断它是否属于这一类命令。定制的命令管理器一般需重新实现registercommands和isOneClickCommand函数。&lt;a name=&quot;m_pexecutingcmd&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_pcmdlist&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_pcmdhistory&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_pscriptmap&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_pcmdstatus&quot;&gt;&lt;/a&gt;&lt;a …</description>
    </item>
    <item rdf:about="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:interface&amp;rev=1592664204&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-06-20T22:43:24+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>class:application:interface</title>
        <link>https://www.xt-solution.cn/xdoc/doku.php?id=class:application:interface&amp;rev=1592664204&amp;do=diff</link>
        <description>Interface

Inherited from  NULL

Inherited by  NULL

Friend class  NULL

Description

Public interface

	*  virtual ErrorCode doExport() = 0
	*  virtual ErrorCode doImport() = 0
	*  virtual void setParam(void * param) = 0
	*  virtual ~Interface()

----------
&lt;a name=&quot;doexport&quot;&gt;&lt;/a&gt;
virtual ErrorCode doExport() = 0&lt;a name=&quot;doimport&quot;&gt;&lt;/a&gt;&lt;a name=&quot;setparam&quot;&gt;&lt;/a&gt;&lt;a name=&quot;~interface&quot;&gt;&lt;/a&gt;</description>
    </item>
    <item rdf:about="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:interfacefactory&amp;rev=1592664204&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-06-20T22:43:24+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>class:application:interfacefactory</title>
        <link>https://www.xt-solution.cn/xdoc/doku.php?id=class:application:interfacefactory&amp;rev=1592664204&amp;do=diff</link>
        <description>InterfaceFactory

Inherited from  NULL

Inherited by  NULL

Friend class  NULL

Description

Members

	*  IDocument * m_pDoc

Public interface

	*  InterfaceFactory(IDocument * pDoc)
	*  Interface * createInterface(InterfaceId ifId)
	*  void destroyInterface(Interface * pIF)

Private interface

	*  bool (*m_fpCreator)(Interface &lt;a name=&quot;m_pdoc&quot;&gt;&lt;/a&gt;&lt;a name=&quot;interfacefactory1&quot;&gt;&lt;/a&gt;&lt;a name=&quot;createinterface&quot;&gt;&lt;/a&gt;&lt;a name=&quot;destroyinterface&quot;&gt;&lt;/a&gt;&lt;a name=&quot;bool&quot;&gt;&lt;/a&gt;&lt;a name=&quot;void&quot;&gt;&lt;/a&gt;</description>
    </item>
    <item rdf:about="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:solutionadapter&amp;rev=1746773204&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-05-09T14:46:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>class:application:solutionadapter</title>
        <link>https://www.xt-solution.cn/xdoc/doku.php?id=class:application:solutionadapter&amp;rev=1746773204&amp;do=diff</link>
        <description>﻿

SolutionAdapter

Inherited from  NULL

Inherited by  NULL

Friend class  NULL

Description
SolutionAdapter是导入导出接口中的分析适配器基类，一个接口经常要处理不同求解类型的分析数据，这些不同求解类型的分析数据所包含的数据对象根据求解类型导入导出的形式可能略有差异，并不总是按照统一的方式处理，如果把这些逻辑处理过程放在一起代码会越来越臃肿越来越难以维护，为了避免这个问题，需要将这些逻辑解耦分别处理，从SolutionAdapter继承的子类就可以将解耦的逻辑各自封装，使代码清晰易懂，便于维护扩展。&lt;a name=&quot;m_pana&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_pmesh&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_pif&quot;&gt;&lt;/a&gt;&lt;a name=&quot;solutionadapter1&quot;&gt;&lt;/a&gt;&lt;a name=&quot;doimport&quot;&gt;&lt;/a&gt;&lt;a name=&quot;importcontrol&quot;&gt;&lt;/a&gt;&lt;a name=&quot;importloadcase&quot;&gt;&lt;/a&gt;&lt;a name=&quot;importcondi…</description>
    </item>
    <item rdf:about="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xcommand&amp;rev=1709187991&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-29T14:26:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>class:application:xcommand</title>
        <link>https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xcommand&amp;rev=1709187991&amp;do=diff</link>
        <description>ICommand

Inherited from  NULL

Inherited by  NULL

Friend class  NULL

Description

所有会对数据进行修改的命令和操作被视为一个命令（Command），在XT中命令分为五种类型，窗口命令，无窗口命令，无窗口静默命令，无限交互命令以及特殊定制窗口命令。有窗口的命令通过xml配置文件对窗口进行可视化定制，包括控件以及布局，特殊定制窗口命令在通用窗口基础上多了一个信息代理（）。命令必须在命令管理器中注册之后才能通过菜单或者按钮触发，命令的启动则由主框架（MainFrame）负责。一般来说，每个命令都需要输入参数（IParameter），用户通过命令窗口输入参数，然后命令再通过窗口获取参数值，最后来执行相应的操作，命令的输出往往对应某种数据的变化（添加、删除或者修改），它可能会导致数据视图的变化，通过函数updateFrame可指示哪些部分需要更新。XT中所有的命令都从该基类继承，重新实现相应的接口函数即可。
XT系统中所有的命令必须在&lt;a name=&quot;m_pfrm&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_pdlg&quot;&gt;…</description>
    </item>
    <item rdf:about="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xdocument&amp;rev=1684203275&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-05-16T10:14:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>class:application:xdocument</title>
        <link>https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xdocument&amp;rev=1684203275&amp;do=diff</link>
        <description>XDocument

Inherited from  NULL

Inherited by  NULL

Friend class  NULL

Description

XDocument是XT框架中的数据中心，它构建了一个应用空间，应用空间的基础是它所管理的数据对象管理器（XManager），而数据对象管理器则负责具体对象（XItem）的创建、修改与删除，因此可将XDocument看作是数据的树根，由根长出树干（数据对象管理器），再由树干长出树枝树叶（数据对象）。应用程序要完成哪些工作，这些决定了应用空间里应该管理哪些数据。在文档的初始化过程（init())中，应逐项加入数据对象管理器，只有加入到文档的数据对象管理器才能被功能接口访问进而根据需要创建、销毁或者修改指定类型的数据对象。&lt;a name=&quot;m_uldoctype&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_bmodified&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_createtime&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_lastmodifytime&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_benableundo&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_ptr…</description>
    </item>
    <item rdf:about="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xinterface&amp;rev=1746773204&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-05-09T14:46:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>class:application:xinterface</title>
        <link>https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xinterface&amp;rev=1746773204&amp;do=diff</link>
        <description>XInterface

Inherited from  NULL

Inherited by  NULL

Friend class  NULL

Description

XInterface提供了XDocument和第三方文件相互转换的统一接口，包括把XDocument里的数据导出为第三方数据文件，或者从第三方数据文件导入数据到XDocument中，或者导出指定分析对象到求解文件中，或者从求解结果中提取指定结果数据。为了提高扩展性，XInterface还提供了接口代理XInterfaceProxy的接口以方便特殊场景的定制。&lt;a name=&quot;doexport&quot;&gt;&lt;/a&gt;&lt;a name=&quot;doimport&quot;&gt;&lt;/a&gt;&lt;a name=&quot;importmodel&quot;&gt;&lt;/a&gt;&lt;a name=&quot;exportanalysis&quot;&gt;&lt;/a&gt;&lt;a name=&quot;setparam&quot;&gt;&lt;/a&gt;&lt;a name=&quot;extractdata&quot;&gt;&lt;/a&gt;&lt;a name=&quot;setproxy&quot;&gt;&lt;/a&gt;&lt;a name=&quot;~xinterface&quot;&gt;&lt;/a&gt;&lt;a name=&quot;getdocument&quot;&gt;&lt;/a&gt;&lt;a name=…</description>
    </item>
    <item rdf:about="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xinterfaceproxy&amp;rev=1746773204&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-05-09T14:46:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>class:application:xinterfaceproxy</title>
        <link>https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xinterfaceproxy&amp;rev=1746773204&amp;do=diff</link>
        <description>﻿

XInterfaceProxy

Inherited from  NULL

Inherited by  NULL

Friend class  NULL

Description
XInterfaceProxy是接口代理的基类，从它继承重新实现在导入或导出数据的过程中对某些数据对象的自定义处理逻辑,在不修改接口代码的情况下，重定义对特定数据对象的处理。&lt;a name=&quot;bindinterface&quot;&gt;&lt;/a&gt;&lt;a name=&quot;~xinterfaceproxy&quot;&gt;&lt;/a&gt;</description>
    </item>
    <item rdf:about="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xpicker&amp;rev=1660003381&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-08-09T08:03:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>class:application:xpicker</title>
        <link>https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xpicker&amp;rev=1660003381&amp;do=diff</link>
        <description>Picker

Inherited from  NULL

Inherited by  PrePicker

Friend class  NULL

Description

Picker负责管理被用户选择的对象，这些对象在Picker中以UniqueEntity的形式存在，它包括对象的类型，身份ID以及父对象ID等主要信息，对象的类型在后续定制开发过程中按照一定的规则可进行扩展和补充。K2中有大量的类本身拥有不同的目标对象，如LBC/Metric等等，Picker可以通过bindContainer将类的目标与Picker绑定起来。&lt;a name=&quot;m_ppickingitemhash&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_ppicklist&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_pfragmentlist&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_pitempool&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_iitemcount[uetag_type_count]&quot;&gt;&lt;/a&gt;&lt;a name=&quot;picker1&quot;&gt;&lt;/a&gt;&lt;a name=&quot;insertitem&quot;&gt;&lt;/a&gt;&lt;a name=&quot;getlastitem&quot;&gt;&lt;/…</description>
    </item>
    <item rdf:about="https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xviewdata&amp;rev=1691109650&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-04T08:40:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>class:application:xviewdata</title>
        <link>https://www.xt-solution.cn/xdoc/doku.php?id=class:application:xviewdata&amp;rev=1691109650&amp;do=diff</link>
        <description>﻿

XViewData

Inherited from  NULL

Inherited by  NULL

Friend class  NULL

Description

XViewData封装了文档的视图数据，用于协调应用程序的数据模型（Model）、用户界面视图（View）和用户交互（Controller）。该数据类扮演着连接文档数据和视图之间的重要角色，它通过提供数据的访问接口，使得视图能够获取并显示数据。同时，当用户在视图上进行操作时，文档视图数据类以观察者模式，使得视图能够注册对数据更新的监听。当数据发生改变时，数据类会通知相关的视图，使其可以及时更新显示，从而实现良好的用户体验和数据的可靠管理。
一个文档可以以多种形式的视图展现给用户并和用户交互，视图所需要的数据由XViewData准备组织完成，视图的各种设定也由XViewData管理并提供访问接口，因此XViewData是用户与文档进行交互的必要接口。&lt;a name=&quot;m_pdoc&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_isearchtype&quot;&gt;&lt;/a&gt;&lt;a name=&quot;m_icurmoduleindex&quot;&gt;&lt;/a&gt;&lt;a…</description>
    </item>
</rdf:RDF>
