Preparing rc1

We've decided during the dev meeting that some changes need to be done before
we release. These are (from the wiki):

a Code size/compilation time issue
b Tool + cmake macros to create new component projects
c typegen tool to generate type kits
d gitorious migration of all orocos projects, including code generation tools
e OCL cleanup and migration to new cmake macros
f Some important renamings.
g Supporting enums.
h Cleanup addEventPort and updateHook(vector<PortInterface>)
i race in port disconnection + read/write port
j. website revamping

I'll tackle them in that order.

a. The compilation time + memory use for the RTT is mainly due to the
'TemplateTypeInfo' class that instantiates an input and output port for each
type it declares. Each port declares 2 RTT::Operations, and it's that which
takes up a lot of memory (blame boost::fusion) and code size eventually.

Solutions:
* create 'addSynchronousOperation()' for operations that can not be sent.
Register the port's operations with this function instead of addOperation().
This greatly reduces code size and compilation times and is the quickest fix.
It is likely that we will add this now and do the points below in later
releases.

* Move the operation construction code of ports to the type TypeInfo
interface. Then ports would only have scripting operations when the TypeInfo
object is known in the type system.We could even have scripting creating these
operations only when it needs them.

* create a 'second class' TypeInfo derivative that can't create ports all
together, ie for data types that are only meant as a member in a struct,
not as a thing on a data port (for example, enums, unsigned shorts etc). The
disadvantage is that if you try to use such a 'second class' type on a port at
run-time, only then the error is detected. Given the current way the type
system is implemented (using full type introspection), I don't find this such a
bad idea. It allows for very minimal typekits (40k for a second class type).
and allows to override it later-on in case another part of the app requires it
as a full type.

* Do even more cleanups in the operation code to avoid combinatorial
explosions. That's an opportunity I spotted at the end of the -dev workshop.
We will win some again, but clearly not cut the time in half or better. I have
a partial patch on this, not sure if it will make it in to final due to time
limits.

b. We need a tool to quickly create a new component. The required cmake macros
will be maintained by the orocos-toolchain project and will be included by the
component such that they are maintained at a central place. Adolfo is working
on this.

c. Sylvain is working on typegen, a stand-alone version of orogen that only
generates typekits from a given header. He's also working on a gcc-xml version
that won't need modifications of user headers.

d. We're migrating to gitorious to form the orocos-toolchain project. A
typical user will download the full project. It will contain rtt, ocl, orogen
and all their dependencies (typelib, log4cpp,...). We need to coordinate with
all Orocos maintainers to see what is part of the toolchain.

e. Once point b is ready, OCL will be migrated to these macros.

f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
'Service'. Method didn't explain it and was probably too confusing to
newcomers and even for 1.x users. Also, the 'RTT::interface' namespace will go
away and classes will move in the main RTT namespace. All occurences of
'*Repository' will be renamed to '*Interface' (like DataFlowInterface).
AttributeRepository will be renamed to ConfigurationInterface. So you'll have:
Service inherits from ConfigurationInterface, OperationInterface and
DataFlowInterface. Oh yes, DataFlowInterface moves from TaskContext to
Service. As a consequence, TaskContext becomes only an execution container
with some states and a default Service.
The RTT::base namespace will be thinned. Most will move to internal, except
some key base classes users will be exposed to. These are: ActivityInterface,
AttributeBase, (Input/Ouput)PortInterface, OperationBase, PropertyBase,
RunnableInterface, ExecutableInterface, DisposableInterface, TaskCore.

g. We've been working on supporting enums such that they can be marshalled to
XML as ints or as strings (EnumTypeInfo). I have a partial patch for this
which needs more testing. typegen is the primary user of this functionality.

h. The updateHook(vector<PortInterface>) function will be removed. It's no
longer necessary since you can query the ports yourself. It greatly simplifies
addEventPort and some management code in TaskContext.

i. There is a race in disconnection + read/write of channel elements. Because
they use boost::intrusive, their destruction is not thread-safe, even if the
ref-counting is. The solution here is to use a lock to guard a read or write
such that no destruction is done when that lock is held. Sylvain is looking at
this.

j. We discussed about revamping documentation and website. I don't have time
for the website, although we had some great ideas. Anyone having some drupal
knowledge or spare time, tell us, we'll send you some whiteboard mockups of
how it should look like and we can setup a test website (copy of existing)
where you can play with it.

For now, my main repository is still github. There are some uptime issues with
gitorious. Hopefully these will be resolved quicly and I'll start pushing to
my personal gitorious repository. From there, we can merge to the mainline.

Peter

Preparing rc1

Some updates from my side:

- the gccxml importer in typelib is now ready.
- oroGen/typeGen are mostly ready. I'm fixing the last bugs in the
test suite
- I could not start working on the dataflow bug (yet)

Sylvain

Preparing rc1

On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
> We've decided during the dev meeting that some changes need to be done
> before we release. These are (from the wiki):
...
>
> f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
> 'Service'. Method didn't explain it and was probably too confusing to
> newcomers and even for 1.x users. Also, the 'RTT::interface' namespace will
> go away and classes will move in the main RTT namespace. All occurences of
> '*Repository' will be renamed to '*Interface' (like DataFlowInterface).
> AttributeRepository will be renamed to ConfigurationInterface. So you'll
> have: Service inherits from ConfigurationInterface, OperationInterface and
> DataFlowInterface. Oh yes, DataFlowInterface moves from TaskContext to
> Service. As a consequence, TaskContext becomes only an execution container
> with some states and a default Service.
> The RTT::base namespace will be thinned. Most will move to internal, except
> some key base classes users will be exposed to. These are:
> ActivityInterface, AttributeBase, (Input/Ouput)PortInterface,
> OperationBase, PropertyBase, RunnableInterface, ExecutableInterface,
> DisposableInterface, TaskCore.

Any volunteers for this part ?

Peter

Preparing rc1

On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
> > We've decided during the dev meeting that some changes need to be done
> > before we release. These are (from the wiki):
> ...
> >
> > f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
> > 'Service'. Method didn't explain it and was probably too confusing to
> > newcomers and even for 1.x users. Also, the 'RTT::interface' namespace will
> > go away and classes will move in the main RTT namespace. All occurences of
> > '*Repository' will be renamed to '*Interface' (like DataFlowInterface).
> > AttributeRepository will be renamed to ConfigurationInterface. So you'll
> > have: Service inherits from ConfigurationInterface, OperationInterface and
> > DataFlowInterface. Oh yes, DataFlowInterface moves from TaskContext to
> > Service. As a consequence, TaskContext becomes only an execution container
> > with some states and a default Service.
> > The RTT::base namespace will be thinned. Most will move to internal, except
> > some key base classes users will be exposed to. These are:
> > ActivityInterface, AttributeBase, (Input/Ouput)PortInterface,
> > OperationBase, PropertyBase, RunnableInterface, ExecutableInterface,
> > DisposableInterface, TaskCore.

Here's an updated pull request (I sent you a merge request too), which
supersedes the last one. Compiles OK, and tests are OK (besides the
usual one)

Markus

The following changes since commit bffec26b88239fc917d3af59a2f7aea5b46ca641:

Merge commit 'refs/merge-requests/4' of git://gitorious.org/orocos-toolchain/rtt into rtt-2.0-mainline (2010-08-12 14:15:57 +0200)

are available in the git repository at:

http://git.gitorious.org/~markusk/orocos-toolchain/rtt-mk.git towards-2.0

Markus Klotzbuecher (4):
Rename Method to OperationCaller
Rename some ServiceProvider to Service which slipped through
Rename some AttributeRepository to ConfigurationInterface which slipped through
Rename OperationRepository to OperationInterface

