[Bug 439] New: [Project]Make CORBA transport pluggable

For more infomation about this bug, visit
Summary: [Project]Make CORBA transport pluggable
Product: RTT
Version: rtt-trunk
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: Corba
AssignedTo: orocos-dev [..] ...
ReportedBy: peter [dot] soetens [..] ...
CC: orocos-dev [..] ...
Estimated Hours: 0.0

A disadvantage of CORBA component distribution with the RTT is that the whole
toolkit + all components need to be recompiled for using CORBA. Additionally,
the CORBA enabled components and libraries are many megabytes larger, compile
much slower and binary incompatible with non-corba components.

If CORBA could be a 'pluggable transport' for the RTT, existing components
could be re-used without recompilation for networked operation. This sounds a
lot like over-doing what TAO does (TAO has pluggable protocols), but as long as
TAO is not suitable for embedded applications (never will?) we can't drag it
into the RTT by default.

The RTT library would then be liborocos-rtt.so and the CORBA plugin library
liborocos-rtt-corba.so . CORBA is already implemented using hooks in the RTT,
the hooks need to be made CORBA independent such that the RTT can be compiled
with these hooks but without CORBA.

--
Configure bugmail: https://svn.fmtc.be/bugzilla/orocos/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
You are the assignee for the bug.
--
Orocos-Dev mailing list
Orocos-Dev [..] ...
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev

Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm

[Bug 439] [Project]Make CORBA transport pluggable

For more infomation about this bug, visit

--- Comment #2 from Peter Soetens

<peter [dot] soetens [..] ...> 2007-08-07 23:53:16 ---
This was comitted to trunk/rtt.

$ svn ci -m"Fix bug #439: [Project]Make CORBA transport pluggable.
> Medium size patch, valgrind tested."
Sending config/global_setup.cmake
Deleting src/AnyDataSource.hpp
Sending src/AssignCommand.hpp
Sending src/BufferConnection.hpp
Sending src/BufferPort.hpp
Sending src/CMakeLists.txt
Sending src/ConnectionFactory.hpp
Sending src/ConnectionInterface.cpp
Sending src/ConnectionInterface.hpp
Sending src/DataConnection.hpp
Sending src/DataPort.hpp
Sending src/DataSource.cpp
Sending src/DataSource.hpp
Sending src/DataSource.inl
Sending src/DataSourceBase.hpp
Sending src/PortInterface.cpp
Sending src/PortInterface.hpp
Sending src/Property.cpp
Sending src/Property.hpp
Sending src/RealTimeToolkit.cpp
Sending src/TemplateTypeInfo.hpp
Sending src/TypeInfoName.hpp
Adding src/TypeTransporter.hpp
Sending src/Types.cpp
Sending src/Types.hpp
Sending src/corba/AttributesI.cpp
Sending src/corba/CMakeLists.txt
Sending src/corba/CORBAExpression.hpp
Sending src/corba/ControlTaskProxy.cpp
Sending src/corba/ControlTaskProxy.hpp
Sending src/corba/ControlTaskServer.hpp
Sending src/corba/CorbaBuffer.hpp
Sending src/corba/CorbaBufferProxy.hpp
Sending src/corba/CorbaCommandFactory.hpp
Sending src/corba/CorbaConversion.cpp
Sending src/corba/CorbaConversion.hpp
Sending src/corba/CorbaDataObject.hpp
Sending src/corba/CorbaDataObjectProxy.hpp
Adding src/corba/CorbaLib.cpp
Adding src/corba/CorbaLib.hpp
Sending src/corba/CorbaMethodFactory.hpp
Sending src/corba/CorbaPort.hpp
Adding src/corba/CorbaTemplateProtocol.hpp
Sending src/corba/DataFlow.idl
Sending src/corba/DataFlowI.cpp
Sending src/corba/DataFlowI.h
Sending src/corba/ExpressionProxy.cpp
Sending src/corba/ExpressionProxy.hpp
Sending src/corba/ExpressionServer.cpp
Sending src/corba/ExpressionServer.hpp
Sending src/corba/OperationInterfaceI.cpp
Sending src/corba/OperationsI.h
Sending src/os/StartStopManager.cpp
Sending src/os/StartStopManager.hpp
Sending src/os/startstop.cpp
Sending src/rtt-config.h.in
Sending src/scripting/CMakeLists.txt
Transmitting file data ........................................................
Committed revision 28501.

--
Configure bugmail: https://svn.fmtc.be/bugzilla/orocos/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
You are the assignee for the bug.
--
Orocos-Dev mailing list
Orocos-Dev [..] ...
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev

Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm

[Bug 439] [Project]Make CORBA transport pluggable

For more infomation about this bug, visit

Peter Soetens

<peter [dot] soetens [..] ...> changed:

What |Removed |Added
--------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
Target Milestone|--- |1.4.0

--- Comment #1 from Peter Soetens

<peter [dot] soetens [..] ...> 2007-08-07 23:50:28 ---
(In reply to comment #0)
> If CORBA could be a 'pluggable transport' for the RTT, existing components
> could be re-used without recompilation for networked operation.

*much* sooner than expected, I got this scenario reliably working. Any
component which will be compiled with standard RTT 1.4.x will be accessable
over a network, without recompilation, without any notion of CORBA in its code,
without any (noticable) size increases, nor compile time increases with respect
to RTT 1.2.x.

Only the main application, which calls Corba::ControlTaskServer(task) or
Corba::ControlTaskProxy(task), needs to be linked against
liborocos-rtt-corba.so, as this library defines these functions, All other
components or libraries link against liborocos-rtt.so

--
Configure bugmail: https://svn.fmtc.be/bugzilla/orocos/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
You are the assignee for the bug.
--
Orocos-Dev mailing list
Orocos-Dev [..] ...
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev

Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm