Software Archive
Read-only legacy content
17061 Discussions

CVF COM Servers -- Permissable Derived Types

David_V_3
Beginner
452 Views
Hello All,

The code generated by the CVF COM server wizard declares the derived type of the COM object with the following form:

TYPE

SEQUENCE



END TYPE

(1) Is the SEQUENCE attribute required?
(2) Is it possible for a component to have the pointer attribute e.g.

REAL(DP), DIMENSION(:), POINTER :: data => NULL()

(I am unsure if the SEQUENCE attribute can be used if a component has the pointer attribute??)

(3) The purpose for asking these questions is that I am considering wrapping existing Fortran 90 libraries in a COM wrapper. These libraries have their own derived types (e.g. TYPE(HashType) which have pointer types and no SEQUENCE attribute). It would be most desirable to encapsulate these existing derived types, without change, as components within a COM type:

TYPE

!!! SEQUENCE

TYPE(HashType) :: hash



END TYPE

Is it possible for a COM component to be a derived type?

(4) If the SEQUENCE attribute is necessary, what are the implications of adding the SEQUENCE attribute to my pre-existing derived types. Is there likely to be a performance hit?

Thank you,
David Vowles.
0 Kudos
0 Replies
Reply