Re: glib / CORBA integration examples ...



On 6 Sep 2002, Michael Meeks wrote:

> So; just to get some of this out of my HEAD;
> 
> 	If we can change the glib / CORBA ABIs/APIs here's what I'd like to do
> as an example:
> 
> struct _GRealArray {              struct _CORBA_sequence_base {
>   guint8 *data;                     gpointer _buffer;
>   gulong  len;                      CORBA_unsigned_long _length;
>   gulong  alloc;                    CORBA_unsigned_long _maximum;
>   guint   elt_size;               ...
>   guint   zero_terminated : 1;    };
>   guint   clear : 1;
> };
> 
> 	So we can cast between a sequence and a GArray - and of course, use all
> the glib helpers for manipulating them.

is this for readouts only? and this approach is bound to break with future
changes (the bin incompat but source compat ones).

> 	Clearly - the 'smart allocation', that CORBA needs, would be beneficial
> to glib users I imagine [ Tim ? ],

i don't have much of an idea of corba's smart allocations, is that about a type
tag ahead of every allocated memory block?

> a sticking point might be strings
> there - we currently offset the pointer to tag it as a string, rather
> than using a full smart header to save space there; can glib accept a
> 'wasted' byte per string ? etc.

i'd say that is a pretty bad idea. for one, glib is in wide use in non-corba
environments, for another, there're a lot of non-corba related strings in
applications that'd be affected.

> 	Of course - the real sticking point would be expanding the glib type
> system to cope with the wealth of types that CORBA needs to express,
> structures, unions etc. but that's not insurmountable either.

i never actively used corba in any of my programs (though other related
encapsulation layers), so i fail to miss glib convenience using it. it'd
help me much, if you gave a few examples of what code currently looks
like, and what you'd like it to become.

> 	Anyway; just so my pipe-dream is better expressed,
> 
> 	Regards,
> 
> 		Michael.

---
ciaoTJ




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]