[omniORB] access to CDR encapsulations from python (patch)

Duncan Grisby dgrisby@uk.research.att.com
Wed, 23 Feb 2000 14:55:43 +0000


On Friday 18 February, Ted Horst wrote:

> Here is my first take at providing access to CDR encapsulations from
> python.  Usage is thus:

> encap = _omnipy.marshal(foo, MyIDLModule._d_MyIDLStructClass)
> foo2 = _omnipy.unmarshal(encap, MyIDLModule._d_MyIDLStructClass)

I think this interface is fine as a low-level interface. However, I
think it should be dressed up as functions in the omniORB module,
which take TypeCodes as the arguments, rather than the type
descriptors.

Something like

  encap = omniORB.cdrMarshal(foo, MyIDLModule._tc_MyIDLStructClass)
  foo2  = omniORB.cdrUnarshal(encap, MyIDLModule._tc_MyIDLStructClass)

[...]
> Unmarshal seems to be leaking pretty badly at the moment.  I would
> appreciate any pointers in helping to track that down.

I'm not sure what the problem is there. Some time soon, I'm going to
do a pre-2 release of omniORBpy, which involves some fairly
significant rearrangement of things. I'll add the CDR (un)marshaling
functions as part of the release. When I do that, I'll think about the
memory management.

Cheers,

Duncan.

PS. I've finally got around to integrating your patches for building
on x86 NextStep. Thanks for that.

-- 
 -- Duncan Grisby  \  Research Engineer  --
  -- AT&T Laboratories Cambridge          --
   -- http://www.uk.research.att.com/~dpg1 --