[omniORB] omniidl and 'missing' _ptr type
Duncan Grisby
duncan at grisby.org
Fri Jul 11 20:26:32 BST 2003
On Thursday 10 July, Tomasz Bech wrote:
> Visibroker for each union and stuct in the .idl generated also the
> structname_ptr type (which is structname*).
> Omniorb doesn't do it.
> I have thousand of places where such _ptr are used, so I must solve it
> rather in omniidl.
>
> 1. How to tell omniidl to generate such types?
There is no option to do it, since it is not a standard thing.
> 2. How to extend the the backend cxx generation in omniidl to generate
> such types (such very simple lines for every structure in idl). Where to
> begin to implement such thing?
Edit src/lib/omniORB/omniidl_be/cxx/header/template.py . In there you
will find simple template strings that drive the IDL compiler output.
After the struct and union definitions, add the obvious lines to
generate the _ptr types.
> 3. Just curious: Is it a choice or it is against the OMG corba
> specification?
The C++ mapping does not mention _ptr types for structs and unions, so
it is a non-standard feature in Visibroker. It isn't illegal for
Visibroker to extend the spec in that way, but any application code
using the extension is non-compliant.
Cheers,
Duncan.
--
-- Duncan Grisby --
-- duncan at grisby.org --
-- http://www.grisby.org --
More information about the omniORB-list
mailing list