config/check_depend.cmake | 6 +-
debian/liborocos-rtt-common-dev.install | 2 +-
doc/sgml/components-doc.sgml | 12 +-
doc/xml/images/ATaskContext.svg | 6 +-
doc/xml/images/ComponentArch-4.svg | 6 +-
doc/xml/images/ComponentFlows.svg | 2 +-
doc/xml/images/ComponentInterface.svg | 2 +-
doc/xml/images/ComponentStatesExtended.svg | 2 +-
doc/xml/images/services-and-operations.svg | 2 +-
doc/xml/images/services-and-requests.svg | 4 +-
doc/xml/orocos-corelib.xml | 2 +-
doc/xml/orocos-overview.xml | 2 +-
doc/xml/orocos-rtt-plugins.xml | 10 +-
doc/xml/orocos-rtt-scripting.xml | 6 +-
doc/xml/orocos-task-context.xml | 82 +++++-----
doc/xml/orocos-transports-corba.xml | 8 +-
rtt/InputPort.hpp | 2 +-
rtt/Operation.hpp | 26 ++--
rtt/{Method.hpp => OperationCaller.hpp} | 178 ++++++++++----------
rtt/OutputPort.hpp | 2 +-
rtt/RTT.hpp | 2 +-
rtt/TaskContext.cpp | 2 +-
rtt/TaskContext.hpp | 24 ++--
.../{MethodBase.hpp => OperationCallerBase.hpp} | 12 +-
...eInvoker.hpp => OperationCallerBaseInvoker.hpp} | 14 +-
rtt/base/PortInterface.cpp | 2 +-
rtt/base/TaskCore.hpp | 2 +-
rtt/base/rtt-base-fwd.hpp | 4 +-
rtt/extras/TaskContexts.hpp | 2 +-
rtt/interface/ConfigurationInterface.hpp | 4 +-
...rationRepository.cpp => OperationInterface.cpp} | 40 +++---
...rationRepository.hpp => OperationInterface.hpp} | 10 +-
...positoryPart.hpp => OperationInterfacePart.hpp} | 10 +-
rtt/interface/Service.cpp | 10 +-
rtt/interface/Service.hpp | 40 +++---
rtt/interface/ServiceRequester.cpp | 24 ++--
rtt/interface/ServiceRequester.hpp | 18 +-
rtt/interface/rtt-interface-fwd.hpp | 4 +-
rtt/internal/BindStorage.hpp | 2 +-
rtt/internal/DataSourceStorage.hpp | 2 +-
rtt/internal/FusedFunctorDataSource.hpp | 22 ++--
rtt/internal/InvokerBase.hpp | 2 +-
.../{LocalMethod.hpp => LocalOperationCaller.hpp} | 60 ++++----
...{MethodBinder.hpp => OperationCallerBinder.hpp} | 28 ++--
rtt/internal/{MethodC.cpp => OperationCallerC.cpp} | 64 ++++----
rtt/internal/{MethodC.hpp => OperationCallerC.hpp} | 46 +++---
...rtFused.cpp => OperationInterfacePartFused.cpp} | 6 +-
...rtFused.hpp => OperationInterfacePartFused.hpp} | 66 ++++----
...{RemoteMethod.hpp => RemoteOperationCaller.hpp} | 78 +++++-----
rtt/internal/SendHandleC.cpp | 8 +-
rtt/internal/SendHandleC.hpp | 14 +-
rtt/internal/rtt-internal-fwd.hpp | 20 +-
rtt/marsh/Marshalling.cpp | 14 +-
rtt/marsh/Marshalling.hpp | 16 +-
rtt/marsh/MarshallingService.cpp | 2 +-
rtt/rtt-fwd.hpp | 2 +-
rtt/scripting/FunctionFactory.hpp | 4 +-
rtt/scripting/ParsedStateMachine.cpp | 2 +-
rtt/scripting/ProgramService.cpp | 6 +-
rtt/scripting/Scripting.cpp | 78 +++++-----
rtt/scripting/Scripting.hpp | 80 +++++-----
rtt/scripting/ScriptingService.cpp | 18 +-
rtt/scripting/ScriptingService.hpp | 4 +-
rtt/scripting/SendHandleAlias.cpp | 4 +-
rtt/scripting/SendHandleAlias.hpp | 8 +-
rtt/scripting/StateMachineService.cpp | 8 +-
rtt/scripting/StateMachineService.hpp | 2 +-
rtt/transports/corba/ConfigurationInterfaceI.h | 6 +-
...Factory.cpp => CorbaOperationCallerFactory.cpp} | 64 ++++----
...Factory.hpp => CorbaOperationCallerFactory.hpp} | 14 +-
...rationRepository.idl => OperationInterface.idl} | 6 +-
...tionRepositoryI.cpp => OperationInterfaceI.cpp} | 46 +++---
...perationRepositoryI.h => OperationInterfaceI.h} | 22 ++--
rtt/transports/corba/Service.idl | 4 +-
rtt/transports/corba/ServiceI.cpp | 2 +-
rtt/transports/corba/ServiceI.h | 11 +-
rtt/transports/corba/ServiceRequester.idl | 4 +-
rtt/transports/corba/ServiceRequesterI.cpp | 6 +-
rtt/transports/corba/ServiceRequesterI.h | 2 +-
rtt/transports/corba/TaskContext.idl | 2 +-
rtt/transports/corba/TaskContextI.cpp | 4 +-
rtt/transports/corba/TaskContextProxy.cpp | 8 +-
src/MarshallingAccess.cpp | 18 +-
tests/attributes_test.cpp | 2 +-
tests/corba_ipc_server.cpp | 4 +-
tests/corba_ipc_test.cpp | 24 ++--
tests/corba_test.cpp | 28 ++--
tests/corba_test.hpp | 8 +-
tests/dispatch_test.cpp | 4 +-
tests/function_test.cpp | 10 +-
tests/functors_test.cpp | 66 ++++----
tests/generictask_test.cpp | 82 +++++-----
tests/generictask_test.hpp | 18 +-
tests/method_test.cpp | 98 ++++++------
tests/operation_test.cpp | 18 +-
tests/operations_fixture.cpp | 6 +-
tests/operations_fixture.hpp | 2 +-
tests/ports_test.cpp | 8 +-
tests/program_test.cpp | 2 +-
tests/remote_method_test.cpp | 58 ++++----
tests/service_test.cpp | 48 +++---
tests/state_test.cpp | 12 +-
tests/taskstates_test.cpp | 2 +-
tests/types_test.cpp | 6 +-
tests/types_test.hpp | 2 +-
105 files changed, 990 insertions(+), 989 deletions(-)
rename rtt/{Method.hpp => OperationCaller.hpp} (60%)
rename rtt/base/{MethodBase.hpp => OperationCallerBase.hpp} (90%)
rename rtt/base/{MethodBaseInvoker.hpp => OperationCallerBaseInvoker.hpp} (83%)
rename rtt/interface/{OperationRepository.cpp => OperationInterface.cpp} (65%)
rename rtt/interface/{OperationRepository.hpp => OperationInterface.hpp} (96%)
rename rtt/interface/{OperationRepositoryPart.hpp => OperationInterfacePart.hpp} (96%)
rename rtt/internal/{LocalMethod.hpp => LocalOperationCaller.hpp} (90%)
rename rtt/internal/{MethodBinder.hpp => OperationCallerBinder.hpp} (89%)
rename rtt/internal/{MethodC.cpp => OperationCallerC.cpp} (78%)
rename rtt/internal/{MethodC.hpp => OperationCallerC.hpp} (82%)
rename rtt/internal/{OperationRepositoryPartFused.cpp => OperationInterfacePartFused.cpp} (62%)
rename rtt/internal/{OperationRepositoryPartFused.hpp => OperationInterfacePartFused.hpp} (85%)
rename rtt/internal/{RemoteMethod.hpp => RemoteOperationCaller.hpp} (81%)
rename rtt/transports/corba/{CorbaMethodFactory.cpp => CorbaOperationCallerFactory.cpp} (79%)
rename rtt/transports/corba/{CorbaMethodFactory.hpp => CorbaOperationCallerFactory.hpp} (89%)
rename rtt/transports/corba/{OperationRepository.idl => OperationInterface.idl} (97%)
rename rtt/transports/corba/{OperationRepositoryI.cpp => OperationInterfaceI.cpp} (89%)
rename rtt/transports/corba/{OperationRepositoryI.h => OperationInterfaceI.h} (83%)

Preparing rc1

On Fri, Aug 13, 2010 at 08:38:36AM +0200, Markus Klotzbuecher wrote:
> On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
> > On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
> > > We've decided during the dev meeting that some changes need to be done
> > > before we release. These are (from the wiki):
> > ...
> > >
> > > f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
> > > 'Service'. Method didn't explain it and was probably too confusing to
> > > newcomers and even for 1.x users. Also, the 'RTT::interface' namespace will
> > > go away and classes will move in the main RTT namespace. All occurences of
> > > '*Repository' will be renamed to '*Interface' (like DataFlowInterface).
> > > AttributeRepository will be renamed to ConfigurationInterface. So you'll
> > > have: Service inherits from ConfigurationInterface, OperationInterface and
> > > DataFlowInterface. Oh yes, DataFlowInterface moves from TaskContext to
> > > Service. As a consequence, TaskContext becomes only an execution container
> > > with some states and a default Service.
> > > The RTT::base namespace will be thinned. Most will move to internal, except
> > > some key base classes users will be exposed to. These are:
> > > ActivityInterface, AttributeBase, (Input/Ouput)PortInterface,
> > > OperationBase, PropertyBase, RunnableInterface, ExecutableInterface,
> > > DisposableInterface, TaskCore.
>
> Here's an updated pull request (I sent you a merge request too), which
> supersedes the last one. Compiles OK, and tests are OK (besides the
> usual one)

New stuff:

"Merge Interface namespace into main namespace"

I updated the merge request this time (instead of creating a new one)

Compiles and tests Ok (besides the notorious one)

Best regards
Markus

The following changes since commit bffec26b88239fc917d3af59a2f7aea5b46ca641:

Merge commit 'refs/merge-requests/4' of git://gitorious.org/orocos-toolchain/rtt into rtt-2.0-mainline (2010-08-12 14:15:57 +0200)

are available in the git repository at:

http://git.gitorious.org/~markusk/orocos-toolchain/rtt-mk.git towards-2.0

Markus Klotzbuecher (5):
Rename Method to OperationCaller
Rename some ServiceProvider to Service which slipped through
Rename some AttributeRepository to ConfigurationInterface which slipped through
Rename OperationRepository to OperationInterface
Merge interface namespace into main namespace

