理解使用CAA创建组件(Creating Components)

2014-07-16 21:53:19|?次阅读|上传:wustguangh【已有?条评论】发表评论

关键词:CAA, CATIA|来源:唯设编程网

与TIE实现比较,对下面的内容进行了更改:

  • CATImplementClass宏的第三个参数必须设置成扩展类所派生被实现的接口。
  • 使用CATImplementBOA宏替换TIE_CATIData宏。它的参数是BOA实现的接口,并且对扩展类单独命名。

注意,因为使用BOA实现接口的类必须派生自那个接口,并且CAA V5不支持多重继承,所以一个给定的类仅仅可以BOA实现一个接口,其他接口使用TIE的方式实现。所以在你的类实现多个接口时,你需要谨慎选择采用BOA实现的接口。另外,BOA不适用与CodeExtension类型的类。

CAA V5 BOA是那些贴上了U4和U5标签的接口,也即是你实现并且V5在你的组件上调用的接口。U4意味着你通过派生一个V5提供的适配器类实现接口并且重写其中的部分方法。U5意味着你为接口的所有方法编写代码。针对U5的接口没有任何BOA限制,但是你需要留意U4接口。一个U4接口必须是允许BOA的,也即是说,它的适配器必须从它派生,否则BOA无法应用于那个接口。在U4接口中,一些是满足BOA的条件,一些并不满足。想要知道一个U4接口是否适用于BOA,你可以在接口文档中查看BOA消息部分的内容。

总结(In Short)

一个组件是一个实现接口的对象。从组件用户的角度看,它被认为是一个单一的对象,但是可以由多个C++对象实现。

一个扩展是属于组件一部分的一个对象,这个对象通过实现一个或者多个接口向组件提供给定的行为。从客户应用程序的角度,扩展是不可见的,但可以通过一个指向所实现接口的指针进行使用。扩展也是在不修改已经存在客户程序的前提下向一个组件添加行为的方法。

TIE和BOA是CAA V5实现接口的技术。一个类可以使用TIE实现多个接口,但是它们中只有一个可以使用BOA的方式实现。

发表评论0条 】
网友评论(共?条评论)..
理解使用CAA创建组件(Creating Components)