Use one's own class together with OCAF?

Hi, everybody:

We all have use TDF_Label together with derived TDF_Attribute if we use OCAF.
How do you feel about TDF_Label?

In fact, we have to regard TDF_Label as an `address' in OCAF. But this is unfortunate because it make us turn back to the era of asm language: you deal directly with address, or extensively use void* in C/C++. It lacks the static type check ability that C++ provides!

Now this is a serious problem: how can we identify if a TDF_Label subtree is the data structure( e.g. an object in C++ ) what we want?
This is done by runtime-check and not fulfilled by compiler at compilation-time!

On ther other hand, if I use a third part DLL/Module which do some cool computation that I want, for example, FEM module. And I must use its data structure to interface with it and this data also need to stored into OCAF. How can I do it?

I must implement a class derived from TDF_Attribute as a wrapper, and implement plugin to read/write and compile stdschema, etc? Then I can mount this attribute on to my TDF_Label tree?

please give me an integral solution about this problem, it has happered my coding seriously. Thanks in advance.


Jianming Zhang's picture

I have the same problem as yours. If by now you get the problem solved, please let me know. many many thanks!