config/check_depend.cmake | 6 +-
debian/liborocos-rtt-common-dev.install | 2 +-
doc/sgml/components-doc.sgml | 12 +-
doc/xml/images/ATaskContext.svg | 6 +-
doc/xml/images/ComponentArch-4.svg | 6 +-
doc/xml/images/ComponentFlows.svg | 2 +-
doc/xml/images/ComponentInterface.svg | 2 +-
doc/xml/images/ComponentStatesExtended.svg | 2 +-
doc/xml/images/services-and-operations.svg | 2 +-
doc/xml/images/services-and-requests.svg | 4 +-
doc/xml/orocos-corelib.xml | 2 +-
doc/xml/orocos-overview.xml | 2 +-
doc/xml/orocos-rtt-plugins.xml | 10 +-
doc/xml/orocos-rtt-scripting.xml | 6 +-
doc/xml/orocos-task-context.xml | 88 ++++----
doc/xml/orocos-transports-corba.xml | 8 +-
rtt/{interface => }/ArgumentDescription.cpp | 2 +-
rtt/{interface => }/ArgumentDescription.hpp | 5 +-
rtt/CMakeLists.txt | 1 -
rtt/{interface => }/ConfigurationInterface.cpp | 0
rtt/{interface => }/ConfigurationInterface.hpp | 9 +-
rtt/{interface => }/DataFlowInterface.cpp | 0
rtt/{interface => }/DataFlowInterface.hpp | 4 +-
rtt/{interface => }/FactoryExceptions.cpp | 1 -
rtt/{interface => }/FactoryExceptions.hpp | 4 +-
rtt/InputPort.hpp | 8 +-
rtt/Operation.hpp | 26 ++--
rtt/{Method.hpp => OperationCaller.hpp} | 180 ++++++++--------
...rationRepository.cpp => OperationInterface.cpp} | 56 +++---
rtt/OperationInterface.hpp | 216 +++++++++++++++++++
rtt/OperationInterfacePart.hpp | 157 ++++++++++++++
rtt/OutputPort.hpp | 8 +-
rtt/RTT.hpp | 2 +-
rtt/{interface => }/Service.cpp | 10 +-
rtt/{interface => }/Service.hpp | 45 ++--
rtt/{interface => }/ServiceRequester.cpp | 24 +-
rtt/ServiceRequester.hpp | 116 ++++++++++
rtt/TaskContext.cpp | 2 +-
rtt/TaskContext.hpp | 54 +++---
.../{MethodBase.hpp => OperationCallerBase.hpp} | 12 +-
...eInvoker.hpp => OperationCallerBaseInvoker.hpp} | 14 +-
rtt/base/PortInterface.cpp | 6 +-
rtt/base/PortInterface.hpp | 10 +-
rtt/base/TaskCore.hpp | 2 +-
rtt/base/rtt-base-fwd.hpp | 4 +-
rtt/extras/Orocos.Main.hpp | 2 +-
rtt/extras/TaskContexts.hpp | 2 +-
rtt/interface/CMakeLists.txt | 5 -
rtt/interface/OperationRepository.hpp | 220 --------------------
rtt/interface/OperationRepositoryPart.hpp | 161 --------------
rtt/interface/ServiceRequester.hpp | 123 -----------
rtt/internal/BindStorage.hpp | 2 +-
rtt/internal/ConnFactory.cpp | 2 +-
rtt/internal/ConnFactory.hpp | 2 +-
rtt/internal/CreateSequence.hpp | 6 +-
rtt/internal/DataSourceStorage.hpp | 2 +-
rtt/internal/FusedFunctorDataSource.hpp | 24 +-
rtt/internal/InvokerBase.hpp | 2 +-
.../{LocalMethod.hpp => LocalOperationCaller.hpp} | 60 +++---
...{MethodBinder.hpp => OperationCallerBinder.hpp} | 28 ++--
rtt/internal/{MethodC.cpp => OperationCallerC.cpp} | 68 +++---
rtt/internal/{MethodC.hpp => OperationCallerC.hpp} | 50 +++---
rtt/internal/OperationInterfacePartFused.cpp | 22 ++
...rtFused.hpp => OperationInterfacePartFused.hpp} | 98 +++++-----
rtt/internal/OperationRepositoryPartFused.cpp | 22 --
...{RemoteMethod.hpp => RemoteOperationCaller.hpp} | 78 ++++----
rtt/internal/SendHandleC.cpp | 12 +-
rtt/internal/SendHandleC.hpp | 16 +-
rtt/internal/rtt-internal-fwd.hpp | 20 +-
rtt/marsh/Marshalling.cpp | 16 +-
rtt/marsh/Marshalling.hpp | 20 +-
rtt/marsh/MarshallingService.cpp | 2 +-
rtt/marsh/MarshallingService.hpp | 4 +-
rtt/plugin/ServicePlugin.hpp | 4 +-
rtt/rtt-detail-fwd.hpp | 6 -
rtt/rtt-fwd.hpp | 4 +-
rtt/{interface => }/rtt-interface-fwd.hpp | 21 +--
rtt/scripting/ArgumentsParser.hpp | 6 +-
rtt/scripting/DumpObject.cpp | 4 +-
rtt/scripting/DumpObject.hpp | 6 +-
rtt/scripting/FunctionFactory.cpp | 2 +-
rtt/scripting/FunctionFactory.hpp | 8 +-
rtt/scripting/FunctionGraph.cpp | 2 +-
rtt/scripting/FunctionGraph.hpp | 4 +-
rtt/scripting/FunctionGraphBuilder.cpp | 2 +-
rtt/scripting/ParsedStateMachine.cpp | 4 +-
rtt/scripting/PeerParser.hpp | 6 +-
rtt/scripting/ProgramGraphParser.hpp | 6 +-
rtt/scripting/ProgramService.cpp | 8 +-
rtt/scripting/ProgramService.hpp | 6 +-
rtt/scripting/Scripting.cpp | 78 ++++----
rtt/scripting/Scripting.hpp | 84 ++++----
rtt/scripting/ScriptingService.cpp | 20 +-
rtt/scripting/ScriptingService.hpp | 8 +-
rtt/scripting/SendHandleAlias.cpp | 4 +-
rtt/scripting/SendHandleAlias.hpp | 8 +-
rtt/scripting/StateGraphParser.hpp | 4 +-
rtt/scripting/StateMachine.cpp | 2 +-
rtt/scripting/StateMachine.hpp | 4 +-
rtt/scripting/StateMachineService.cpp | 10 +-
rtt/scripting/StateMachineService.hpp | 10 +-
rtt/scripting/ValueChangeParser.cpp | 2 +-
rtt/scripting/ValueChangeParser.hpp | 8 +-
rtt/scripting/ValueParser.cpp | 2 +-
rtt/scripting/ValueParser.hpp | 2 +-
rtt/transports/corba/ConfigurationInterfaceI.h | 12 +-
rtt/transports/corba/CorbaDispatcher.hpp | 8 +-
...Factory.cpp => CorbaOperationCallerFactory.cpp} | 92 ++++----
...Factory.hpp => CorbaOperationCallerFactory.hpp} | 20 +-
rtt/transports/corba/CorbaTemplateProtocol.hpp | 2 +-
rtt/transports/corba/CorbaTypeTransporter.hpp | 2 +-
rtt/transports/corba/DataFlowI.cpp | 16 +-
rtt/transports/corba/DataFlowI.h | 14 +-
...rationRepository.idl => OperationInterface.idl} | 6 +-
...tionRepositoryI.cpp => OperationInterfaceI.cpp} | 46 ++--
...perationRepositoryI.h => OperationInterfaceI.h} | 22 +-
rtt/transports/corba/RemoteChannelElement.hpp | 4 +-
rtt/transports/corba/RemotePorts.cpp | 2 +-
rtt/transports/corba/Service.idl | 4 +-
rtt/transports/corba/ServiceI.cpp | 4 +-
rtt/transports/corba/ServiceI.h | 17 +-
rtt/transports/corba/ServiceRequester.idl | 4 +-
rtt/transports/corba/ServiceRequesterI.cpp | 8 +-
rtt/transports/corba/ServiceRequesterI.h | 8 +-
rtt/transports/corba/TaskContext.idl | 2 +-
rtt/transports/corba/TaskContextI.cpp | 4 +-
rtt/transports/corba/TaskContextProxy.cpp | 8 +-
rtt/transports/corba/TaskContextProxy.hpp | 4 +-
rtt/transports/mqueue/MQChannelElement.hpp | 2 +-
rtt/types/GlobalsRepository.hpp | 4 +-
src/MarshallingAccess.cpp | 18 +-
tests/attributes_test.cpp | 2 +-
tests/corba_ipc_server.cpp | 6 +-
tests/corba_ipc_test.cpp | 26 ++--
tests/corba_test.cpp | 30 ++--
tests/corba_test.hpp | 8 +-
tests/dispatch_test.cpp | 6 +-
tests/eventservice_test.cpp | 2 +-
tests/eventservice_test.hpp | 2 +-
tests/function_test.cpp | 12 +-
tests/functors_test.cpp | 68 +++---
tests/generictask_test.cpp | 86 ++++----
tests/generictask_test.hpp | 18 +-
tests/method_test.cpp | 100 +++++-----
tests/mqueue_ipc_server.cpp | 2 +-
tests/mqueue_ipc_test.cpp | 2 +-
tests/mqueue_test.cpp | 2 +-
tests/operation_test.cpp | 20 +-
tests/operations_fixture.cpp | 8 +-
tests/operations_fixture.hpp | 2 +-
tests/plugins/plugins_test_services.cpp | 3 +-
tests/ports_test.cpp | 8 +-
tests/program_test.cpp | 4 +-
tests/remote_method_test.cpp | 60 +++---
tests/service_test.cpp | 52 +++---
tests/state_test.cpp | 14 +-
tests/taskstates_test.cpp | 2 +-
tests/types_test.cpp | 10 +-
tests/types_test.hpp | 2 +-
159 files changed, 1702 insertions(+), 1740 deletions(-)
rename rtt/{interface => }/ArgumentDescription.cpp (86%)
rename rtt/{interface => }/ArgumentDescription.hpp (99%)
rename rtt/{interface => }/ConfigurationInterface.cpp (100%)
rename rtt/{interface => }/ConfigurationInterface.hpp (99%)
rename rtt/{interface => }/DataFlowInterface.cpp (100%)
rename rtt/{interface => }/DataFlowInterface.hpp (99%)
rename rtt/{interface => }/FactoryExceptions.cpp (99%)
rename rtt/{interface => }/FactoryExceptions.hpp (99%)
rename rtt/{Method.hpp => OperationCaller.hpp} (60%)
rename rtt/{interface/OperationRepository.cpp => OperationInterface.cpp} (52%)
create mode 100644 rtt/OperationInterface.hpp
create mode 100644 rtt/OperationInterfacePart.hpp
rename rtt/{interface => }/Service.cpp (94%)
rename rtt/{interface => }/Service.hpp (91%)
rename rtt/{interface => }/ServiceRequester.cpp (64%)
create mode 100644 rtt/ServiceRequester.hpp
rename rtt/base/{MethodBase.hpp => OperationCallerBase.hpp} (90%)
rename rtt/base/{MethodBaseInvoker.hpp => OperationCallerBaseInvoker.hpp} (80%)
delete mode 100644 rtt/interface/CMakeLists.txt
delete mode 100644 rtt/interface/OperationRepository.hpp
delete mode 100644 rtt/interface/OperationRepositoryPart.hpp
delete mode 100644 rtt/interface/ServiceRequester.hpp
rename rtt/internal/{LocalMethod.hpp => LocalOperationCaller.hpp} (90%)
rename rtt/internal/{MethodBinder.hpp => OperationCallerBinder.hpp} (89%)
rename rtt/internal/{MethodC.cpp => OperationCallerC.cpp} (77%)
rename rtt/internal/{MethodC.hpp => OperationCallerC.hpp} (81%)
create mode 100644 rtt/internal/OperationInterfacePartFused.cpp
rename rtt/internal/{OperationRepositoryPartFused.hpp => OperationInterfacePartFused.hpp} (76%)
delete mode 100644 rtt/internal/OperationRepositoryPartFused.cpp
rename rtt/internal/{RemoteMethod.hpp => RemoteOperationCaller.hpp} (81%)
rename rtt/{interface => }/rtt-interface-fwd.hpp (87%)
rename rtt/transports/corba/{CorbaMethodFactory.cpp => CorbaOperationCallerFactory.cpp} (73%)
rename rtt/transports/corba/{CorbaMethodFactory.hpp => CorbaOperationCallerFactory.hpp} (86%)
rename rtt/transports/corba/{OperationRepository.idl => OperationInterface.idl} (97%)
rename rtt/transports/corba/{OperationRepositoryI.cpp => OperationInterfaceI.cpp} (89%)
rename rtt/transports/corba/{OperationRepositoryI.h => OperationInterfaceI.h} (83%)

