[orbitcpp-list] orbitcpp status and question
Status: Beta
Brought to you by:
philipd
|
From: Brian M. <ba...@sn...> - 2000-12-17 01:55:46
|
Hello,
I have been interested in C++ bindings for ORBit for sometime now,
although I don't have a lot of time to keep up-to-date :-(. I have
three questions.
1. What is the current status of this project? After porting my program
to use these bindings, I suddenly noticed a lot of important functions
have error("NYI") (eg. deactivate_object). Any ideas when these
functions will be implemented?
2. In C, it is not always safe to copy an object (eg CORBA struct
containing interfaces and strings) using =, as only a shallow copy is
created, and you risk freeing nested objects multiple times. Do the
C++ bindings overload the copy constructor to create deep copies, or
is this something which has to be done manually by the programmer?
(this is IMHO one of the hardest aspects of CORBA programming -
especially with C or C++ - knowing how/when to copy/free/deactivate
objects - few examples seem to deal with these issues, but rely on
memory being freed when the program exits).
3. Also, I noticed in <URL:http://gnome.dataplus.se/gnomefaq/html/x703.html>
"...Now, that might be a shared library which got mapped into your
address space and you are now doing straight function calls into
it..."
this is something that really interests me. From
<URL:http://orbitcpp.sourceforge.net/> it says that a secondary
objective is to "Allow C and C++ objects in the same address space to
short-circuit calls (i.e. no on-the-wire marshalling) for maximum
speed.", which I assume is the same thing.
Previously,I always thought CORBA objects had to run as separate
processes or threads. I now get the impression that this is not the
case. However, how do I construct an object as a shared library that
is meant to be run from the same address space?
--
Brian May <ba...@sn...>
|