CATIA CAA V5R19
二次开发详细教程
CAA
,全称
C
omponent
A
pplication
A
rchitecture
,组件应用架构。
CAA
架构
CATIA
本身是按照组件模型建立起来的,用户可以通过开发自己的
CAA
组件,对
DASSAULT SYSTEMES
的
CATIA V5
进行扩展;也可以把用户自己开发的
CAA
组件结合起来,
实现用户自定义应用。
CAA
应用的框架结构遵从组件对象模型,有自己的框架结构。每个应用有至少一个框架
(framework)
,每个框架有至少一个模块
(module)
。每个框架里面有一个
IdentityCard.h
文件,这个文件通过宏“
AddPrereqComponent(framenwork
,
protected)
”来声明“声明”
这个框架的一些首先必备的其他框架名称,
framework
是框架名称。
CAA
的编译器就是通过
IdentityCard.h
文件,来把头文件搜索限制在首先必备框架所包含的接口中。每个模块下
面定义了一个
Imakefile.mk
文件,
这个文件指明了这个模块中所有文件在编译时用到的其它
模块和一些外部库以及为编译器提供如何编译的模块必须信息,
还指定在不同的操作系统下
面编译时的一些可能的特殊要求。
CAA
环境对
Cnext
能够运行的所有操作系统中采用同样的
编译器,
这为开发者提供了很大的方便,
因为他们可以不需要知道怎样用不同的编译器和怎
么写
makefile
。
但是
MKMK
并不能做所有的事情,
开发者至少要说明他们想要做什么。
我们
在自己的源文件中用到其它模块的接口,要在
Imakefile.mk
中进行说明。程序结构采用了
COM
组件模型,组件模型中有两个常用的概念:
接口
(Interface)
和实现
(Implement)
。接口是
一个包含许多纯虚函数的抽象对象,
这些纯虚函数指明了接口支持的方法。
实现是一个具体
定义接口中的方法的对象,
一个实现对象必须显式声明它支持哪些接口,
还必须定义它支持
的接口中的所有抽象方法,
实现对象可以支持一个或多个接口,
而客户应用只能通过这些接
口与实现对象发生联系。
RADE
RADE
,
Rapid Application Development Environment
,快速应用研发环境,是一个可视化的集
成开发环境,它提供完整的编程工具组。
RADE
以
Microsoft Visual C++6.0
为载体,开发
工具完全集成在了
VC++
环境中,
并且提供了一个
CAA
框架程序编译器,
但同时也限制了
VC++
的部分功能。可以说
CATIA
CAA
–
RADE
是目前所有高端
CAD/CAM
开发环境中最为复杂、同时
也是功能最为强大的一个。
CAA V5 RADE
包括一系列工具:
TCK(Tool Configuration Key)
、
MAB(
多工作空间应用
生成器
)
、
CUT(C++
单元调试管理器
)
、
MKMK(CAA
编译工具
)
、
CID(C++
交互式面板
)
等,以插
件的形式与
MSDev VC++
集成到一起。然后借助于这些工具在
MSDev
环境下开发自己的
CAA
组件。
TCK
管理
RADE
环境,
TCK
命令是用来管理开发工具包的安装,用来创建一个工作环境。
当在
WinowsNT
上用
CAA V5
的可视化创建工具(以插件形式嵌入
Microsoft Developer
Studio
),
tck_init
和
tck_profile
命令在打开一个
V5
的工作区时被自动调用。
MKMK(
多工作区应用编译器
)
是
DS(Dassault Systems)
原代码编译工具,它构建在平台
无关
(UNIX
和
WindowsNT)
的标准编译器上,它支持面向组件的设计模式。
MKMK
提供一种统