Preparing rc1

On Friday 13 August 2010 16:36:45 Markus Klotzbuecher wrote:
> On Fri, Aug 13, 2010 at 08:38:36AM +0200, Markus Klotzbuecher wrote:
> > On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
> > > On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
> > > > We've decided during the dev meeting that some changes need to be
> > > > done before we release. These are (from the wiki):
> > >
> > > ...
> > >
> > > > f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
> > > > 'Service'. Method didn't explain it and was probably too confusing to
> > > > newcomers and even for 1.x users. Also, the 'RTT::interface'
> > > > namespace will go away and classes will move in the main RTT
> > > > namespace. All occurences of '*Repository' will be renamed to
> > > > '*Interface' (like DataFlowInterface). AttributeRepository will be
> > > > renamed to ConfigurationInterface. So you'll have: Service inherits
> > > > from ConfigurationInterface, OperationInterface and
> > > > DataFlowInterface. Oh yes, DataFlowInterface moves from TaskContext
> > > > to Service. As a consequence, TaskContext becomes only an execution
> > > > container with some states and a default Service.
> > > > The RTT::base namespace will be thinned. Most will move to internal,
> > > > except some key base classes users will be exposed to. These are:
> > > > ActivityInterface, AttributeBase, (Input/Ouput)PortInterface,
> > > > OperationBase, PropertyBase, RunnableInterface, ExecutableInterface,
> > > > DisposableInterface, TaskCore.
> >
> > Here's an updated pull request (I sent you a merge request too), which
> > supersedes the last one. Compiles OK, and tests are OK (besides the
> > usual one)
>
> New stuff:
>
> "Merge Interface namespace into main namespace"
>
> I updated the merge request this time (instead of creating a new one)
>
> Compiles and tests Ok (besides the notorious one)

Thanks a lot ! We should disable this unit test for now. It's a broken
feature since 1.0.0, only the unit test was recently added when properties
weren't that ok in 2.0-beta.

Peter

Preparing rc1

On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
> > We've decided during the dev meeting that some changes need to be done
> > before we release. These are (from the wiki):
> ...
> >
> > go away and classes will move in the main RTT namespace. All occurences of
> > '*Repository' will be renamed to '*Interface' (like DataFlowInterface).

All occurences, really? Heres a list of *Repository:

- OperationRepository
- OperationRepositoryPart
- COperationRepository
- RTT_corba_COperationRepository_i
- OperationRepositoryPartFusedDS
- OperationRepositoryPartFused
- SynchronousOperationRepositoryPartFused
- OperationRepositoryPartHelper
- OperatorRepository
- TypekitRepository
- TypeInfoRepository
- GlobalsRepository

Markus

Preparing rc1

On Thu, Aug 12, 2010 at 5:00 PM, Markus Klotzbuecher
<markus [dot] klotzbuecher [..] ...> wrote:
> On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
>> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
>> > We've decided during the dev meeting that some changes need to be done
>> >  before we release. These are (from the wiki):
>> ...
>> >
>> >  go away and classes will move in the main RTT namespace. All occurences of
>> >  '*Repository' will be renamed to '*Interface' (like DataFlowInterface).
>
> All occurences, really? Heres a list of *Repository:
>
> - OperationRepository
> - OperationRepositoryPart
> - COperationRepository
> - RTT_corba_COperationRepository_i
> - OperationRepositoryPartFusedDS
> - OperationRepositoryPartFused
> - SynchronousOperationRepositoryPartFused
> - OperationRepositoryPartHelper
> - OperatorRepository
> - TypekitRepository
> - TypeInfoRepository
> - GlobalsRepository

Oops nono. Only [C]OperationRepository*

The other repositories are for the type system and may remain as-is.

Peter
--
Orocos-Dev mailing list
Orocos-Dev [..] ...
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev

Preparing rc1

On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
> > We've decided during the dev meeting that some changes need to be done
> > before we release. These are (from the wiki):
> ...
> >
> > f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to

Here comes Method -> OperationCaller. It wipes the existence of
"Method" from rtt.

Compiles and tests are OK (except property_loader_test as usual)

Best regards
Markus

The following changes since commit bffec26b88239fc917d3af59a2f7aea5b46ca641:

Merge commit 'refs/merge-requests/4' of git://gitorious.org/orocos-toolchain/rtt into rtt-2.0-mainline (2010-08-12 14:15:57 +0200)

are available in the git repository at:

http://git.gitorious.org/~markusk/orocos-toolchain/rtt-mk.git towards-2.0

Markus Klotzbuecher (1):
Rename Method to OperationCaller

config/check_depend.cmake | 6 +-
debian/liborocos-rtt-common-dev.install | 2 +-
doc/xml/images/ATaskContext.svg | 6 +-
doc/xml/images/ComponentArch-4.svg | 6 +-
doc/xml/images/ComponentFlows.svg | 2 +-
doc/xml/images/ComponentInterface.svg | 2 +-
doc/xml/images/ComponentStatesExtended.svg | 2 +-
doc/xml/images/services-and-operations.svg | 2 +-
doc/xml/images/services-and-requests.svg | 2 +-
doc/xml/orocos-corelib.xml | 2 +-
doc/xml/orocos-overview.xml | 2 +-
doc/xml/orocos-rtt-scripting.xml | 6 +-
doc/xml/orocos-task-context.xml | 72 ++++----
doc/xml/orocos-transports-corba.xml | 2 +-
rtt/InputPort.hpp | 2 +-
rtt/Operation.hpp | 26 ++--
rtt/{Method.hpp => OperationCaller.hpp} | 172 ++++++++++----------
rtt/OutputPort.hpp | 2 +-
rtt/RTT.hpp | 2 +-
rtt/TaskContext.cpp | 2 +-
rtt/TaskContext.hpp | 6 +-
.../{MethodBase.hpp => OperationCallerBase.hpp} | 12 +-
...eInvoker.hpp => OperationCallerBaseInvoker.hpp} | 10 +-
rtt/base/PortInterface.cpp | 2 +-
rtt/base/TaskCore.hpp | 2 +-
rtt/base/rtt-base-fwd.hpp | 4 +-
rtt/extras/TaskContexts.hpp | 2 +-
rtt/interface/OperationRepositoryPart.hpp | 2 +-
rtt/interface/Service.cpp | 4 +-
rtt/interface/Service.hpp | 14 +-
rtt/interface/ServiceRequester.cpp | 24 ++--
rtt/interface/ServiceRequester.hpp | 18 +-
rtt/internal/BindStorage.hpp | 2 +-
rtt/internal/DataSourceStorage.hpp | 2 +-
rtt/internal/FusedFunctorDataSource.hpp | 22 ++--
rtt/internal/InvokerBase.hpp | 2 +-
.../{LocalMethod.hpp => LocalOperationCaller.hpp} | 60 ++++----
...{MethodBinder.hpp => OperationCallerBinder.hpp} | 28 ++--
rtt/internal/{MethodC.cpp => OperationCallerC.cpp} | 60 ++++----
rtt/internal/{MethodC.hpp => OperationCallerC.hpp} | 42 +++---
rtt/internal/OperationRepositoryPartFused.hpp | 12 +-
...{RemoteMethod.hpp => RemoteOperationCaller.hpp} | 78 +++++-----
rtt/internal/SendHandleC.hpp | 4 +-
rtt/internal/rtt-internal-fwd.hpp | 16 +-
rtt/marsh/Marshalling.cpp | 14 +-
rtt/marsh/Marshalling.hpp | 16 +-
rtt/marsh/MarshallingService.cpp | 2 +-
rtt/rtt-fwd.hpp | 2 +-
rtt/scripting/ProgramService.cpp | 6 +-
rtt/scripting/Scripting.cpp | 78 +++++-----
rtt/scripting/Scripting.hpp | 80 +++++-----
rtt/scripting/ScriptingService.cpp | 18 +-
rtt/scripting/ScriptingService.hpp | 4 +-
rtt/scripting/StateMachineService.cpp | 8 +-
rtt/scripting/StateMachineService.hpp | 2 +-
...Factory.cpp => CorbaOperationCallerFactory.cpp} | 62 ++++----
...Factory.hpp => CorbaOperationCallerFactory.hpp} | 10 +-
rtt/transports/corba/OperationRepositoryI.cpp | 8 +-
rtt/transports/corba/ServiceRequester.idl | 4 +-
rtt/transports/corba/ServiceRequesterI.cpp | 6 +-
rtt/transports/corba/ServiceRequesterI.h | 2 +-
rtt/transports/corba/TaskContextI.cpp | 2 +-
rtt/transports/corba/TaskContextProxy.cpp | 6 +-
src/MarshallingAccess.cpp | 18 +-
tests/attributes_test.cpp | 2 +-
tests/corba_ipc_server.cpp | 4 +-
tests/corba_ipc_test.cpp | 24 ++--
tests/corba_test.cpp | 28 ++--
tests/corba_test.hpp | 8 +-
tests/dispatch_test.cpp | 4 +-
tests/function_test.cpp | 10 +-
tests/functors_test.cpp | 64 ++++----
tests/generictask_test.cpp | 82 +++++-----
tests/generictask_test.hpp | 18 +-
tests/method_test.cpp | 98 ++++++------
tests/operation_test.cpp | 18 +-
tests/operations_fixture.cpp | 6 +-
tests/operations_fixture.hpp | 2 +-
tests/ports_test.cpp | 8 +-
tests/program_test.cpp | 2 +-
tests/remote_method_test.cpp | 58 ++++----
tests/service_test.cpp | 48 +++---
tests/state_test.cpp | 12 +-
tests/taskstates_test.cpp | 2 +-
tests/types_test.cpp | 6 +-
tests/types_test.hpp | 2 +-
86 files changed, 801 insertions(+), 801 deletions(-)
rename rtt/{Method.hpp => OperationCaller.hpp} (61%)
rename rtt/base/{MethodBase.hpp => OperationCallerBase.hpp} (90%)
rename rtt/base/{MethodBaseInvoker.hpp => OperationCallerBaseInvoker.hpp} (86%)
rename rtt/internal/{LocalMethod.hpp => LocalOperationCaller.hpp} (90%)
rename rtt/internal/{MethodBinder.hpp => OperationCallerBinder.hpp} (89%)
rename rtt/internal/{MethodC.cpp => OperationCallerC.cpp} (79%)
rename rtt/internal/{MethodC.hpp => OperationCallerC.hpp} (83%)
rename rtt/internal/{RemoteMethod.hpp => RemoteOperationCaller.hpp} (81%)
rename rtt/transports/corba/{CorbaMethodFactory.cpp => CorbaOperationCallerFactory.cpp} (79%)
rename rtt/transports/corba/{CorbaMethodFactory.hpp => CorbaOperationCallerFactory.hpp} (91%)

