[omniORB] Arrays in IDL and C++ mapping in OmniORB
Frederic Prin
frederic.prin at silvaco.com
Tue Aug 3 16:31:40 BST 2004
Hello all,
While reading the Henning & Vinoski book I found a difference between
arrays and their mapping regarding the omniORB mapping.
In fact, H&V distinguishes the array of fixed-length element and the
array of variable-length (vl) element.
The C++ mapping for servant side is not the same for the vl array.
Consider this IDL:
typedef sequence<long> LongSeq;
typedef double Darr[3]; // array with fixed
length element
typedef LongSeq Varr[3]; // array with
variable length element
void darrOp( inout Darr darr_inout) ;
void varrOp( inout Varr darr_inout) ;
OmniORB (impl and objref) mapping is:
void darrOp(Darr darr_inout)
H&R (impl and objref) mapping is:
void varrOp(Varr_slice * varr_inout)
What happen, in OmniORB, if the Varr[0] sequence is reallocated in the
servant method implementation ?
Do OmniORB store only pointers to element in the array ?
Who is right ?
Thanks
Fred
(
Frédéric Prin )
Senior Software Engineer /
S I L V A C O (
Grenoble REsearch CEnter \
Tel 04 56 38 10 33 )
__________________________/___
/__/__/__/__/__/__/__/__/__/__/
/__/__/__/__/__/__/__/__/_____/
/__/__/__/__/__/__/__/__/__/__/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.omniorb-support.com/pipermail/omniorb-list/attachments/20040803/45edcb5d/attachment.htm
More information about the omniORB-list
mailing list