Preparing rc1

On Thu, Aug 12, 2010 at 4:14 PM, Markus Klotzbuecher
<markus [dot] klotzbuecher [..] ...> wrote:
> On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
>> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
>> > We've decided during the dev meeting that some changes need to be done
>> >  before we release. These are (from the wiki):
>> ...
>> >
>> > f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to

[quote from Peters orig mail...]
Method didn't explain it and was probably too confusing to
newcomers and even for 1.x users
[/quote]

> Here comes Method -> OperationCaller. It wipes the existence of
> "Method" from rtt.

So, IIUC, you guys thought OperationCaller would be _more_
selfexplaining for newcomers and existing users than Method?
To me, an OperationCaller seems "somebody" (active) that calls
operations. Which is _not at all_ what I have in mind with method...

Just my 2 cents (I know I'm hopelessly late with this email, but
Peter's orig email was probably far too long to read when just
returning from holidays :-)...

Klaas
--
Orocos-Dev mailing list
Orocos-Dev [..] ...
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev

Preparing rc1

On Thursday 12 August 2010 16:29:24 Klaas Gadeyne wrote:
> On Thu, Aug 12, 2010 at 4:14 PM, Markus Klotzbuecher
>
> <markus [dot] klotzbuecher [..] ...> wrote:
> > On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
> >> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
> >> > We've decided during the dev meeting that some changes need to be done
> >> > before we release. These are (from the wiki):
> >>
> >> ...
> >>
> >> > f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
>
> [quote from Peters orig mail...]
> Method didn't explain it and was probably too confusing to
> newcomers and even for 1.x users
> [/quote]
>
> > Here comes Method -> OperationCaller. It wipes the existence of
> > "Method" from rtt.
>
> So, IIUC, you guys thought OperationCaller would be _more_
> selfexplaining for newcomers and existing users than Method?
> To me, an OperationCaller seems "somebody" (active) that calls
> operations. Which is _not at all_ what I have in mind with method...

You're actually pretty close. It's the proxy you need that does the (remote)
call on an operation:

OperationCaller<bool(string)> call_foo;
call_foo = peer->operations()->getOperation("foo");
bool ret = call_foo("bar");

Peter

Preparing rc1

On Thu, Aug 12, 2010 at 4:52 PM, Peter Soetens <peter [..] ...> wrote:
> On Thursday 12 August 2010 16:29:24 Klaas Gadeyne wrote:
>> On Thu, Aug 12, 2010 at 4:14 PM, Markus Klotzbuecher
>>
>> <markus [dot] klotzbuecher [..] ...> wrote:
>> > On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
>> >> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
>> >> > We've decided during the dev meeting that some changes need to be done
>> >> >  before we release. These are (from the wiki):
>> >>
>> >> ...
>> >>
>> >> > f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
>>
>> [quote from Peters orig mail...]
>> Method didn't explain it and was probably too confusing to
>> newcomers and even for 1.x users
>> [/quote]
>>
>> > Here comes Method -> OperationCaller. It wipes the existence of
>> > "Method" from rtt.
>>
>> So, IIUC, you guys thought OperationCaller would be _more_
>> selfexplaining for newcomers and existing users than Method?
>> To me, an OperationCaller seems "somebody" (active) that calls
>> operations.  Which is _not at all_ what I have in mind with method...
>
> You're actually pretty close. It's the proxy you need that does the (remote)
> call on an operation:
>
>

> OperationCaller<bool(string)> call_foo;
> call_foo = peer->operations()->getOperation("foo");
> bool ret = call_foo("bar");
> 

OK. But that would mean that the statement "We will rename 'Method'
to 'OperationCaller'" was at least a huge oversimplification of what
Markus' patch achieves, ie.
the statement does _not_ imply that

MyTaskContext: public TaskContext
{
  // blalba
 
  MyTaskContext::MyTaskContext(std:: blabla)
  {
    // blabla
     this->operations()->addOperationCaller( // blabla)
  }
};
 
Klaas
-- 
Orocos-Dev mailing list
Orocos-Dev@lists.mech.kuleuven.be
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev

Preparing rc1

Hi Klaas,

On Thu, Aug 12, 2010 at 04:29:24PM +0200, Klaas Gadeyne wrote:
> On Thu, Aug 12, 2010 at 4:14 PM, Markus Klotzbuecher
> <markus [dot] klotzbuecher [..] ...> wrote:
> > On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
> >> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
> >> > We've decided during the dev meeting that some changes need to be done
> >> >  before we release. These are (from the wiki):
> >> ...
> >> >
> >> > f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
>
> [quote from Peters orig mail...]
> Method didn't explain it and was probably too confusing to
> newcomers and even for 1.x users
> [/quote]
>
> > Here comes Method -> OperationCaller. It wipes the existence of
> > "Method" from rtt.
>
> So, IIUC, you guys thought OperationCaller would be _more_
> selfexplaining for newcomers and existing users than Method?
> To me, an OperationCaller seems "somebody" (active) that calls
> operations. Which is _not at all_ what I have in mind with method...

No, we realize it is not self explaining, but at least
"OperationCaller" does not suggest the wrong thing. The problem with
'Method' is that is suggest to be a synchronous OO like call, while in
rtt-2.0 it can be both synchronous or asynchronous. Of course ideally
the name does explain the Right Thing. Suggestions welcome...

> Just my 2 cents (I know I'm hopelessly late with this email, but
> Peter's orig email was probably far too long to read when just
> returning from holidays :-)...

:-)

Markus

Preparing rc1

On Thu, 12 Aug 2010, Markus Klotzbuecher wrote:

> Hi Klaas,
>
> On Thu, Aug 12, 2010 at 04:29:24PM +0200, Klaas Gadeyne wrote:
>> On Thu, Aug 12, 2010 at 4:14 PM, Markus Klotzbuecher
>> <markus [dot] klotzbuecher [..] ...> wrote:
>>> On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
>>>> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
>>>>> We've decided during the dev meeting that some changes need to be done
>>>>>  before we release. These are (from the wiki):
>>>> ...
>>>>>
>>>>> f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
>>
>> [quote from Peters orig mail...]
>> Method didn't explain it and was probably too confusing to
>> newcomers and even for 1.x users
>> [/quote]
>>
>>> Here comes Method -> OperationCaller. It wipes the existence of
>>> "Method" from rtt.
>>
>> So, IIUC, you guys thought OperationCaller would be _more_
>> selfexplaining for newcomers and existing users than Method?
>> To me, an OperationCaller seems "somebody" (active) that calls
>> operations. Which is _not at all_ what I have in mind with method...
>
> No, we realize it is not self explaining, but at least
> "OperationCaller" does not suggest the wrong thing. The problem with
> 'Method' is that is suggest to be a synchronous OO like call, while in
> rtt-2.0 it can be both synchronous or asynchronous. Of course ideally
> the name does explain the Right Thing. Suggestions welcome...

So, what you want to describe is a set of _two_ messages, the second one
being a response to the first, but without implying synchronicity?
And you only want to distinguish the name from the "data message" (i.e.,
only one-way), isn't it?
So, "Call", "AcknowledgedMessage" or "TwoWayMessage" would be appropriate
terms (but the latter sound equally awkward as OperationCaller...)

I do think that "Message" should be enough, since the other distinctions
are mere _policy_ properties of the message passing...

Herman

>> Just my 2 cents (I know I'm hopelessly late with this email, but
>> Peter's orig email was probably far too long to read when just
>> returning from holidays :-)...
>
> :-)
>
> Markus

Preparing rc1

On Thu, Aug 12, 2010 at 05:20:17PM +0200, Herman Bruyninckx wrote:
> On Thu, 12 Aug 2010, Markus Klotzbuecher wrote:
>
> > Hi Klaas,
> >
> > On Thu, Aug 12, 2010 at 04:29:24PM +0200, Klaas Gadeyne wrote:
> >> On Thu, Aug 12, 2010 at 4:14 PM, Markus Klotzbuecher
> >> <markus [dot] klotzbuecher [..] ...> wrote:
> >>> On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
> >>>> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
> >>>>> We've decided during the dev meeting that some changes need to be done
> >>>>>  before we release. These are (from the wiki):
> >>>> ...
> >>>>>
> >>>>> f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
> >>
> >> [quote from Peters orig mail...]
> >> Method didn't explain it and was probably too confusing to
> >> newcomers and even for 1.x users
> >> [/quote]
> >>
> >>> Here comes Method -> OperationCaller. It wipes the existence of
> >>> "Method" from rtt.
> >>
> >> So, IIUC, you guys thought OperationCaller would be _more_
> >> selfexplaining for newcomers and existing users than Method?
> >> To me, an OperationCaller seems "somebody" (active) that calls
> >> operations. Which is _not at all_ what I have in mind with method...
> >
> > No, we realize it is not self explaining, but at least
> > "OperationCaller" does not suggest the wrong thing. The problem with
> > 'Method' is that is suggest to be a synchronous OO like call, while in
> > rtt-2.0 it can be both synchronous or asynchronous. Of course ideally
> > the name does explain the Right Thing. Suggestions welcome...
>
> So, what you want to describe is a set of _two_ messages, the second one
> being a response to the first, but without implying synchronicity?
> And you only want to distinguish the name from the "data message" (i.e.,
> only one-way), isn't it?

Almost... but more complicated:
- it may or not be synchronous
- and more importantly: it is only a placeholder for the "real thing"
which will be plugged in during deployment.

> So, "Call", "AcknowledgedMessage" or "TwoWayMessage" would be appropriate
> terms (but the latter sound equally awkward as OperationCaller...)

Its tricky indeed! We had the following candidates on the whiteboard
in Barcelona:

- OperationHandle
- PeerOperation
- RemoteOperation
- OperationCaller
- OperationStub
- only Operation
- OperationProxy
- OperationFacade
- OperationRef

IMO it should be something with Operation to maintain symmetry.

> I do think that "Message" should be enough, since the other distinctions
> are mere _policy_ properties of the message passing...

But a Message is something quite different from what we describe
above, isn't it?

Markus

Preparing rc1

On Fri, 13 Aug 2010, Markus Klotzbuecher wrote:

> On Thu, Aug 12, 2010 at 05:20:17PM +0200, Herman Bruyninckx wrote:
>> On Thu, 12 Aug 2010, Markus Klotzbuecher wrote:
>>
>>> Hi Klaas,
>>>
>>> On Thu, Aug 12, 2010 at 04:29:24PM +0200, Klaas Gadeyne wrote:
>>>> On Thu, Aug 12, 2010 at 4:14 PM, Markus Klotzbuecher
>>>> <markus [dot] klotzbuecher [..] ...> wrote:
>>>>> On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
>>>>>> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
>>>>>>> We've decided during the dev meeting that some changes need to be done
>>>>>>>  before we release. These are (from the wiki):
>>>>>> ...
>>>>>>>
>>>>>>> f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
>>>>
>>>> [quote from Peters orig mail...]
>>>> Method didn't explain it and was probably too confusing to
>>>> newcomers and even for 1.x users
>>>> [/quote]
>>>>
>>>>> Here comes Method -> OperationCaller. It wipes the existence of
>>>>> "Method" from rtt.
>>>>
>>>> So, IIUC, you guys thought OperationCaller would be _more_
>>>> selfexplaining for newcomers and existing users than Method?
>>>> To me, an OperationCaller seems "somebody" (active) that calls
>>>> operations. Which is _not at all_ what I have in mind with method...
>>>
>>> No, we realize it is not self explaining, but at least
>>> "OperationCaller" does not suggest the wrong thing. The problem with
>>> 'Method' is that is suggest to be a synchronous OO like call, while in
>>> rtt-2.0 it can be both synchronous or asynchronous. Of course ideally
>>> the name does explain the Right Thing. Suggestions welcome...
>>
>> So, what you want to describe is a set of _two_ messages, the second one
>> being a response to the first, but without implying synchronicity?
>> And you only want to distinguish the name from the "data message" (i.e.,
>> only one-way), isn't it?
>
> Almost... but more complicated:
> - it may or not be synchronous
> - and more importantly: it is only a placeholder for the "real thing"
> which will be plugged in during deployment.

I have taken these requirements into account in the names below :-) The
names do not specify (a)synchronicity, or virtuality/abstractness of the
communication interface... Or what do you mean by "placeholder"?

>> So, "Call", "AcknowledgedMessage" or "TwoWayMessage" would be appropriate
>> terms (but the latter sound equally awkward as OperationCaller...)
>
> Its tricky indeed! We had the following candidates on the whiteboard
> in Barcelona:
>
> - OperationHandle
> - PeerOperation
> - RemoteOperation
> - OperationCaller
> - OperationStub
> - only Operation
> - OperationProxy
> - OperationFacade
> - OperationRef
>
> IMO it should be something with Operation to maintain symmetry.
>
>> I do think that "Message" should be enough, since the other distinctions
>> are mere _policy_ properties of the message passing...
>
> But a Message is something quite different from what we describe
> above, isn't it?

I do not seem to exactly understand what your guys are looking for
precisely :-) An _abstract interface_ to a two-ways message?

Herman

Preparing rc1

On Fri, Aug 13, 2010 at 09:46:46AM +0200, Herman Bruyninckx wrote:
> On Fri, 13 Aug 2010, Markus Klotzbuecher wrote:
>
> > On Thu, Aug 12, 2010 at 05:20:17PM +0200, Herman Bruyninckx wrote:
> >> On Thu, 12 Aug 2010, Markus Klotzbuecher wrote:
> >>
> >>> Hi Klaas,
> >>>
> >>> On Thu, Aug 12, 2010 at 04:29:24PM +0200, Klaas Gadeyne wrote:
> >>>> On Thu, Aug 12, 2010 at 4:14 PM, Markus Klotzbuecher
> >>>> <markus [dot] klotzbuecher [..] ...> wrote:
> >>>>> On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
> >>>>>> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
> >>>>>>> We've decided during the dev meeting that some changes need to be done
> >>>>>>>  before we release. These are (from the wiki):
> >>>>>> ...
> >>>>>>>
> >>>>>>> f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
> >>>>
> >>>> [quote from Peters orig mail...]
> >>>> Method didn't explain it and was probably too confusing to
> >>>> newcomers and even for 1.x users
> >>>> [/quote]
> >>>>
> >>>>> Here comes Method -> OperationCaller. It wipes the existence of
> >>>>> "Method" from rtt.
> >>>>
> >>>> So, IIUC, you guys thought OperationCaller would be _more_
> >>>> selfexplaining for newcomers and existing users than Method?
> >>>> To me, an OperationCaller seems "somebody" (active) that calls
> >>>> operations. Which is _not at all_ what I have in mind with method...
> >>>
> >>> No, we realize it is not self explaining, but at least
> >>> "OperationCaller" does not suggest the wrong thing. The problem with
> >>> 'Method' is that is suggest to be a synchronous OO like call, while in
> >>> rtt-2.0 it can be both synchronous or asynchronous. Of course ideally
> >>> the name does explain the Right Thing. Suggestions welcome...
> >>
> >> So, what you want to describe is a set of _two_ messages, the second one
> >> being a response to the first, but without implying synchronicity?
> >> And you only want to distinguish the name from the "data message" (i.e.,
> >> only one-way), isn't it?
> >
> > Almost... but more complicated:
> > - it may or not be synchronous
> > - and more importantly: it is only a placeholder for the "real thing"
> > which will be plugged in during deployment.
>
> I have taken these requirements into account in the names below :-) The
> names do not specify (a)synchronicity, or virtuality/abstractness of the
> communication interface... Or what do you mean by "placeholder"?

It's like a function pointer. It can (should) only be invoked and
perform some computation if it actually points to a function. I
actually liked OperationHandle more but the majority of votes went to
OperationCaller.

> >> So, "Call", "AcknowledgedMessage" or "TwoWayMessage" would be appropriate
> >> terms (but the latter sound equally awkward as OperationCaller...)
> >
> > Its tricky indeed! We had the following candidates on the whiteboard
> > in Barcelona:
> >
> > - OperationHandle
> > - PeerOperation
> > - RemoteOperation
> > - OperationCaller
> > - OperationStub
> > - only Operation
> > - OperationProxy
> > - OperationFacade
> > - OperationRef
> >
> > IMO it should be something with Operation to maintain symmetry.
> >
> >> I do think that "Message" should be enough, since the other distinctions
> >> are mere _policy_ properties of the message passing...
> >
> > But a Message is something quite different from what we describe
> > above, isn't it?
>
> I do not seem to exactly understand what your guys are looking for
> precisely :-) An _abstract interface_ to a two-ways message?

Not abstract opposed to concrete, because the entity in question is
concrete. More like a handle which can point to the real thing :-)

Markus

Preparing rc1

On Fri, Aug 13, 2010 at 11:27 AM, Markus Klotzbuecher
<markus [dot] klotzbuecher [..] ...> wrote:
> On Fri, Aug 13, 2010 at 09:46:46AM +0200, Herman Bruyninckx wrote:
>> On Fri, 13 Aug 2010, Markus Klotzbuecher wrote:
>>
>> > On Thu, Aug 12, 2010 at 05:20:17PM +0200, Herman Bruyninckx wrote:
>> >> On Thu, 12 Aug 2010, Markus Klotzbuecher wrote:
>> >>
>> >>> Hi Klaas,
>> >>>
>> >>> On Thu, Aug 12, 2010 at 04:29:24PM +0200, Klaas Gadeyne wrote:
>> >>>> On Thu, Aug 12, 2010 at 4:14 PM, Markus Klotzbuecher
>> >>>> <markus [dot] klotzbuecher [..] ...> wrote:
>> >>>>> On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
>> >>>>>> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
>> >>>>>>> We've decided during the dev meeting that some changes need to be done
>> >>>>>>>  before we release. These are (from the wiki):
>> >>>>>> ...
>> >>>>>>>
>> >>>>>>> f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
>> >>>>
>> >>>> [quote from Peters orig mail...]
>> >>>> Method didn't explain it and was probably too confusing to
>> >>>> newcomers and even for 1.x users
>> >>>> [/quote]
>> >>>>
>> >>>>> Here comes Method -> OperationCaller. It wipes the existence of
>> >>>>> "Method" from rtt.
>> >>>>
>> >>>> So, IIUC, you guys thought OperationCaller would be _more_
>> >>>> selfexplaining for newcomers and existing users than Method?
>> >>>> To me, an OperationCaller seems "somebody" (active) that calls
>> >>>> operations.  Which is _not at all_ what I have in mind with method...
>> >>>
>> >>> No, we realize it is not self explaining, but at least
>> >>> "OperationCaller" does not suggest the wrong thing. The problem with
>> >>> 'Method' is that is suggest to be a synchronous OO like call, while in
>> >>> rtt-2.0 it can be both synchronous or asynchronous. Of course ideally
>> >>> the name does explain the Right Thing. Suggestions welcome...
>> >>
>> >> So, what you want to describe is a set of _two_ messages, the second one
>> >> being a response to the first, but without implying synchronicity?
>> >> And you only want to distinguish the name from the "data message" (i.e.,
>> >> only one-way), isn't it?
>> >
>> > Almost... but more complicated:
>> > - it may or not be synchronous
>> > - and more importantly: it is only a placeholder for the "real thing"
>> >   which will be plugged in during deployment.
>>
>> I have taken these requirements into account in the names below :-) The
>> names do not specify (a)synchronicity, or virtuality/abstractness of the
>> communication interface... Or what do you mean by "placeholder"?
>
> It's like a function pointer. It can (should) only be invoked and
> perform some computation if it actually points to a function. I
> actually liked OperationHandle more but the majority of votes went to
> OperationCaller.

'OperationHandle' would be more in line with 'SendHandle' and plain
'Handle' of Signal(former Event). The latter would better be renamed
to 'SignalHandle' anyway...

I believe Caller was prefered over Handle because it expressed better
what the object did. A Handle is more abstract. The most consensus
existed over the idea that the word 'Operation' had to be in there in
order to reflect its relation to the Operation primitive.

I don't really remember voting btw.

Peter
--
Orocos-Dev mailing list
Orocos-Dev [..] ...
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev

Preparing rc1

On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
> > We've decided during the dev meeting that some changes need to be done
> > before we release. These are (from the wiki):
> ...
> >
> > f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
> > 'Service'. Method didn't explain it and was probably too confusing to
> > newcomers and even for 1.x users. Also, the 'RTT::interface' namespace will
> > go away and classes will move in the main RTT namespace. All occurences of
> > '*Repository' will be renamed to '*Interface' (like DataFlowInterface).
> > AttributeRepository will be renamed to ConfigurationInterface. So you'll
> > have: Service inherits from ConfigurationInterface, OperationInterface and
> > DataFlowInterface. Oh yes, DataFlowInterface moves from TaskContext to
> > Service. As a consequence, TaskContext becomes only an execution container
> > with some states and a default Service.
> > The RTT::base namespace will be thinned. Most will move to internal, except
> > some key base classes users will be exposed to. These are:
> > ActivityInterface, AttributeBase, (Input/Ouput)PortInterface,
> > OperationBase, PropertyBase, RunnableInterface, ExecutableInterface,
> > DisposableInterface, TaskCore.
>
> Any volunteers for this part ?

I sent you a first merge request for the patch "Rename ServiceProvider
to Service". It compiles and the all unit tests pass except
"property_loader_test" but which failed before the change already.

Diffstat follows.

Best regards
Markus

rtt/InputPort.hpp | 6 +-
rtt/Method.hpp | 10 +-
rtt/OutputPort.hpp | 6 +-
rtt/TaskContext.cpp | 6 +-
rtt/TaskContext.hpp | 20 +-
rtt/base/PortInterface.cpp | 6 +-
rtt/base/PortInterface.hpp | 2 +-
rtt/interface/DataFlowInterface.cpp | 18 +-
rtt/interface/DataFlowInterface.hpp | 6 +-
rtt/interface/Service.cpp | 179 +++++++++++++
rtt/interface/Service.hpp | 329 ++++++++++++++++++++++++
rtt/interface/ServiceProvider.cpp | 179 -------------
rtt/interface/ServiceProvider.hpp | 329 ------------------------
rtt/interface/ServiceRequester.cpp | 4 +-
rtt/interface/ServiceRequester.hpp | 16 +-
rtt/interface/rtt-interface-fwd.hpp | 4 +-
rtt/internal/MethodC.cpp | 2 +-
rtt/internal/MethodC.hpp | 2 +-
rtt/internal/SendHandleC.cpp | 2 +-
rtt/marsh/MarshallingService.cpp | 2 +-
rtt/marsh/MarshallingService.hpp | 4 +-
rtt/plugin/ServicePlugin.hpp | 14 +-
rtt/scripting/ArgumentsParser.cpp | 2 +-
rtt/scripting/ArgumentsParser.hpp | 6 +-
rtt/scripting/DumpObject.cpp | 6 +-
rtt/scripting/DumpObject.hpp | 4 +-
rtt/scripting/ExpressionParser.cpp | 6 +-
rtt/scripting/FunctionGraph.cpp | 4 +-
rtt/scripting/FunctionGraph.hpp | 4 +-
rtt/scripting/ParsedStateMachine.cpp | 20 +-
rtt/scripting/ParsedStateMachine.hpp | 4 +-
rtt/scripting/PeerParser.cpp | 2 +-
rtt/scripting/PeerParser.hpp | 6 +-
rtt/scripting/ProgramGraphParser.cpp | 4 +-
rtt/scripting/ProgramGraphParser.hpp | 6 +-
rtt/scripting/ProgramService.cpp | 4 +-
rtt/scripting/ProgramService.hpp | 6 +-
rtt/scripting/ScriptingService.cpp | 6 +-
rtt/scripting/ScriptingService.hpp | 4 +-
rtt/scripting/StateGraphParser.cpp | 22 +-
rtt/scripting/StateGraphParser.hpp | 4 +-
rtt/scripting/StateMachine.cpp | 4 +-
rtt/scripting/StateMachine.hpp | 6 +-
rtt/scripting/StateMachineService.cpp | 6 +-
rtt/scripting/StateMachineService.hpp | 8 +-
rtt/scripting/ValueChangeParser.cpp | 6 +-
rtt/scripting/ValueChangeParser.hpp | 8 +-
rtt/scripting/ValueParser.cpp | 4 +-
rtt/transports/corba/CorbaLib.cpp | 4 +-
rtt/transports/corba/CorbaMethodFactory.cpp | 14 +-
rtt/transports/corba/CorbaMethodFactory.hpp | 8 +-
rtt/transports/corba/CorbaTemplateProtocol.hpp | 6 +-
rtt/transports/corba/CorbaTypeTransporter.hpp | 6 +-
rtt/transports/corba/DataSourceProxy.hpp | 16 +-
rtt/transports/corba/Service.idl | 54 ++++
rtt/transports/corba/ServiceI.cpp | 97 +++++++
rtt/transports/corba/ServiceI.h | 96 +++++++
rtt/transports/corba/ServiceProvider.idl | 54 ----
rtt/transports/corba/ServiceProviderI.cpp | 97 -------
rtt/transports/corba/ServiceProviderI.h | 96 -------
rtt/transports/corba/ServiceRequester.idl | 4 +-
rtt/transports/corba/ServiceRequesterI.cpp | 2 +-
rtt/transports/corba/ServiceRequesterI.h | 2 +-
rtt/transports/corba/TaskContext.idl | 4 +-
rtt/transports/corba/TaskContextI.cpp | 16 +-
rtt/transports/corba/TaskContextI.h | 6 +-
rtt/transports/corba/TaskContextProxy.cpp | 10 +-
rtt/transports/corba/TaskContextProxy.hpp | 2 +-
tests/corba_ipc_server.cpp | 4 +-
tests/corba_ipc_test.cpp | 6 +-
tests/corba_test.cpp | 6 +-
tests/corba_test.hpp | 2 +-
tests/dispatch_test.cpp | 6 +-
tests/dispatch_test.hpp | 2 +-
tests/function_test.cpp | 2 +-
tests/functors_test.cpp | 8 +-
tests/generictask_test.cpp | 14 +-
tests/generictask_test.hpp | 2 +-
tests/method_test.cpp | 6 +-
tests/mqueue_ipc_server.cpp | 2 +-
tests/mqueue_ipc_test.cpp | 2 +-
tests/mqueue_test.cpp | 2 +-
tests/operation_test.cpp | 8 +-
tests/operations_fixture.cpp | 6 +-
tests/plugins/plugins_test_services.cpp | 6 +-
tests/program_test.cpp | 2 +-
tests/remote_method_test.cpp | 6 +-
tests/service_test.cpp | 2 +-
tests/state_test.cpp | 2 +-
tests/types_test.cpp | 8 +-
tests/types_test.hpp | 2 +-
91 files changed, 1004 insertions(+), 1004 deletions(-)

Preparing rc1

On Sun, Aug 08, 2010 at 08:31:14PM +0200, Markus Klotzbuecher wrote:
> On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
> > On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
> > > We've decided during the dev meeting that some changes need to be done
> > > before we release. These are (from the wiki):
> > ...
> > >
> > > f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
> > > 'Service'. Method didn't explain it and was probably too confusing to
> > > newcomers and even for 1.x users. Also, the 'RTT::interface' namespace will
> > > go away and classes will move in the main RTT namespace. All occurences of
> > > '*Repository' will be renamed to '*Interface' (like DataFlowInterface).
> > > AttributeRepository will be renamed to ConfigurationInterface. So you'll
> > > have: Service inherits from ConfigurationInterface, OperationInterface and
> > > DataFlowInterface. Oh yes, DataFlowInterface moves from TaskContext to
> > > Service. As a consequence, TaskContext becomes only an execution container
> > > with some states and a default Service.
> > > The RTT::base namespace will be thinned. Most will move to internal, except
> > > some key base classes users will be exposed to. These are:
> > > ActivityInterface, AttributeBase, (Input/Ouput)PortInterface,
> > > OperationBase, PropertyBase, RunnableInterface, ExecutableInterface,
> > > DisposableInterface, TaskCore.
> >
> > Any volunteers for this part ?
>
> I sent you a first merge request for the patch "Rename ServiceProvider
> to Service". It compiles and the all unit tests pass except
> "property_loader_test" but which failed before the change already.

New merge request which supersedes the previous one. Compiles and unit
tests pass except the mentioned one.

Best regards
Markus

The following changes since commit 4d926a302032d817cd50fb4849af3301df7deb6c:

Merge branch 'rtt-2.0-mainline-operation-fixing' into master-gitorious (2010-08-05 11:08:45 +0200)

are available in the git repository at:

http://git.gitorious.org/~markusk/orocos-toolchain/rtt-mk.git towards-2.0

Markus Klotzbuecher (2):
Rename ServiceProvider to Service
Rename AttributeRepository to ConfigurationInterface

doc/xml/orocos-task-context.xml | 2 +-
doc/xml/orocos-transports-corba.xml | 4 +-
rtt/InputPort.hpp | 6 +-
rtt/Method.hpp | 10 ++--
rtt/OutputPort.hpp | 6 +-
rtt/TaskContext.cpp | 6 +-
rtt/TaskContext.hpp | 26 ++++----
rtt/base/PortInterface.cpp | 6 +-
rtt/base/PortInterface.hpp | 2 +-
...teRepository.cpp => ConfigurationInterface.cpp} | 38 ++++++------
...teRepository.hpp => ConfigurationInterface.hpp} | 14 ++--
rtt/interface/DataFlowInterface.cpp | 18 +++---
rtt/interface/DataFlowInterface.hpp | 6 +-
rtt/interface/{ServiceProvider.cpp => Service.cpp} | 50 ++++++++--------
rtt/interface/{ServiceProvider.hpp => Service.hpp} | 22 ++++----
rtt/interface/ServiceRequester.cpp | 4 +-
rtt/interface/ServiceRequester.hpp | 16 +++---
rtt/interface/rtt-interface-fwd.hpp | 6 +-
rtt/internal/MethodC.cpp | 2 +-
rtt/internal/MethodC.hpp | 2 +-
rtt/internal/SendHandleC.cpp | 2 +-
rtt/marsh/MarshallingService.cpp | 2 +-
rtt/marsh/MarshallingService.hpp | 4 +-
rtt/plugin/ServicePlugin.hpp | 14 ++--
rtt/scripting/ArgumentsParser.cpp | 2 +-
rtt/scripting/ArgumentsParser.hpp | 6 +-
rtt/scripting/DumpObject.cpp | 6 +-
rtt/scripting/DumpObject.hpp | 4 +-
rtt/scripting/ExpressionParser.cpp | 10 ++--
rtt/scripting/FunctionGraph.cpp | 4 +-
rtt/scripting/FunctionGraph.hpp | 4 +-
rtt/scripting/ParsedStateMachine.cpp | 20 +++---
rtt/scripting/ParsedStateMachine.hpp | 4 +-
rtt/scripting/PeerParser.cpp | 2 +-
rtt/scripting/PeerParser.hpp | 6 +-
rtt/scripting/ProgramGraphParser.cpp | 4 +-
rtt/scripting/ProgramGraphParser.hpp | 6 +-
rtt/scripting/ProgramService.cpp | 4 +-
rtt/scripting/ProgramService.hpp | 6 +-
rtt/scripting/ScriptingService.cpp | 6 +-
rtt/scripting/ScriptingService.hpp | 4 +-
rtt/scripting/StateGraphParser.cpp | 22 ++++----
rtt/scripting/StateGraphParser.hpp | 4 +-
rtt/scripting/StateMachine.cpp | 4 +-
rtt/scripting/StateMachine.hpp | 6 +-
rtt/scripting/StateMachineService.cpp | 8 +-
rtt/scripting/StateMachineService.hpp | 8 +-
rtt/scripting/ValueChangeParser.cpp | 6 +-
rtt/scripting/ValueChangeParser.hpp | 8 +-
rtt/scripting/ValueParser.cpp | 4 +-
rtt/scripting/ValueParser.hpp | 2 +-
...teRepository.idl => ConfigurationInterface.idl} | 2 +-
...RepositoryI.cpp => ConfigurationInterfaceI.cpp} | 64 ++++++++++----------
...buteRepositoryI.h => ConfigurationInterfaceI.h} | 24 ++++----
rtt/transports/corba/CorbaConversion.hpp | 2 +-
rtt/transports/corba/CorbaLib.cpp | 4 +-
rtt/transports/corba/CorbaMethodFactory.cpp | 14 ++--
rtt/transports/corba/CorbaMethodFactory.hpp | 8 +-
rtt/transports/corba/CorbaTemplateProtocol.hpp | 6 +-
rtt/transports/corba/CorbaTypeTransporter.hpp | 6 +-
rtt/transports/corba/DataSourceProxy.hpp | 16 +++---
.../corba/{ServiceProvider.idl => Service.idl} | 6 +-
.../corba/{ServiceProviderI.cpp => ServiceI.cpp} | 38 ++++++------
.../corba/{ServiceProviderI.h => ServiceI.h} | 26 ++++----
rtt/transports/corba/ServiceRequester.idl | 4 +-
rtt/transports/corba/ServiceRequesterI.cpp | 2 +-
rtt/transports/corba/ServiceRequesterI.h | 2 +-
rtt/transports/corba/TaskContext.idl | 4 +-
rtt/transports/corba/TaskContextI.cpp | 16 +++---
rtt/transports/corba/TaskContextI.h | 6 +-
rtt/transports/corba/TaskContextProxy.cpp | 14 ++--
rtt/transports/corba/TaskContextProxy.hpp | 2 +-
rtt/types/GlobalsRepository.hpp | 6 +-
tests/corba_ipc_server.cpp | 4 +-
tests/corba_ipc_test.cpp | 6 +-
tests/corba_test.cpp | 6 +-
tests/corba_test.hpp | 2 +-
tests/dispatch_test.cpp | 6 +-
tests/dispatch_test.hpp | 2 +-
tests/function_test.cpp | 2 +-
tests/functors_test.cpp | 8 +-
tests/generictask_test.cpp | 14 ++--
tests/generictask_test.hpp | 2 +-
tests/method_test.cpp | 6 +-
tests/mqueue_ipc_server.cpp | 2 +-
tests/mqueue_ipc_test.cpp | 2 +-
tests/mqueue_test.cpp | 2 +-
tests/operation_test.cpp | 8 +-
tests/operations_fixture.cpp | 6 +-
tests/plugins/plugins_test_services.cpp | 6 +-
tests/program_test.cpp | 2 +-
tests/remote_method_test.cpp | 6 +-
tests/service_test.cpp | 2 +-
tests/state_test.cpp | 2 +-
tests/types_test.cpp | 8 +-
tests/types_test.hpp | 2 +-
96 files changed, 408 insertions(+), 408 deletions(-)
rename rtt/interface/{AttributeRepository.cpp => ConfigurationInterface.cpp} (77%)
rename rtt/interface/{AttributeRepository.hpp => ConfigurationInterface.hpp} (95%)
rename rtt/interface/{ServiceProvider.cpp => Service.cpp} (70%)
rename rtt/interface/{ServiceProvider.hpp => Service.hpp} (94%)
rename rtt/transports/corba/{AttributeRepository.idl => ConfigurationInterface.idl} (98%)
rename rtt/transports/corba/{AttributeRepositoryI.cpp => ConfigurationInterfaceI.cpp} (70%)
rename rtt/transports/corba/{AttributeRepositoryI.h => ConfigurationInterfaceI.h} (78%)
rename rtt/transports/corba/{ServiceProvider.idl => Service.idl} (84%)
rename rtt/transports/corba/{ServiceProviderI.cpp => ServiceI.cpp} (55%)
rename rtt/transports/corba/{ServiceProviderI.h => ServiceI.h} (70%)

Preparing rc1

On Mon, Aug 02, 2010 at 05:44:10PM +0200, Peter Soetens wrote:
> On Monday 02 August 2010 11:12:06 Peter Soetens wrote:
> > We've decided during the dev meeting that some changes need to be done
> > before we release. These are (from the wiki):
> ...
> >
> > f. We will rename 'Method' to 'OperationCaller'; 'ServiceProvider' to
> > 'Service'. Method didn't explain it and was probably too confusing to
> > newcomers and even for 1.x users. Also, the 'RTT::interface' namespace will
> > go away and classes will move in the main RTT namespace. All occurences of
> > '*Repository' will be renamed to '*Interface' (like DataFlowInterface).
> > AttributeRepository will be renamed to ConfigurationInterface. So you'll
> > have: Service inherits from ConfigurationInterface, OperationInterface and
> > DataFlowInterface. Oh yes, DataFlowInterface moves from TaskContext to
> > Service. As a consequence, TaskContext becomes only an execution container
> > with some states and a default Service.
> > The RTT::base namespace will be thinned. Most will move to internal, except
> > some key base classes users will be exposed to. These are:
> > ActivityInterface, AttributeBase, (Input/Ouput)PortInterface,
> > OperationBase, PropertyBase, RunnableInterface, ExecutableInterface,
> > DisposableInterface, TaskCore.
>
> Any volunteers for this part ?

I'll help with this, but I can't promise I'll manage all in time...

Markus

Preparing rc1

About the webpage.
We have a person (from India) that works quite well with Drupal and he
did for us the webpage www.lifeintheroboticslab.com
The whole website costed less than 200 USD to be done.
One rule we have here is: "don't ask software engineers to do the job
of a system administrator". In other words, I believe that it is a
good idea to revamp the website, but developers of orocos spuld spend
their time doing something else.
Can you prepare a description of what you need to get a fixed-price
quotation? If it is not too much, may be we (Pal Robotics) can take
care of it.

Davide

Preparing rc1

On Monday 02 August 2010 14:37:15 Davide Faconti wrote:
> About the webpage.
> We have a person (from India) that works quite well with Drupal and he
> did for us the webpage www.lifeintheroboticslab.com
> The whole website costed less than 200 USD to be done.
> One rule we have here is: "don't ask software engineers to do the job
> of a system administrator". In other words, I believe that it is a
> good idea to revamp the website, but developers of orocos spuld spend
> their time doing something else.
> Can you prepare a description of what you need to get a fixed-price
> quotation? If it is not too much, may be we (Pal Robotics) can take
> care of it.

Thanks for leading the way here ! There are some major changes that need to be
done:
1) Problem: to many links show up and they are hard to maintain when new
releases are made.
Solution: restructure the site such that the right links show up at the right
time/place + Have an automatic system to 'release to the website' such that
links and version numbers etc are automatically updated but that old releases
are still available.
2) Create a new front page for the Orocos Toolchain project which will
replace the RTT + OCL pages.
Such that both beginners and advanced users get a good impression and quickly
find their way to code and docs. We need to look into how BFL, KDL, Simulink
toolbox etc are given a place here.
3) Problem: the theme/style is very rough, too much white, not showing the
structure of a page or navigation (missing top page navigation bar like in
your example)
Solution: Add a navigation bar, only use one links column (where
applicable/necessary) and restyle/theme the rest, especially the CSS, but also
the theme rendering code. Change the looks when you're on the Wiki, Forum or
the standard content pages.
4) Problem: some documentation is generated from tools. How to integrate
these ?
Solution: there is an import_html feature in Drupal, but its a manual process
and hard to get right. Today we just link to these documents, but then you can
not search them using the web 'Search' box. You should be able to search the
content site, forum, wiki or these generated documents.

Stephen took some pictures of whiteboard drawings showing all this. We depend
on Drupal (release 6 today) because of the integrated forum, wiki and
mailinglist management. The forum and wiki have some bugs though which are
quite annoying.

I want to sit together with the BFL/KDL maintainers to see how they see the
revamp.

I liked Drupal because it was an all-in-one solution. The disadvantage is that
it always underperforms with respect to specialised solutions such as a true
'MediaWiki' wiki or a website forum software.

Peter

Preparing rc1

On Mon, 2 Aug 2010, Davide Faconti wrote:

> About the webpage.
> We have a person (from India) that works quite well with Drupal and he
> did for us the webpage www.lifeintheroboticslab.com
> The whole website costed less than 200 USD to be done.
> One rule we have here is: "don't ask software engineers to do the job
> of a system administrator". In other words, I believe that it is a
> good idea to revamp the website, but developers of orocos spuld spend
> their time doing something else.
> Can you prepare a description of what you need to get a fixed-price
> quotation? If it is not too much, may be we (Pal Robotics) can take
> care of it.
>

Good suggestion! Also K.U.Leuven can pay a part of the costs.

Herman