<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>src/CommandInterface.cpp</filename>
    </added>
    <added>
      <filename>src/corba/ExecutionEngineI.cpp</filename>
    </added>
    <added>
      <filename>src/corba/ExecutionEngineI.h</filename>
    </added>
    <added>
      <filename>src/os/straits.cpp</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,400 +1,221 @@
+		    GNU GENERAL PUBLIC LICENSE
+		       Version 2, June 1991
 
-                  GNU LESSER GENERAL PUBLIC LICENSE
-                       Version 2.1, February 1999
-
- Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
      59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.
 
-[This is the first released version of the Lesser GPL.  It also counts
- as the successor of the GNU Library Public License, version 2, hence
- the version number 2.1.]
-
-                            Preamble
+			    Preamble
 
   The licenses for most software are designed to take away your
 freedom to share and change it.  By contrast, the GNU General Public
-Licenses are intended to guarantee your freedom to share and change
-free software--to make sure the software is free for all its users.
-
-  This license, the Lesser General Public License, applies to some
-specially designated software packages--typically libraries--of the
-Free Software Foundation and other authors who decide to use it.  You
-can use it too, but we suggest you first think carefully about whether
-this license or the ordinary General Public License is the better
-strategy to use in any particular case, based on the explanations
-below.
-
-  When we speak of free software, we are referring to freedom of use,
-not price.  Our General Public Licenses are designed to make sure that
-you have the freedom to distribute copies of free software (and charge
-for this service if you wish); that you receive source code or can get
-it if you want it; that you can change the software and use pieces of
-it in new free programs; and that you are informed that you can do
-these things.
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
 
   To protect your rights, we need to make restrictions that forbid
-distributors to deny you these rights or to ask you to surrender these
-rights.  These restrictions translate to certain responsibilities for
-you if you distribute copies of the library or if you modify it.
-
-  For example, if you distribute copies of the library, whether gratis
-or for a fee, you must give the recipients all the rights that we gave
-you.  You must make sure that they, too, receive or can get the source
-code.  If you link other code with the library, you must provide
-complete object files to the recipients, so that they can relink them
-with the library after making changes to the library and recompiling
-it.  And you must show them these terms so they know their rights.
-
-  We protect your rights with a two-step method: (1) we copyright the
-library, and (2) we offer you this license, which gives you legal
-permission to copy, distribute and/or modify the library.
-
-  To protect each distributor, we want to make it very clear that
-there is no warranty for the free library.  Also, if the library is
-modified by someone else and passed on, the recipients should know
-that what they have is not the original version, so that the original
-author's reputation will not be affected by problems that might be
-introduced by others.
-*
-  Finally, software patents pose a constant threat to the existence of
-any free program.  We wish to make sure that a company cannot
-effectively restrict the users of a free program by obtaining a
-restrictive license from a patent holder.  Therefore, we insist that
-any patent license obtained for a version of the library must be
-consistent with the full freedom of use specified in this license.
-
-  Most GNU software, including some libraries, is covered by the
-ordinary GNU General Public License.  This license, the GNU Lesser
-General Public License, applies to certain designated libraries, and
-is quite different from the ordinary General Public License.  We use
-this license for certain libraries in order to permit linking those
-libraries into non-free programs.
-
-  When a program is linked with a library, whether statically or using
-a shared library, the combination of the two is legally speaking a
-combined work, a derivative of the original library.  The ordinary
-General Public License therefore permits such linking only if the
-entire combination fits its criteria of freedom.  The Lesser General
-Public License permits more lax criteria for linking other code with
-the library.
-
-  We call this license the &quot;Lesser&quot; General Public License because it
-does Less to protect the user's freedom than the ordinary General
-Public License.  It also provides other free software developers Less
-of an advantage over competing non-free programs.  These disadvantages
-are the reason we use the ordinary General Public License for many
-libraries.  However, the Lesser license provides advantages in certain
-special circumstances.
-
-  For example, on rare occasions, there may be a special need to
-encourage the widest possible use of a certain library, so that it
-becomes a de-facto standard.  To achieve this, non-free programs must
-be allowed to use the library.  A more frequent case is that a free
-library does the same job as widely used non-free libraries.  In this
-case, there is little to gain by limiting the free library to free
-software only, so we use the Lesser General Public License.
-
-  In other cases, permission to use a particular library in non-free
-programs enables a greater number of people to use a large body of
-free software.  For example, permission to use the GNU C Library in
-non-free programs enables many more people to use the whole GNU
-operating system, as well as its variant, the GNU/Linux operating
-system.
-
-  Although the Lesser General Public License is Less protective of the
-users' freedom, it does ensure that the user of a program that is
-linked with the Library has the freedom and the wherewithal to run
-that program using a modified version of the Library.
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
 
   The precise terms and conditions for copying, distribution and
-modification follow.  Pay close attention to the difference between a
-&quot;work based on the library&quot; and a &quot;work that uses the library&quot;.  The
-former contains code derived from the library, whereas the latter must
-be combined with the library in order to run.
+modification follow.
 *
-                  GNU LESSER GENERAL PUBLIC LICENSE
+		    GNU GENERAL PUBLIC LICENSE
    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
 
-  0. This License Agreement applies to any software library or other
-program which contains a notice placed by the copyright holder or
-other authorized party saying it may be distributed under the terms of
-this Lesser General Public License (also called &quot;this License&quot;).
-Each licensee is addressed as &quot;you&quot;.
-
-  A &quot;library&quot; means a collection of software functions and/or data
-prepared so as to be conveniently linked with application programs
-(which use some of those functions and data) to form executables.
-
-  The &quot;Library&quot;, below, refers to any such software library or work
-which has been distributed under these terms.  A &quot;work based on the
-Library&quot; means either the Library or any derivative work under
-copyright law: that is to say, a work containing the Library or a
-portion of it, either verbatim or with modifications and/or translated
-straightforwardly into another language.  (Hereinafter, translation is
-included without limitation in the term &quot;modification&quot;.)
-
-  &quot;Source code&quot; for a work means the preferred form of the work for
-making modifications to it.  For a library, complete source code means
-all the source code for all modules it contains, plus any associated
-interface definition files, plus the scripts used to control
-compilation and installation of the library.
-
-  Activities other than copying, distribution and modification are not
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The &quot;Program&quot;, below,
+refers to any such program or work, and a &quot;work based on the Program&quot;
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term &quot;modification&quot;.)  Each licensee is addressed as &quot;you&quot;.
+
+Activities other than copying, distribution and modification are not
 covered by this License; they are outside its scope.  The act of
-running a program using the Library is not restricted, and output from
-such a program is covered only if its contents constitute a work based
-on the Library (independent of the use of the Library in a tool for
-writing it).  Whether that is true depends on what the Library does
-and what the program that uses the Library does.
-
-  1. You may copy and distribute verbatim copies of the Library's
-complete source code as you receive it, in any medium, provided that
-you conspicuously and appropriately publish on each copy an
-appropriate copyright notice and disclaimer of warranty; keep intact
-all the notices that refer to this License and to the absence of any
-warranty; and distribute a copy of this License along with the
-Library.
-
-  You may charge a fee for the physical act of transferring a copy,
-and you may at your option offer warranty protection in exchange for a
-fee.
-*
-  2. You may modify your copy or copies of the Library or any portion
-of it, thus forming a work based on the Library, and copy and
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
 distribute such modifications or work under the terms of Section 1
 above, provided that you also meet all of these conditions:
 
-    a) The modified work must itself be a software library.
-
-    b) You must cause the files modified to carry prominent notices
+    a) You must cause the modified files to carry prominent notices
     stating that you changed the files and the date of any change.
 
-    c) You must cause the whole of the work to be licensed at no
-    charge to all third parties under the terms of this License.
-
-    d) If a facility in the modified Library refers to a function or a
-    table of data to be supplied by an application program that uses
-    the facility, other than as an argument passed when the facility
-    is invoked, then you must make a good faith effort to ensure that,
-    in the event an application does not supply such function or
-    table, the facility still operates, and performs whatever part of
-    its purpose remains meaningful.
-
-    (For example, a function in a library to compute square roots has
-    a purpose that is entirely well-defined independent of the
-    application.  Therefore, Subsection 2d requires that any
-    application-supplied function or table used by this function must
-    be optional: if the application does not supply it, the square
-    root function must still compute square roots.)
-
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+*
 These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Library,
+identifiable sections of that work are not derived from the Program,
 and can be reasonably considered independent and separate works in
 themselves, then this License, and its terms, do not apply to those
 sections when you distribute them as separate works.  But when you
 distribute the same sections as part of a whole which is a work based
-on the Library, the distribution of the whole must be on the terms of
+on the Program, the distribution of the whole must be on the terms of
 this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote
-it.
+entire whole, and thus to each and every part regardless of who wrote it.
 
 Thus, it is not the intent of this section to claim rights or contest
 your rights to work written entirely by you; rather, the intent is to
 exercise the right to control the distribution of derivative or
-collective works based on the Library.
+collective works based on the Program.
 
-In addition, mere aggregation of another work not based on the Library
-with the Library (or with a work based on the Library) on a volume of
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
 a storage or distribution medium does not bring the other work under
 the scope of this License.
 
-  3. You may opt to apply the terms of the ordinary GNU General Public
-License instead of this License to a given copy of the Library.  To do
-this, you must alter all the notices that refer to this License, so
-that they refer to the ordinary GNU General Public License, version 2,
-instead of to this License.  (If a newer version than version 2 of the
-ordinary GNU General Public License has appeared, then you can specify
-that version instead if you wish.)  Do not make any other change in
-these notices.
-*
-  Once this change is made in a given copy, it is irreversible for
-that copy, so the ordinary GNU General Public License applies to all
-subsequent copies and derivative works made from that copy.
-
-  This option is useful when you wish to copy part of the code of
-the Library into a program that is not a library.
-
-  4. You may copy and distribute the Library (or a portion or
-derivative of it, under Section 2) in object code or executable form
-under the terms of Sections 1 and 2 above provided that you accompany
-it with the complete corresponding machine-readable source code, which
-must be distributed under the terms of Sections 1 and 2 above on a
-medium customarily used for software interchange.
-
-  If distribution of object code is made by offering access to copy
-from a designated place, then offering equivalent access to copy the
-source code from the same place satisfies the requirement to
-distribute the source code, even though third parties are not
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable
+    source code, which must be distributed under the terms of Sections
+    1 and 2 above on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable.  However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
 compelled to copy the source along with the object code.
-
-  5. A program that contains no derivative of any portion of the
-Library, but is designed to work with the Library by being compiled or
-linked with it, is called a &quot;work that uses the Library&quot;.  Such a
-work, in isolation, is not a derivative work of the Library, and
-therefore falls outside the scope of this License.
-
-  However, linking a &quot;work that uses the Library&quot; with the Library
-creates an executable that is a derivative of the Library (because it
-contains portions of the Library), rather than a &quot;work that uses the
-library&quot;.  The executable is therefore covered by this License.
-Section 6 states terms for distribution of such executables.
-
-  When a &quot;work that uses the Library&quot; uses material from a header file
-that is part of the Library, the object code for the work may be a
-derivative work of the Library even though the source code is not.
-Whether this is true is especially significant if the work can be
-linked without the Library, or if the work is itself a library.  The
-threshold for this to be true is not precisely defined by law.
-
-  If such an object file uses only numerical parameters, data
-structure layouts and accessors, and small macros and small inline
-functions (ten lines or less in length), then the use of the object
-file is unrestricted, regardless of whether it is legally a derivative
-work.  (Executables containing this object code plus portions of the
-Library will still fall under Section 6.)
-
-  Otherwise, if the work is a derivative of the Library, you may
-distribute the object code for the work under the terms of Section 6.
-Any executables containing that work also fall under Section 6,
-whether or not they are linked directly with the Library itself.
 *
-  6. As an exception to the Sections above, you may also combine or
-link a &quot;work that uses the Library&quot; with the Library to produce a
-work containing portions of the Library, and distribute that work
-under terms of your choice, provided that the terms permit
-modification of the work for the customer's own use and reverse
-engineering for debugging such modifications.
-
-  You must give prominent notice with each copy of the work that the
-Library is used in it and that the Library and its use are covered by
-this License.  You must supply a copy of this License.  If the work
-during execution displays copyright notices, you must include the
-copyright notice for the Library among them, as well as a reference
-directing the user to the copy of this License.  Also, you must do one
-of these things:
-
-    a) Accompany the work with the complete corresponding
-    machine-readable source code for the Library including whatever
-    changes were used in the work (which must be distributed under
-    Sections 1 and 2 above); and, if the work is an executable linked
-    with the Library, with the complete machine-readable &quot;work that
-    uses the Library&quot;, as object code and/or source code, so that the
-    user can modify the Library and then relink to produce a modified
-    executable containing the modified Library.  (It is understood
-    that the user who changes the contents of definitions files in the
-    Library will not necessarily be able to recompile the application
-    to use the modified definitions.)
-
-    b) Use a suitable shared library mechanism for linking with the
-    Library.  A suitable mechanism is one that (1) uses at run time a
-    copy of the library already present on the user's computer system,
-    rather than copying library functions into the executable, and (2)
-    will operate properly with a modified version of the library, if
-    the user installs one, as long as the modified version is
-    interface-compatible with the version that the work was made with.
-
-    c) Accompany the work with a written offer, valid for at least
-    three years, to give the same user the materials specified in
-    Subsection 6a, above, for a charge no more than the cost of
-    performing this distribution.
-
-    d) If distribution of the work is made by offering access to copy
-    from a designated place, offer equivalent access to copy the above
-    specified materials from the same place.
-
-    e) Verify that the user has already received a copy of these
-    materials or that you have already sent this user a copy.
-
-  For an executable, the required form of the &quot;work that uses the
-Library&quot; must include any data and utility programs needed for
-reproducing the executable from it.  However, as a special exception,
-the materials to be distributed need not include anything that is
-normally distributed (in either source or binary form) with the major
-components (compiler, kernel, and so on) of the operating system on
-which the executable runs, unless that component itself accompanies
-the executable.
-
-  It may happen that this requirement contradicts the license
-restrictions of other proprietary libraries that do not normally
-accompany the operating system.  Such a contradiction means you cannot
-use both them and the Library together in an executable that you
-distribute.
-*
-  7. You may place library facilities that are a work based on the
-Library side-by-side in a single library together with other library
-facilities not covered by this License, and distribute such a combined
-library, provided that the separate distribution of the work based on
-the Library and of the other library facilities is otherwise
-permitted, and provided that you do these two things:
-
-    a) Accompany the combined library with a copy of the same work
-    based on the Library, uncombined with any other library
-    facilities.  This must be distributed under the terms of the
-    Sections above.
-
-    b) Give prominent notice with the combined library of the fact
-    that part of it is a work based on the Library, and explaining
-    where to find the accompanying uncombined form of the same work.
-
-  8. You may not copy, modify, sublicense, link with, or distribute
-the Library except as expressly provided under this License.  Any
-attempt otherwise to copy, modify, sublicense, link with, or
-distribute the Library is void, and will automatically terminate your
-rights under this License.  However, parties who have received copies,
-or rights, from you under this License will not have their licenses
-terminated so long as such parties remain in full compliance.
-
-  9. You are not required to accept this License, since you have not
+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+  5. You are not required to accept this License, since you have not
 signed it.  However, nothing else grants you permission to modify or
-distribute the Library or its derivative works.  These actions are
+distribute the Program or its derivative works.  These actions are
 prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Library (or any work based on the
-Library), you indicate your acceptance of this License to do so, and
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
 all its terms and conditions for copying, distributing or modifying
-the Library or works based on it.
+the Program or works based on it.
 
-  10. Each time you redistribute the Library (or any work based on the
-Library), the recipient automatically receives a license from the
-original licensor to copy, distribute, link with or modify the Library
-subject to these terms and conditions.  You may not impose any further
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions.  You may not impose any further
 restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties with
+You are not responsible for enforcing compliance by third parties to
 this License.
-*
-  11. If, as a consequence of a court judgment or allegation of patent
+
+  7. If, as a consequence of a court judgment or allegation of patent
 infringement or for any other reason (not limited to patent issues),
 conditions are imposed on you (whether by court order, agreement or
 otherwise) that contradict the conditions of this License, they do not
 excuse you from the conditions of this License.  If you cannot
 distribute so as to satisfy simultaneously your obligations under this
 License and any other pertinent obligations, then as a consequence you
-may not distribute the Library at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Library by
+may not distribute the Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program by
 all those who receive copies directly or indirectly through you, then
 the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Library.
+refrain entirely from distribution of the Program.
 
 If any portion of this section is held invalid or unenforceable under
 any particular circumstance, the balance of the section is intended to
-apply, and the section as a whole is intended to apply in other
+apply and the section as a whole is intended to apply in other
 circumstances.
 
 It is not the purpose of this section to induce you to infringe any
 patents or other property right claims or to contest validity of any
 such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system which is
+integrity of the free software distribution system, which is
 implemented by public license practices.  Many people have made
 generous contributions to the wide range of software distributed
 through that system in reliance on consistent application of that
@@ -404,107 +225,116 @@ impose that choice.
 
 This section is intended to make thoroughly clear what is believed to
 be a consequence of the rest of this License.
-
-  12. If the distribution and/or use of the Library is restricted in
+*
+  8. If the distribution and/or use of the Program is restricted in
 certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Library under this License
-may add an explicit geographical distribution limitation excluding those
-countries, so that distribution is permitted only in or among
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
 countries not thus excluded.  In such case, this License incorporates
 the limitation as if written in the body of this License.
 
-  13. The Free Software Foundation may publish revised and/or new
-versions of the Lesser General Public License from time to time.
-Such new versions will be similar in spirit to the present version,
-but may differ in detail to address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Library
-specifies a version number of this License which applies to it and
-&quot;any later version&quot;, you have the option of following the terms and
-conditions either of that version or of any later version published by
-the Free Software Foundation.  If the Library does not specify a
-license version number, you may choose any version ever published by
-the Free Software Foundation.
-*
-  14. If you wish to incorporate parts of the Library into other free
-programs whose distribution conditions are incompatible with these,
-write to the author to ask for permission.  For software which is
-copyrighted by the Free Software Foundation, write to the Free
-Software Foundation; we sometimes make exceptions for this.  Our
-decision will be guided by the two goals of preserving the free status
-of all derivatives of our free software and of promoting the sharing
-and reuse of software generally.
-
-                            NO WARRANTY
-
-  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
-WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
-EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
-OTHER PARTIES PROVIDE THE LIBRARY &quot;AS IS&quot; WITHOUT WARRANTY OF ANY
-KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
-LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
-THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
-  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
-WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
-AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
-FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
-CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
-LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
-RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
-FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
-SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGES.
-
-                     END OF TERMS AND CONDITIONS
+  9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and &quot;any
+later version&quot;, you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation.  If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission.  For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this.  Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+			    NO WARRANTY
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM &quot;AS IS&quot; WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+		     END OF TERMS AND CONDITIONS
 *
-           How to Apply These Terms to Your New Libraries
+	    How to Apply These Terms to Your New Programs
 
-  If you develop a new library, and you want it to be of the greatest
-possible use to the public, we recommend making it free software that
-everyone can redistribute and change.  You can do so by permitting
-redistribution under these terms (or, alternatively, under the terms
-of the ordinary General Public License).
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
 
-  To apply these terms, attach the following notices to the library.
-It is safest to attach them to the start of each source file to most
-effectively convey the exclusion of warranty; and each file should
-have at least the &quot;copyright&quot; line and a pointer to where the full
-notice is found.
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the &quot;copyright&quot; line and a pointer to where the full notice is found.
 
-
-    &lt;one line to give the library's name and a brief idea of what it does.&gt;
+    &lt;one line to give the program's name and a brief idea of what it does.&gt;
     Copyright (C) &lt;year&gt;  &lt;name of author&gt;
 
-    This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Lesser General Public
-    License as published by the Free Software Foundation; either
-    version 2.1 of the License, or (at your option) any later version.
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
 
-    This library is distributed in the hope that it will be useful,
+    This program is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-    Lesser General Public License for more details.
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
-    You should have received a copy of the GNU Lesser General Public
-    License along with this library; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA
 
 Also add information on how to contact you by electronic and paper mail.
 
-You should also get your employer (if you work as a programmer) or
-your school, if any, to sign a &quot;copyright disclaimer&quot; for the library,
-if necessary.  Here is a sample; alter the names:
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
 
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the
-  library `Frob' (a library for tweaking knobs) written by James
-  Random Hacker.
+    Gnomovision version 69, Copyright (C) year  name of author
+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
 
-  &lt;signature of Ty Coon&gt;, 1 April 1990
-  Ty Coon, President of Vice
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
 
-That's all there is to it!
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a &quot;copyright disclaimer&quot; for the program, if
+necessary.  Here is a sample; alter the names:
 
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+  `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+  &lt;signature of Ty Coon&gt;, 1 April 1989
+  Ty Coon, President of Vice
 
+This General Public License does not permit incorporating your program into
+proprietary programs.  If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library.  If this is what you want to do, use the GNU Library General
+Public License instead of this License.</diff>
      <filename>COPYING</filename>
    </modified>
    <modified>
      <diff>@@ -1,4 +1,4 @@
-# Doxyfile 1.4.3-20050530
+# Doxyfile 1.4.7
 
 # This file describes the settings to be used by the documentation system
 # doxygen (www.doxygen.org) for a project
@@ -161,13 +161,6 @@ DETAILS_AT_TOP         = YES
 
 INHERIT_DOCS           = YES
 
-# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 
-# tag is set to YES, then doxygen will reuse the documentation of the first 
-# member in the group (if any) for the other members of the group. By default 
-# all members of a group must be documented explicitly.
-
-DISTRIBUTE_GROUP_DOC   = YES
-
 # If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce 
 # a new page for each member. If set to NO, the documentation of a member will 
 # be part of the file/class/namespace that contains it.
@@ -195,13 +188,29 @@ ALIASES                =
 
 OPTIMIZE_OUTPUT_FOR_C  = NO
 
-# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources 
-# only. Doxygen will then generate output that is more tailored for Java. 
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java 
+# sources only. Doxygen will then generate output that is more tailored for Java. 
 # For instance, namespaces will be presented as packages, qualified scopes 
 # will look different, etc.
 
 OPTIMIZE_OUTPUT_JAVA   = NO
 
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want to 
+# include (a tag file for) the STL sources as input, then you should 
+# set this tag to YES in order to let doxygen match functions declarations and 
+# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. 
+# func(std::string) {}). This also make the inheritance and collaboration 
+# diagrams that involve STL classes more complete and accurate.
+
+BUILTIN_STL_SUPPORT    = NO
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 
+# tag is set to YES, then doxygen will reuse the documentation of the first 
+# member in the group (if any) for the other members of the group. By default 
+# all members of a group must be documented explicitly.
+
+DISTRIBUTE_GROUP_DOC   = YES
+
 # Set the SUBGROUPING tag to YES (the default) to allow class member groups of 
 # the same type (for instance a group of public functions) to be put as a 
 # subgroup of that type (e.g. under the Public Functions section). Set it to 
@@ -376,7 +385,7 @@ SHOW_USED_FILES        = YES
 
 # If the sources in your project are distributed over multiple directories 
 # then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy 
-# in the documentation.
+# in the documentation. The default is NO.
 
 SHOW_DIRECTORIES       = YES
 
@@ -385,7 +394,7 @@ SHOW_DIRECTORIES       = YES
 # version control system). Doxygen will invoke the program by executing (via 
 # popen()) the command &lt;command&gt; &lt;input-file&gt;, where &lt;command&gt; is the value of 
 # the FILE_VERSION_FILTER tag, and &lt;input-file&gt; is the name of an input file 
-# provided by doxygen. Whatever the progam writes to standard output 
+# provided by doxygen. Whatever the program writes to standard output 
 # is used as the file version. See the manual for examples.
 
 FILE_VERSION_FILTER    = 
@@ -487,7 +496,9 @@ EXCLUDE_SYMLINKS       = NO
 
 # If the value of the INPUT tag contains directories, you can use the 
 # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 
-# certain files from those directories.
+# certain files from those directories. Note that the wildcards are matched 
+# against the file with absolute path, so to exclude all test directories 
+# for example use the pattern */test/*
 
 EXCLUDE_PATTERNS       = *.Main.hpp
 
@@ -576,6 +587,13 @@ REFERENCED_BY_RELATION = YES
 
 REFERENCES_RELATION    = YES
 
+# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
+# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
+# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
+# link to the source code.  Otherwise they will link to the documentstion.
+
+REFERENCES_LINK_SOURCE = YES
+
 # If the USE_HTAGS tag is set to YES then the references to source code 
 # will point to the HTML generated by the htags(1) tool instead of doxygen 
 # built-in source browser. The htags tool is part of GNU's global source 
@@ -604,7 +622,7 @@ ALPHABETICAL_INDEX     = YES
 # the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns 
 # in which this list will be split (can be a number in the range [1..20])
 
-COLS_IN_ALPHA_INDEX    = 5
+COLS_IN_ALPHA_INDEX    = 4
 
 # In case all classes in a project start with a common prefix, all 
 # classes will be put under the same header in the alphabetical index. 
@@ -970,7 +988,7 @@ MACRO_EXPANSION        = NO
 
 # If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES 
 # then the macro expansion is limited to the macros specified with the 
-# PREDEFINED and EXPAND_AS_PREDEFINED tags.
+# PREDEFINED and EXPAND_AS_DEFINED tags.
 
 EXPAND_ONLY_PREDEF     = NO
 
@@ -1138,6 +1156,14 @@ INCLUDED_BY_GRAPH      = NO
 
 CALL_GRAPH             = NO
 
+# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then doxygen will 
+# generate a caller dependency graph for every global function or class method. 
+# Note that enabling this option will significantly increase the time of a run. 
+# So in most cases it will be better to enable caller graphs for selected 
+# functions only using the \callergraph command.
+
+CALLER_GRAPH           = NO
+
 # If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen 
 # will graphical hierarchy of all classes instead of a textual one.
 </diff>
      <filename>Doxyfile.in</filename>
    </modified>
    <modified>
      <diff>@@ -22,7 +22,8 @@ PNGS= images/ConfigTool.png images/ConfigToolAdmin.png \
       images/ConfigToolPackages.png images/ConfigToolFlags.png \
       images/RealTimeToolkit.png images/ComponentInterface.png \
       images/ComponentImplementation.png images/ApplicationStack.png \
-      images/fdi.png images/DataObjectBuffer.png images/TaskEventSerialisation.png \
+      images/fdi.png images/FDIvsFOSI.png \
+      images/DataObjectBuffer.png images/TaskEventSerialisation.png \
       images/CommandExecution.png images/execution-sequence.png \
       images/ReactiveState.png images/AutomaticState.png \
       images/CoreVsContext.png images/DeploymentLevels.png \
@@ -35,7 +36,7 @@ PNGS= images/ConfigTool.png images/ConfigToolAdmin.png \
       images/ProgramTransitions.png images/ProgramStates.png \
       images/StateTransitions.png images/MachineStates.png \
       images/TaskCommandSerialisation.png images/Functor.png \
-      images/FrameworkOverview.png
+      images/FrameworkOverview.png images/RTT_KDL_BFL_400.png
 
 FOP_STYLESHEET := $(srcdir)/../xsl/orocos.xsl
 HTML_STYLESHEET := $(srcdir)/../xsl/orocos-html.xsl
@@ -43,7 +44,8 @@ HTML_STYLESHEET := $(srcdir)/../xsl/orocos-html.xsl
 include $(srcdir)/../docrules.mak
 
 EXTRA_DIST = \
-	$(XMLDOCS) \
+	images \
+	$(ALL_XMLDOCS) \
 	$(HTMLDOCS) \
 	$(PNGIMGS) \
 	catalog.xml.in \</diff>
      <filename>doc/xml/Makefile.am</filename>
    </modified>
    <modified>
      <diff>@@ -186,11 +186,11 @@
          sodipodi:role=&quot;line&quot;
          x=&quot;117.19776&quot;
          y=&quot;504.09787&quot;
-         id=&quot;tspan3359&quot;&gt;processes incomming commands,&lt;/tspan&gt;&lt;tspan
+         id=&quot;tspan3359&quot;&gt;processes incoming commands,&lt;/tspan&gt;&lt;tspan
          sodipodi:role=&quot;line&quot;
          x=&quot;117.19776&quot;
          y=&quot;526.59787&quot;
-         id=&quot;tspan3361&quot;&gt;incomming events and finally&lt;/tspan&gt;&lt;tspan
+         id=&quot;tspan3361&quot;&gt;incoming events and finally&lt;/tspan&gt;&lt;tspan
          sodipodi:role=&quot;line&quot;
          x=&quot;117.19776&quot;
          y=&quot;549.09787&quot;</diff>
      <filename>doc/xml/images/TaskContextExecution.svg</filename>
    </modified>
    <modified>
      <diff>@@ -63,61 +63,70 @@
     &lt;/dia:attribute&gt;
   &lt;/dia:diagramdata&gt;
   &lt;dia:layer name=&quot;Achtergrond&quot; visible=&quot;true&quot;&gt;
-    &lt;dia:object type=&quot;UML - Lifeline&quot; version=&quot;0&quot; id=&quot;O0&quot;&gt;
+    &lt;dia:object type=&quot;UML - Message&quot; version=&quot;0&quot; id=&quot;O0&quot;&gt;
       &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;5.4,5.3&quot;/&gt;
+        &lt;dia:point val=&quot;22,13&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;5.05,5.275;5.75,13.075&quot;/&gt;
+        &lt;dia:rectangle val=&quot;9.10977,12.4499;22.05,13.4&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;5.4,5.3&quot;/&gt;
-        &lt;dia:point val=&quot;5.4,13.05&quot;/&gt;
+        &lt;dia:point val=&quot;22,13&quot;/&gt;
+        &lt;dia:point val=&quot;9.15977,13&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;line_colour&quot;&gt;
         &lt;dia:color val=&quot;#000000&quot;/&gt;
       &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;fill_colour&quot;&gt;
-        &lt;dia:color val=&quot;#ffffff&quot;/&gt;
+      &lt;dia:attribute name=&quot;text&quot;&gt;
+        &lt;dia:string&gt;##&lt;/dia:string&gt;
       &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;rtop&quot;&gt;
-        &lt;dia:real val=&quot;2.1674699999999998&quot;/&gt;
+      &lt;dia:attribute name=&quot;type&quot;&gt;
+        &lt;dia:enum val=&quot;0&quot;/&gt;
       &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;rbot&quot;&gt;
-        &lt;dia:real val=&quot;5.2058100000000005&quot;/&gt;
+      &lt;dia:attribute name=&quot;text_pos&quot;&gt;
+        &lt;dia:point val=&quot;15.5799,12.9999&quot;/&gt;
       &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;draw_focus&quot;&gt;
-        &lt;dia:boolean val=&quot;true&quot;/&gt;
+      &lt;dia:connections&gt;
+        &lt;dia:connection handle=&quot;1&quot; to=&quot;O8&quot; connection=&quot;1&quot;/&gt;
+      &lt;/dia:connections&gt;
+    &lt;/dia:object&gt;
+    &lt;dia:object type=&quot;UML - Message&quot; version=&quot;0&quot; id=&quot;O1&quot;&gt;
+      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
+        &lt;dia:point val=&quot;22,9&quot;/&gt;
       &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;draw_cross&quot;&gt;
-        &lt;dia:boolean val=&quot;false&quot;/&gt;
+      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
+        &lt;dia:rectangle val=&quot;15.1098,8.44995;22.05,9.4&quot;/&gt;
       &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;cpl_northwest&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
+      &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
+        &lt;dia:point val=&quot;22,9&quot;/&gt;
+        &lt;dia:point val=&quot;15.1598,9&quot;/&gt;
       &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;cpl_southwest&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
+      &lt;dia:attribute name=&quot;line_colour&quot;&gt;
+        &lt;dia:color val=&quot;#000000&quot;/&gt;
       &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;cpl_northeast&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
+      &lt;dia:attribute name=&quot;text&quot;&gt;
+        &lt;dia:string&gt;##&lt;/dia:string&gt;
       &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;cpl_southeast&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
+      &lt;dia:attribute name=&quot;type&quot;&gt;
+        &lt;dia:enum val=&quot;0&quot;/&gt;
+      &lt;/dia:attribute&gt;
+      &lt;dia:attribute name=&quot;text_pos&quot;&gt;
+        &lt;dia:point val=&quot;18.5799,8.99995&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:connections&gt;
-        &lt;dia:connection handle=&quot;0&quot; to=&quot;O3&quot; connection=&quot;6&quot;/&gt;
+        &lt;dia:connection handle=&quot;1&quot; to=&quot;O2&quot; connection=&quot;1&quot;/&gt;
       &lt;/dia:connections&gt;
     &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Lifeline&quot; version=&quot;0&quot; id=&quot;O1&quot;&gt;
+    &lt;dia:object type=&quot;UML - Lifeline&quot; version=&quot;0&quot; id=&quot;O2&quot;&gt;
       &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;15.375,5.3&quot;/&gt;
+        &lt;dia:point val=&quot;14.8098,4.8&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;15.025,5.275;15.725,21.225&quot;/&gt;
+        &lt;dia:rectangle val=&quot;14.4598,4.775;15.1598,17.975&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;15.375,5.3&quot;/&gt;
-        &lt;dia:point val=&quot;15.375,21.2&quot;/&gt;
+        &lt;dia:point val=&quot;14.8098,4.8&quot;/&gt;
+        &lt;dia:point val=&quot;14.8098,17.95&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;line_colour&quot;&gt;
         &lt;dia:color val=&quot;#000000&quot;/&gt;
@@ -126,10 +135,10 @@
         &lt;dia:color val=&quot;#ffffff&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;rtop&quot;&gt;
-        &lt;dia:real val=&quot;10.4&quot;/&gt;
+        &lt;dia:real val=&quot;4.2000000000000002&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;rbot&quot;&gt;
-        &lt;dia:real val=&quot;13.050000000000001&quot;/&gt;
+        &lt;dia:real val=&quot;7.2000000000000002&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;draw_focus&quot;&gt;
         &lt;dia:boolean val=&quot;true&quot;/&gt;
@@ -150,19 +159,19 @@
         &lt;dia:int val=&quot;1&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:connections&gt;
-        &lt;dia:connection handle=&quot;0&quot; to=&quot;O4&quot; connection=&quot;6&quot;/&gt;
+        &lt;dia:connection handle=&quot;0&quot; to=&quot;O5&quot; connection=&quot;6&quot;/&gt;
       &lt;/dia:connections&gt;
     &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Lifeline&quot; version=&quot;0&quot; id=&quot;O2&quot;&gt;
+    &lt;dia:object type=&quot;UML - Lifeline&quot; version=&quot;0&quot; id=&quot;O3&quot;&gt;
       &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;25.35,5.4&quot;/&gt;
+        &lt;dia:point val=&quot;22,6&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;25,5.375;25.7,24.8808&quot;/&gt;
+        &lt;dia:rectangle val=&quot;21.65,5.975;22.35,17.975&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;25.35,5.4&quot;/&gt;
-        &lt;dia:point val=&quot;25.35,24.8558&quot;/&gt;
+        &lt;dia:point val=&quot;22,6&quot;/&gt;
+        &lt;dia:point val=&quot;22,17.95&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;line_colour&quot;&gt;
         &lt;dia:color val=&quot;#000000&quot;/&gt;
@@ -171,10 +180,10 @@
         &lt;dia:color val=&quot;#ffffff&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;rtop&quot;&gt;
-        &lt;dia:real val=&quot;16.355809999999998&quot;/&gt;
+        &lt;dia:real val=&quot;2&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;rbot&quot;&gt;
-        &lt;dia:real val=&quot;18.305810000000001&quot;/&gt;
+        &lt;dia:real val=&quot;11&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;draw_focus&quot;&gt;
         &lt;dia:boolean val=&quot;true&quot;/&gt;
@@ -194,22 +203,19 @@
       &lt;dia:attribute name=&quot;cpl_southeast&quot;&gt;
         &lt;dia:int val=&quot;1&quot;/&gt;
       &lt;/dia:attribute&gt;
-      &lt;dia:connections&gt;
-        &lt;dia:connection handle=&quot;0&quot; to=&quot;O5&quot; connection=&quot;6&quot;/&gt;
-      &lt;/dia:connections&gt;
     &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Object&quot; version=&quot;0&quot; id=&quot;O3&quot;&gt;
+    &lt;dia:object type=&quot;UML - Object&quot; version=&quot;0&quot; id=&quot;O4&quot;&gt;
       &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;2.5,3.5&quot;/&gt;
+        &lt;dia:point val=&quot;6,3&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;2.45,3.45;8.35,5.35&quot;/&gt;
+        &lt;dia:rectangle val=&quot;5.95,2.95;11.6695,4.85&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;elem_corner&quot;&gt;
-        &lt;dia:point val=&quot;2.5,3.5&quot;/&gt;
+        &lt;dia:point val=&quot;6,3&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;elem_width&quot;&gt;
-        &lt;dia:real val=&quot;5.7999999999999998&quot;/&gt;
+        &lt;dia:real val=&quot;5.6195312499999996&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;elem_height&quot;&gt;
         &lt;dia:real val=&quot;1.7999999999999998&quot;/&gt;
@@ -223,7 +229,7 @@
       &lt;dia:attribute name=&quot;text&quot;&gt;
         &lt;dia:composite type=&quot;text&quot;&gt;
           &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#Zero time thread#&lt;/dia:string&gt;
+            &lt;dia:string&gt;#PeriodicActivity#&lt;/dia:string&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;font&quot;&gt;
             &lt;dia:font family=&quot;arial&quot; style=&quot;0&quot; name=&quot;Helvetica&quot;/&gt;
@@ -232,7 +238,7 @@
             &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;5.4,4.55&quot;/&gt;
+            &lt;dia:point val=&quot;8.80977,4.05&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;color&quot;&gt;
             &lt;dia:color val=&quot;#000000&quot;/&gt;
@@ -280,18 +286,18 @@
         &lt;dia:boolean val=&quot;false&quot;/&gt;
       &lt;/dia:attribute&gt;
     &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Object&quot; version=&quot;0&quot; id=&quot;O4&quot;&gt;
+    &lt;dia:object type=&quot;UML - Object&quot; version=&quot;0&quot; id=&quot;O5&quot;&gt;
       &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;12.1,3.5&quot;/&gt;
+        &lt;dia:point val=&quot;12,3&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;12.05,3.45;18.7,5.35&quot;/&gt;
+        &lt;dia:rectangle val=&quot;11.95,2.95;17.6695,4.85&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;elem_corner&quot;&gt;
-        &lt;dia:point val=&quot;12.1,3.5&quot;/&gt;
+        &lt;dia:point val=&quot;12,3&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;elem_width&quot;&gt;
-        &lt;dia:real val=&quot;6.5499999999999998&quot;/&gt;
+        &lt;dia:real val=&quot;5.6195312499999996&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;elem_height&quot;&gt;
         &lt;dia:real val=&quot;1.7999999999999998&quot;/&gt;
@@ -305,7 +311,7 @@
       &lt;dia:attribute name=&quot;text&quot;&gt;
         &lt;dia:composite type=&quot;text&quot;&gt;
           &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#Zero latency thread#&lt;/dia:string&gt;
+            &lt;dia:string&gt;#PeriodicActivity#&lt;/dia:string&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;font&quot;&gt;
             &lt;dia:font family=&quot;arial&quot; style=&quot;0&quot; name=&quot;Helvetica&quot;/&gt;
@@ -314,7 +320,7 @@
             &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;15.375,4.55&quot;/&gt;
+            &lt;dia:point val=&quot;14.8098,4.05&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;color&quot;&gt;
             &lt;dia:color val=&quot;#000000&quot;/&gt;
@@ -362,21 +368,21 @@
         &lt;dia:boolean val=&quot;false&quot;/&gt;
       &lt;/dia:attribute&gt;
     &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Object&quot; version=&quot;0&quot; id=&quot;O5&quot;&gt;
+    &lt;dia:object type=&quot;UML - Object&quot; version=&quot;0&quot; id=&quot;O6&quot;&gt;
       &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;22.05,3.6&quot;/&gt;
+        &lt;dia:point val=&quot;19,4&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;22,3.55;28.7,5.45&quot;/&gt;
+        &lt;dia:rectangle val=&quot;18.95,3.95;24.7172,5.85&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;elem_corner&quot;&gt;
-        &lt;dia:point val=&quot;22.05,3.6&quot;/&gt;
+        &lt;dia:point val=&quot;19,4&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;elem_width&quot;&gt;
-        &lt;dia:real val=&quot;6.5999999999999996&quot;/&gt;
+        &lt;dia:real val=&quot;5.6671874999999998&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;elem_height&quot;&gt;
-        &lt;dia:real val=&quot;1.8000000000000003&quot;/&gt;
+        &lt;dia:real val=&quot;1.7999999999999998&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;line_colour&quot;&gt;
         &lt;dia:color val=&quot;#000000&quot;/&gt;
@@ -387,7 +393,7 @@
       &lt;dia:attribute name=&quot;text&quot;&gt;
         &lt;dia:composite type=&quot;text&quot;&gt;
           &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#Non realtime thread#&lt;/dia:string&gt;
+            &lt;dia:string&gt;#PeriodicThread#&lt;/dia:string&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;font&quot;&gt;
             &lt;dia:font family=&quot;arial&quot; style=&quot;0&quot; name=&quot;Helvetica&quot;/&gt;
@@ -396,7 +402,7 @@
             &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;25.35,4.65&quot;/&gt;
+            &lt;dia:point val=&quot;21.8336,5.05&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;color&quot;&gt;
             &lt;dia:color val=&quot;#000000&quot;/&gt;
@@ -435,7 +441,7 @@
         &lt;/dia:composite&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;is_active&quot;&gt;
-        &lt;dia:boolean val=&quot;false&quot;/&gt;
+        &lt;dia:boolean val=&quot;true&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;show_attribs&quot;&gt;
         &lt;dia:boolean val=&quot;false&quot;/&gt;
@@ -444,156 +450,16 @@
         &lt;dia:boolean val=&quot;false&quot;/&gt;
       &lt;/dia:attribute&gt;
     &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Note&quot; version=&quot;0&quot; id=&quot;O6&quot;&gt;
+    &lt;dia:object type=&quot;UML - Message&quot; version=&quot;0&quot; id=&quot;O7&quot;&gt;
       &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;2,-3&quot;/&gt;
+        &lt;dia:point val=&quot;15.1598,12&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;1.95,-3.05;17.3,1.95&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_corner&quot;&gt;
-        &lt;dia:point val=&quot;2,-3&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_width&quot;&gt;
-        &lt;dia:real val=&quot;15.25&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_height&quot;&gt;
-        &lt;dia:real val=&quot;4.9000000000000004&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;line_colour&quot;&gt;
-        &lt;dia:color val=&quot;#000000&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;fill_colour&quot;&gt;
-        &lt;dia:color val=&quot;#ffffff&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;text&quot;&gt;
-        &lt;dia:composite type=&quot;text&quot;&gt;
-          &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#The Zero Time Thread (ZTT) is
-the highest priority thread. The
-execution time of each of its activities 
-is considered to be near zero. These 
-activities are nonpreemtable.#&lt;/dia:string&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;font&quot;&gt;
-            &lt;dia:font family=&quot;courier new&quot; style=&quot;0&quot; name=&quot;Courier&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;height&quot;&gt;
-            &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;2.35,-1.8&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;color&quot;&gt;
-            &lt;dia:color val=&quot;#000000&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;alignment&quot;&gt;
-            &lt;dia:enum val=&quot;0&quot;/&gt;
-          &lt;/dia:attribute&gt;
-        &lt;/dia:composite&gt;
-      &lt;/dia:attribute&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Note&quot; version=&quot;0&quot; id=&quot;O7&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;18,-3&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;17.95,-3.05;31.9,1.95&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_corner&quot;&gt;
-        &lt;dia:point val=&quot;18,-3&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_width&quot;&gt;
-        &lt;dia:real val=&quot;13.85&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_height&quot;&gt;
-        &lt;dia:real val=&quot;4.9000000000000004&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;line_colour&quot;&gt;
-        &lt;dia:color val=&quot;#000000&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;fill_colour&quot;&gt;
-        &lt;dia:color val=&quot;#ffffff&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;text&quot;&gt;
-        &lt;dia:composite type=&quot;text&quot;&gt;
-          &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#The Zero Latency Thread (ZLT) is
-the second highest priority thread. 
-The latency of these activities is
-considered to be near zero. These
-activities are preemtable by the ZTT.#&lt;/dia:string&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;font&quot;&gt;
-            &lt;dia:font family=&quot;courier new&quot; style=&quot;0&quot; name=&quot;Courier&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;height&quot;&gt;
-            &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;18.35,-1.8&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;color&quot;&gt;
-            &lt;dia:color val=&quot;#000000&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;alignment&quot;&gt;
-            &lt;dia:enum val=&quot;0&quot;/&gt;
-          &lt;/dia:attribute&gt;
-        &lt;/dia:composite&gt;
-      &lt;/dia:attribute&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Lifeline&quot; version=&quot;0&quot; id=&quot;O8&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;5.4,12.85&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;5.05,12.825;5.75,18.675&quot;/&gt;
+        &lt;dia:rectangle val=&quot;15.1098,11.45;22.05,12.4&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;5.4,12.85&quot;/&gt;
-        &lt;dia:point val=&quot;5.4,18.65&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;line_colour&quot;&gt;
-        &lt;dia:color val=&quot;#000000&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;fill_colour&quot;&gt;
-        &lt;dia:color val=&quot;#ffffff&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;rtop&quot;&gt;
-        &lt;dia:real val=&quot;1.8058099999999992&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;rbot&quot;&gt;
-        &lt;dia:real val=&quot;2.9174699999999998&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;draw_focus&quot;&gt;
-        &lt;dia:boolean val=&quot;true&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;draw_cross&quot;&gt;
-        &lt;dia:boolean val=&quot;false&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;cpl_northwest&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;cpl_southwest&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;cpl_northeast&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;cpl_southeast&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Message&quot; version=&quot;0&quot; id=&quot;O9&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;5.75,15.7675&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;5.69964,15.1837;15.0779,16.1004&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;5.75,15.7675&quot;/&gt;
-        &lt;dia:point val=&quot;15.025,15.7&quot;/&gt;
+        &lt;dia:point val=&quot;15.1598,12&quot;/&gt;
+        &lt;dia:point val=&quot;22,12&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;line_colour&quot;&gt;
         &lt;dia:color val=&quot;#000000&quot;/&gt;
@@ -605,23 +471,22 @@ activities are preemtable by the ZTT.#&lt;/dia:string&gt;
         &lt;dia:enum val=&quot;0&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;text_pos&quot;&gt;
-        &lt;dia:point val=&quot;10.3875,15.7337&quot;/&gt;
+        &lt;dia:point val=&quot;18.5799,12&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:connections&gt;
-        &lt;dia:connection handle=&quot;0&quot; to=&quot;O8&quot; connection=&quot;5&quot;/&gt;
-        &lt;dia:connection handle=&quot;1&quot; to=&quot;O1&quot; connection=&quot;0&quot;/&gt;
+        &lt;dia:connection handle=&quot;0&quot; to=&quot;O2&quot; connection=&quot;5&quot;/&gt;
       &lt;/dia:connections&gt;
     &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Lifeline&quot; version=&quot;0&quot; id=&quot;O10&quot;&gt;
+    &lt;dia:object type=&quot;UML - Lifeline&quot; version=&quot;0&quot; id=&quot;O8&quot;&gt;
       &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;5.45,17.75&quot;/&gt;
+        &lt;dia:point val=&quot;8.80977,4.8&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;5.1,17.725;5.8,23.7808&quot;/&gt;
+        &lt;dia:rectangle val=&quot;8.45977,4.775;9.15977,17.025&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;5.45,17.75&quot;/&gt;
-        &lt;dia:point val=&quot;5.45,23.7558&quot;/&gt;
+        &lt;dia:point val=&quot;8.80977,4.8&quot;/&gt;
+        &lt;dia:point val=&quot;8.80977,17&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;line_colour&quot;&gt;
         &lt;dia:color val=&quot;#000000&quot;/&gt;
@@ -630,10 +495,10 @@ activities are preemtable by the ZTT.#&lt;/dia:string&gt;
         &lt;dia:color val=&quot;#ffffff&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;rtop&quot;&gt;
-        &lt;dia:real val=&quot;0.55000000000000004&quot;/&gt;
+        &lt;dia:real val=&quot;8.1999999999999993&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;rbot&quot;&gt;
-        &lt;dia:real val=&quot;3.0505&quot;/&gt;
+        &lt;dia:real val=&quot;11.199999999999999&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;draw_focus&quot;&gt;
         &lt;dia:boolean val=&quot;true&quot;/&gt;
@@ -653,45 +518,20 @@ activities are preemtable by the ZTT.#&lt;/dia:string&gt;
       &lt;dia:attribute name=&quot;cpl_southeast&quot;&gt;
         &lt;dia:int val=&quot;1&quot;/&gt;
       &lt;/dia:attribute&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Message&quot; version=&quot;0&quot; id=&quot;O11&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;15.025,18.35&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;5.74783,17.775;15.0753,18.7003&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;15.025,18.35&quot;/&gt;
-        &lt;dia:point val=&quot;5.8,18.3&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;line_colour&quot;&gt;
-        &lt;dia:color val=&quot;#000000&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;text&quot;&gt;
-        &lt;dia:string&gt;##&lt;/dia:string&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;type&quot;&gt;
-        &lt;dia:enum val=&quot;0&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;text_pos&quot;&gt;
-        &lt;dia:point val=&quot;10.4125,18.325&quot;/&gt;
-      &lt;/dia:attribute&gt;
       &lt;dia:connections&gt;
-        &lt;dia:connection handle=&quot;0&quot; to=&quot;O1&quot; connection=&quot;4&quot;/&gt;
-        &lt;dia:connection handle=&quot;1&quot; to=&quot;O10&quot; connection=&quot;1&quot;/&gt;
+        &lt;dia:connection handle=&quot;0&quot; to=&quot;O4&quot; connection=&quot;6&quot;/&gt;
       &lt;/dia:connections&gt;
     &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Message&quot; version=&quot;0&quot; id=&quot;O12&quot;&gt;
+    &lt;dia:object type=&quot;UML - Message&quot; version=&quot;0&quot; id=&quot;O9&quot;&gt;
       &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;5.8,20.8005&quot;/&gt;
+        &lt;dia:point val=&quot;9.15977,16&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;5.75,20.2502;15.05,21.2&quot;/&gt;
+        &lt;dia:rectangle val=&quot;9.10977,15.4499;22.05,16.4&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;5.8,20.8005&quot;/&gt;
-        &lt;dia:point val=&quot;15,20.8&quot;/&gt;
+        &lt;dia:point val=&quot;9.15977,16&quot;/&gt;
+        &lt;dia:point val=&quot;22,16&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;line_colour&quot;&gt;
         &lt;dia:color val=&quot;#000000&quot;/&gt;
@@ -703,215 +543,24 @@ activities are preemtable by the ZTT.#&lt;/dia:string&gt;
         &lt;dia:enum val=&quot;0&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;text_pos&quot;&gt;
-        &lt;dia:point val=&quot;10.4,20.8002&quot;/&gt;
+        &lt;dia:point val=&quot;15.5799,15.9999&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:connections&gt;
-        &lt;dia:connection handle=&quot;0&quot; to=&quot;O10&quot; connection=&quot;5&quot;/&gt;
-        &lt;dia:connection handle=&quot;1&quot; to=&quot;O13&quot; connection=&quot;0&quot;/&gt;
-      &lt;/dia:connections&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Lifeline&quot; version=&quot;0&quot; id=&quot;O13&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;15.35,20.25&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;15,20.225;15.7,24.3308&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;15.35,20.25&quot;/&gt;
-        &lt;dia:point val=&quot;15.35,24.3058&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;line_colour&quot;&gt;
-        &lt;dia:color val=&quot;#000000&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;fill_colour&quot;&gt;
-        &lt;dia:color val=&quot;#ffffff&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;rtop&quot;&gt;
-        &lt;dia:real val=&quot;0.55000000000000004&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;rbot&quot;&gt;
-        &lt;dia:real val=&quot;1.5058100000000003&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;draw_focus&quot;&gt;
-        &lt;dia:boolean val=&quot;true&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;draw_cross&quot;&gt;
-        &lt;dia:boolean val=&quot;false&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;cpl_northwest&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;cpl_southwest&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;cpl_northeast&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;cpl_southeast&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Note&quot; version=&quot;0&quot; id=&quot;O14&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;19.2437,15.8099&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;19.1937,15.7599;31.3937,19.9599&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_corner&quot;&gt;
-        &lt;dia:point val=&quot;19.2437,15.8099&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_width&quot;&gt;
-        &lt;dia:real val=&quot;12.1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_height&quot;&gt;
-        &lt;dia:real val=&quot;4.1000000000000005&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;line_colour&quot;&gt;
-        &lt;dia:color val=&quot;#000000&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;fill_colour&quot;&gt;
-        &lt;dia:color val=&quot;#ffffff&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;text&quot;&gt;
-        &lt;dia:composite type=&quot;text&quot;&gt;
-          &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#Activity A3 is interrupted
-by the higher priotity
-activity T. When T has finished,
-A3 can continue.#&lt;/dia:string&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;font&quot;&gt;
-            &lt;dia:font family=&quot;courier new&quot; style=&quot;0&quot; name=&quot;Courier&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;height&quot;&gt;
-            &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;19.5937,17.0099&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;color&quot;&gt;
-            &lt;dia:color val=&quot;#000000&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;alignment&quot;&gt;
-            &lt;dia:enum val=&quot;0&quot;/&gt;
-          &lt;/dia:attribute&gt;
-        &lt;/dia:composite&gt;
-      &lt;/dia:attribute&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;Standard - Text&quot; version=&quot;0&quot; id=&quot;O15&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;16.6793,17.2901&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;16.1543,16.7226;17.2218,17.7251&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;text&quot;&gt;
-        &lt;dia:composite type=&quot;text&quot;&gt;
-          &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#A3a#&lt;/dia:string&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;font&quot;&gt;
-            &lt;dia:font family=&quot;courier new&quot; style=&quot;0&quot; name=&quot;Courier&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;height&quot;&gt;
-            &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;16.6793,17.2901&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;color&quot;&gt;
-            &lt;dia:color val=&quot;#000000&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;alignment&quot;&gt;
-            &lt;dia:enum val=&quot;1&quot;/&gt;
-          &lt;/dia:attribute&gt;
-        &lt;/dia:composite&gt;
-      &lt;/dia:attribute&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;Standard - Text&quot; version=&quot;0&quot; id=&quot;O16&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;16.5144,21.4478&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;15.9894,20.8803;17.0569,21.8828&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;text&quot;&gt;
-        &lt;dia:composite type=&quot;text&quot;&gt;
-          &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#A3b#&lt;/dia:string&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;font&quot;&gt;
-            &lt;dia:font family=&quot;courier new&quot; style=&quot;0&quot; name=&quot;Courier&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;height&quot;&gt;
-            &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;16.5144,21.4478&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;color&quot;&gt;
-            &lt;dia:color val=&quot;#000000&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;alignment&quot;&gt;
-            &lt;dia:enum val=&quot;1&quot;/&gt;
-          &lt;/dia:attribute&gt;
-        &lt;/dia:composite&gt;
-      &lt;/dia:attribute&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;Standard - Line&quot; version=&quot;0&quot; id=&quot;O17&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;19.2437,17.8599&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;15.284,17.7939;19.3097,19.666&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;19.2437,17.8599&quot;/&gt;
-        &lt;dia:point val=&quot;15.35,19.6&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;numcp&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:connections&gt;
-        &lt;dia:connection handle=&quot;0&quot; to=&quot;O14&quot; connection=&quot;3&quot;/&gt;
-      &lt;/dia:connections&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;Standard - Line&quot; version=&quot;0&quot; id=&quot;O18&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;9.625,1.9&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;5.33553,1.83553;9.68947,3.56447&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;9.625,1.9&quot;/&gt;
-        &lt;dia:point val=&quot;5.4,3.5&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;numcp&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;line_style&quot;&gt;
-        &lt;dia:enum val=&quot;4&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:connections&gt;
-        &lt;dia:connection handle=&quot;0&quot; to=&quot;O6&quot; connection=&quot;6&quot;/&gt;
-        &lt;dia:connection handle=&quot;1&quot; to=&quot;O3&quot; connection=&quot;1&quot;/&gt;
+        &lt;dia:connection handle=&quot;0&quot; to=&quot;O8&quot; connection=&quot;5&quot;/&gt;
       &lt;/dia:connections&gt;
     &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Note&quot; version=&quot;0&quot; id=&quot;O19&quot;&gt;
+    &lt;dia:object type=&quot;UML - Note&quot; version=&quot;0&quot; id=&quot;O10&quot;&gt;
       &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;2.8549,23.315&quot;/&gt;
+        &lt;dia:point val=&quot;10,-1&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;2.8049,23.265;20.6049,26.665&quot;/&gt;
+        &lt;dia:rectangle val=&quot;9.95,-1.05;21.8,2.35&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;elem_corner&quot;&gt;
-        &lt;dia:point val=&quot;2.8549,23.315&quot;/&gt;
+        &lt;dia:point val=&quot;10,-1&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;elem_width&quot;&gt;
-        &lt;dia:real val=&quot;17.699999999999999&quot;/&gt;
+        &lt;dia:real val=&quot;11.75&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;elem_height&quot;&gt;
         &lt;dia:real val=&quot;3.3000000000000003&quot;/&gt;
@@ -925,18 +574,18 @@ A3 can continue.#&lt;/dia:string&gt;
       &lt;dia:attribute name=&quot;text&quot;&gt;
         &lt;dia:composite type=&quot;text&quot;&gt;
           &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#All nonrealtime activities can be
-executed in the NRT. They
-are executed only when the ZTT and ZLT are idle.#&lt;/dia:string&gt;
+            &lt;dia:string&gt;#PeriodicActivities with
+equal period and equal priority
+run in the same PeriodicThread#&lt;/dia:string&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;font&quot;&gt;
-            &lt;dia:font family=&quot;courier new&quot; style=&quot;0&quot; name=&quot;Courier&quot;/&gt;
+            &lt;dia:font family=&quot;monospace&quot; style=&quot;0&quot; name=&quot;Courier&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;height&quot;&gt;
             &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;3.2049,24.515&quot;/&gt;
+            &lt;dia:point val=&quot;10.35,0.2&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;color&quot;&gt;
             &lt;dia:color val=&quot;#000000&quot;/&gt;
@@ -947,136 +596,26 @@ are executed only when the ZTT and ZLT are idle.#&lt;/dia:string&gt;
         &lt;/dia:composite&gt;
       &lt;/dia:attribute&gt;
     &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Message&quot; version=&quot;0&quot; id=&quot;O20&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;15.7,21.7558&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;15.65,21.2058;25.05,22.1558&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;15.7,21.7558&quot;/&gt;
-        &lt;dia:point val=&quot;25,21.7558&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;line_colour&quot;&gt;
-        &lt;dia:color val=&quot;#000000&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;text&quot;&gt;
-        &lt;dia:string&gt;##&lt;/dia:string&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;type&quot;&gt;
-        &lt;dia:enum val=&quot;0&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;text_pos&quot;&gt;
-        &lt;dia:point val=&quot;20.35,21.7558&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:connections&gt;
-        &lt;dia:connection handle=&quot;0&quot; to=&quot;O13&quot; connection=&quot;5&quot;/&gt;
-        &lt;dia:connection handle=&quot;1&quot; to=&quot;O2&quot; connection=&quot;0&quot;/&gt;
-      &lt;/dia:connections&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;Standard - Line&quot; version=&quot;0&quot; id=&quot;O21&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;24.925,1.9&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;15.3174,1.84243;24.9826,3.55757&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;24.925,1.9&quot;/&gt;
-        &lt;dia:point val=&quot;15.375,3.5&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;numcp&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;line_style&quot;&gt;
-        &lt;dia:enum val=&quot;4&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:connections&gt;
-        &lt;dia:connection handle=&quot;0&quot; to=&quot;O7&quot; connection=&quot;6&quot;/&gt;
-        &lt;dia:connection handle=&quot;1&quot; to=&quot;O4&quot; connection=&quot;1&quot;/&gt;
-      &lt;/dia:connections&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;Standard - Text&quot; version=&quot;0&quot; id=&quot;O22&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;9,11&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;7.075,10.4325;10.9425,11.435&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;text&quot;&gt;
-        &lt;dia:composite type=&quot;text&quot;&gt;
-          &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#T=A1+A2+...#&lt;/dia:string&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;font&quot;&gt;
-            &lt;dia:font family=&quot;courier new&quot; style=&quot;0&quot; name=&quot;Courier&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;height&quot;&gt;
-            &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;9,11&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;color&quot;&gt;
-            &lt;dia:color val=&quot;#000000&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;alignment&quot;&gt;
-            &lt;dia:enum val=&quot;1&quot;/&gt;
-          &lt;/dia:attribute&gt;
-        &lt;/dia:composite&gt;
-      &lt;/dia:attribute&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;Standard - Text&quot; version=&quot;0&quot; id=&quot;O23&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;26.7129,22.5188&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;26.3454,21.9513;27.0629,22.9538&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;text&quot;&gt;
-        &lt;dia:composite type=&quot;text&quot;&gt;
-          &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#A5#&lt;/dia:string&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;font&quot;&gt;
-            &lt;dia:font family=&quot;courier new&quot; style=&quot;0&quot; name=&quot;Courier&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;height&quot;&gt;
-            &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;26.7129,22.5188&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;color&quot;&gt;
-            &lt;dia:color val=&quot;#000000&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;alignment&quot;&gt;
-            &lt;dia:enum val=&quot;1&quot;/&gt;
-          &lt;/dia:attribute&gt;
-        &lt;/dia:composite&gt;
-      &lt;/dia:attribute&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;Standard - Text&quot; version=&quot;0&quot; id=&quot;O24&quot;&gt;
+    &lt;dia:object type=&quot;Standard - Text&quot; version=&quot;0&quot; id=&quot;O11&quot;&gt;
       &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;9,15&quot;/&gt;
+        &lt;dia:point val=&quot;18,8.45&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;7.075,14.4325;10.9425,15.435&quot;/&gt;
+        &lt;dia:rectangle val=&quot;17.05,7.8825;18.9675,8.885&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;text&quot;&gt;
         &lt;dia:composite type=&quot;text&quot;&gt;
           &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#T=A1+A2+...#&lt;/dia:string&gt;
+            &lt;dia:string&gt;#step()#&lt;/dia:string&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;font&quot;&gt;
-            &lt;dia:font family=&quot;courier new&quot; style=&quot;0&quot; name=&quot;Courier&quot;/&gt;
+            &lt;dia:font family=&quot;sans&quot; style=&quot;0&quot; name=&quot;Helvetica&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;height&quot;&gt;
             &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;9,15&quot;/&gt;
+            &lt;dia:point val=&quot;18,8.45&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;color&quot;&gt;
             &lt;dia:color val=&quot;#000000&quot;/&gt;
@@ -1087,26 +626,26 @@ are executed only when the ZTT and ZLT are idle.#&lt;/dia:string&gt;
         &lt;/dia:composite&gt;
       &lt;/dia:attribute&gt;
     &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;Standard - Text&quot; version=&quot;0&quot; id=&quot;O25&quot;&gt;
+    &lt;dia:object type=&quot;Standard - Text&quot; version=&quot;0&quot; id=&quot;O12&quot;&gt;
       &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;9,20&quot;/&gt;
+        &lt;dia:point val=&quot;11.95,12.635&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;7.075,19.4325;10.9425,20.435&quot;/&gt;
+        &lt;dia:rectangle val=&quot;11,12.0675;12.9175,13.07&quot;/&gt;
       &lt;/dia:attribute&gt;
       &lt;dia:attribute name=&quot;text&quot;&gt;
         &lt;dia:composite type=&quot;text&quot;&gt;
           &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#T=A1+A2+...#&lt;/dia:string&gt;
+            &lt;dia:string&gt;#step()#&lt;/dia:string&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;font&quot;&gt;
-            &lt;dia:font family=&quot;courier new&quot; style=&quot;0&quot; name=&quot;Courier&quot;/&gt;
+            &lt;dia:font family=&quot;sans&quot; style=&quot;0&quot; name=&quot;Helvetica&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;height&quot;&gt;
             &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;9,20&quot;/&gt;
+            &lt;dia:point val=&quot;11.95,12.635&quot;/&gt;
           &lt;/dia:attribute&gt;
           &lt;dia:attribute name=&quot;color&quot;&gt;
             &lt;dia:color val=&quot;#000000&quot;/&gt;
@@ -1117,160 +656,5 @@ are executed only when the ZTT and ZLT are idle.#&lt;/dia:string&gt;
         &lt;/dia:composite&gt;
       &lt;/dia:attribute&gt;
     &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Note&quot; version=&quot;0&quot; id=&quot;O26&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;12.6129,6.46881&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;12.5629,6.41881;22.6629,10.6188&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_corner&quot;&gt;
-        &lt;dia:point val=&quot;12.6129,6.46881&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_width&quot;&gt;
-        &lt;dia:real val=&quot;10&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_height&quot;&gt;
-        &lt;dia:real val=&quot;4.1000000000000005&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;line_colour&quot;&gt;
-        &lt;dia:color val=&quot;#000000&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;fill_colour&quot;&gt;
-        &lt;dia:color val=&quot;#ffffff&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;text&quot;&gt;
-        &lt;dia:composite type=&quot;text&quot;&gt;
-          &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#A1,A2,.. are running
-a RunnableInterface object
-or calling their own step
-methods.#&lt;/dia:string&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;font&quot;&gt;
-            &lt;dia:font family=&quot;monospace&quot; style=&quot;0&quot; name=&quot;Courier&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;height&quot;&gt;
-            &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;12.9629,7.66881&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;color&quot;&gt;
-            &lt;dia:color val=&quot;#000000&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;alignment&quot;&gt;
-            &lt;dia:enum val=&quot;0&quot;/&gt;
-          &lt;/dia:attribute&gt;
-        &lt;/dia:composite&gt;
-      &lt;/dia:attribute&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;Standard - Line&quot; version=&quot;0&quot; id=&quot;O27&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;12.6129,8.51881&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;5.69672,8.46553;12.6662,9.03992&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;12.6129,8.51881&quot;/&gt;
-        &lt;dia:point val=&quot;5.75,8.98664&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;numcp&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;line_style&quot;&gt;
-        &lt;dia:enum val=&quot;4&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:connections&gt;
-        &lt;dia:connection handle=&quot;0&quot; to=&quot;O26&quot; connection=&quot;3&quot;/&gt;
-        &lt;dia:connection handle=&quot;1&quot; to=&quot;O0&quot; connection=&quot;3&quot;/&gt;
-      &lt;/dia:connections&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;UML - Note&quot; version=&quot;0&quot; id=&quot;O28&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;29.7129,2.51747&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;29.6629,2.46747;31.7129,4.26747&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_corner&quot;&gt;
-        &lt;dia:point val=&quot;29.7129,2.51747&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_width&quot;&gt;
-        &lt;dia:real val=&quot;1.95&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;elem_height&quot;&gt;
-        &lt;dia:real val=&quot;1.7&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;line_colour&quot;&gt;
-        &lt;dia:color val=&quot;#000000&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;fill_colour&quot;&gt;
-        &lt;dia:color val=&quot;#ffffff&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;text&quot;&gt;
-        &lt;dia:composite type=&quot;text&quot;&gt;
-          &lt;dia:attribute name=&quot;string&quot;&gt;
-            &lt;dia:string&gt;#NRT#&lt;/dia:string&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;font&quot;&gt;
-            &lt;dia:font family=&quot;monospace&quot; style=&quot;0&quot; name=&quot;Courier&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;height&quot;&gt;
-            &lt;dia:real val=&quot;0.80000000000000004&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;pos&quot;&gt;
-            &lt;dia:point val=&quot;30.0629,3.71747&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;color&quot;&gt;
-            &lt;dia:color val=&quot;#000000&quot;/&gt;
-          &lt;/dia:attribute&gt;
-          &lt;dia:attribute name=&quot;alignment&quot;&gt;
-            &lt;dia:enum val=&quot;0&quot;/&gt;
-          &lt;/dia:attribute&gt;
-        &lt;/dia:composite&gt;
-      &lt;/dia:attribute&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;Standard - Line&quot; version=&quot;0&quot; id=&quot;O29&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;29.7129,3.36747&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;28.5793,3.29679;29.7836,4.57068&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;29.7129,3.36747&quot;/&gt;
-        &lt;dia:point val=&quot;28.65,4.5&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;numcp&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;line_style&quot;&gt;
-        &lt;dia:enum val=&quot;4&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:connections&gt;
-        &lt;dia:connection handle=&quot;0&quot; to=&quot;O28&quot; connection=&quot;3&quot;/&gt;
-        &lt;dia:connection handle=&quot;1&quot; to=&quot;O5&quot; connection=&quot;4&quot;/&gt;
-      &lt;/dia:connections&gt;
-    &lt;/dia:object&gt;
-    &lt;dia:object type=&quot;Standard - Line&quot; version=&quot;0&quot; id=&quot;O30&quot;&gt;
-      &lt;dia:attribute name=&quot;obj_pos&quot;&gt;
-        &lt;dia:point val=&quot;24.4727,23.1869&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;obj_bb&quot;&gt;
-        &lt;dia:rectangle val=&quot;20.4887,23.1207;24.5389,25.0312&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;conn_endpoints&quot;&gt;
-        &lt;dia:point val=&quot;24.4727,23.1869&quot;/&gt;
-        &lt;dia:point val=&quot;20.5549,24.965&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:attribute name=&quot;numcp&quot;&gt;
-        &lt;dia:int val=&quot;1&quot;/&gt;
-      &lt;/dia:attribute&gt;
-      &lt;dia:connections&gt;
-        &lt;dia:connection handle=&quot;1&quot; to=&quot;O19&quot; connection=&quot;4&quot;/&gt;
-      &lt;/dia:connections&gt;
-    &lt;/dia:object&gt;
   &lt;/dia:layer&gt;
 &lt;/dia:diagram&gt;</diff>
      <filename>doc/xml/images/execution-sequence.dia</filename>
    </modified>
    <modified>
      <diff>@@ -37,6 +37,12 @@
 	&lt;authorinitials&gt;ps&lt;/authorinitials&gt;
 	&lt;revremark&gt;Update to new Orocos interfaces&lt;/revremark&gt;
       &lt;/revision&gt;
+      &lt;revision&gt;
+	&lt;revnumber&gt;0.03&lt;/revnumber&gt;
+	&lt;date&gt;9 November 2006&lt;/date&gt;
+	&lt;authorinitials&gt;ps&lt;/authorinitials&gt;
+	&lt;revremark&gt;1.0.0 release updates&lt;/revremark&gt;
+      &lt;/revision&gt;
     &lt;/revhistory&gt;
 
     &lt;legalnotice&gt;
@@ -83,12 +89,11 @@
 	&lt;listitem&gt;&lt;para&gt;Command interface: fully&lt;/para&gt;&lt;/listitem&gt;
 	&lt;listitem&gt;&lt;para&gt;Method interface: fully&lt;/para&gt;&lt;/listitem&gt;
 	&lt;listitem&gt;&lt;para&gt;Scripting interface: fully&lt;/para&gt;&lt;/listitem&gt;
+	&lt;listitem&gt;&lt;para&gt;Data Flow interface: fully&lt;/para&gt;&lt;/listitem&gt;
       &lt;/itemizedlist&gt; 
       &lt;/para&gt;
-
       &lt;para&gt;These interfaces are work in progress and not yet available:
       &lt;itemizedlist&gt;
-	&lt;listitem&gt;&lt;para&gt;Data Flow interface&lt;/para&gt;&lt;/listitem&gt;
 	&lt;listitem&gt;&lt;para&gt;Event interface&lt;/para&gt;&lt;/listitem&gt;
       &lt;/itemizedlist&gt; 
       &lt;/para&gt;
@@ -118,21 +123,16 @@
 	Orocos Corba components are work in progress. The following limitations apply:
 	&lt;itemizedlist&gt;
 	  &lt;listitem&gt;&lt;para&gt;Components can only communicate standard C++
-	  types (double, int, string, etc.), std::vector&amp;lt;double&gt;
-	  and the Orocos 3D Frame, Rotation and Vector types. Adding
-	  user types (user defined structs) is work in
-	  progress. &lt;/para&gt;&lt;/listitem&gt;
-	  &lt;listitem&gt;&lt;para&gt;The Corba interfaces have not stabilised
-	  fully and may change (albeit not drastically) before the
-	  Orocos 1.0 release. This is hidden if you use the 'transparant'
-	  approach below.&lt;/para&gt;&lt;/listitem&gt;
+	  types (double, int, string, etc.) and std::vector&amp;lt;double&gt;.
+	  Adding user types is possible using the 'Toolkit Plugin' feature
+	  ( see also 'Orocos Type System' ).
+	  &lt;/para&gt;&lt;/listitem&gt;
 	  &lt;listitem&gt;&lt;para&gt;Some Corba objects (for example 'commands')
 	  have a longer lifetime in memory than necessary. This does
 	  not cause harm in 'simple' setups, but is problematic when
-	  thousands of such objects are created. This issue is being
-	  addressed.&lt;/para&gt;&lt;/listitem&gt;
+	  thousands of such objects are created.
+	  &lt;/para&gt;&lt;/listitem&gt;
 	&lt;/itemizedlist&gt;
-	We aim for removing all these limitations before the Orocos 1.0 release.
       &lt;/para&gt;
     &lt;/section&gt;
   &lt;/section&gt;
@@ -153,7 +153,7 @@
   #include &amp;lt;rtt/corba/ControlTaskServer.hpp&gt;
 
   #include &amp;lt;rtt/PeriodicActivity.hpp&gt;
-  #include &amp;lt;rtt/GenericTaskContext.hpp&gt;
+  #include &amp;lt;rtt/TaskContext.hpp&gt;
   #include &amp;lt;rtt/os/main.h&gt;
 
   using namespace RTT;
@@ -162,7 +162,7 @@
   int ORO_main(int argc, char** argv)
   {
      // Setup a component
-     &lt;classname&gt;RTT::GenericTaskContext&lt;/classname&gt; mycomponent(&quot;HelloWorld&quot;);
+     &lt;classname&gt;RTT::TaskContext&lt;/classname&gt; mycomponent(&quot;HelloWorld&quot;);
      // Execute a component
      &lt;classname&gt;RTT::PeriodicActivity&lt;/classname&gt;   myact(1, 0.01, mycomponent.engine() );
      myact.start();
@@ -200,7 +200,7 @@
      &lt;classname&gt;RTT::TaskContext&lt;/classname&gt;* component = ControlTaskProxy::Create( &quot;HelloWorld&quot; );
 
      // Interface it:
-     &lt;classname&gt;RTT::TaskBrowser&lt;/classname&gt; browse( component );
+     &lt;classname&gt;OCL::TaskBrowser&lt;/classname&gt; browse( component );
      browse.loop();
 
      // Cleanup Corba:
@@ -262,6 +262,7 @@
 	&lt;listitem&gt;&lt;para&gt;&lt;filename&gt;OperationInterface.idl&lt;/filename&gt;: The interface for accessing methods and commands.&lt;/para&gt;&lt;/listitem&gt;
 	&lt;listitem&gt;&lt;para&gt;&lt;filename&gt;ScriptingAccess.idl&lt;/filename&gt;: The interface for loading and running scripts.&lt;/para&gt;&lt;/listitem&gt;
 	&lt;listitem&gt;&lt;para&gt;&lt;filename&gt;Attributes.idl&lt;/filename&gt;: The interface for attributes and properties.&lt;/para&gt;&lt;/listitem&gt;
+	&lt;listitem&gt;&lt;para&gt;&lt;filename&gt;DataFlow.idl&lt;/filename&gt;: The interface for communicating buffered or unbufferd data.&lt;/para&gt;&lt;/listitem&gt;
       &lt;/itemizedlist&gt; 
       All data is communicated with CORBA::Any types. The way of using
       these interfaces is very similar to using Orocos in C++, but using</diff>
      <filename>doc/xml/orocos-corba.xml</filename>
    </modified>
    <modified>
      <diff>@@ -167,7 +167,7 @@
 	      &lt;entry&gt;&lt;classname&gt;RTT::AtomicQueue&lt;/classname&gt;&lt;/entry&gt;
 	      &lt;entry&gt;
 		&lt;para&gt;Uses Compare And Swap (CAS) to store object pointers
-		in an atomic queue. Used by the Processor class to queue incomming Commands.&lt;/para&gt;
+		in an atomic queue. Used by the Processor class to queue incoming Commands.&lt;/para&gt;
 	      &lt;/entry&gt;
 	    &lt;/row&gt;
 	    &lt;row&gt;
@@ -303,288 +303,4 @@
 	&lt;/itemizedlist&gt;
       &lt;/para&gt;
   &lt;/section&gt;
-  &lt;section&gt;
-    &lt;title&gt;The Orocos Type System : Toolkits&lt;/title&gt;
-    &lt;para&gt;
-      Most applications define their own classes or structs to exchange
-      data between objects. It is possible to tell Orocos about these
-      user defined types such that they can be displayed, stored to XML,
-      used in the scripting engine or even transfered over a network
-      connection.
-    &lt;/para&gt;
-
-    &lt;section&gt;
-      &lt;title&gt;The Real-Time Toolkit&lt;/title&gt;
-      &lt;para&gt;
-	Orocos uses the 'Toolkit' principle to make it aware of user
-	types. Orocos' Real-Time Toolkit already provides support for
-	the C++ types &lt;classname&gt;int&lt;/classname&gt;,&lt;classname&gt;unsigned
-	int&lt;/classname&gt;,&lt;classname&gt;double&lt;/classname&gt;,
-	&lt;classname&gt;char&lt;/classname&gt;,&lt;classname&gt;bool&lt;/classname&gt;,&lt;classname&gt;float&lt;/classname&gt;,
-	&lt;classname&gt;std::vector&amp;lt;double&amp;gt;&lt;/classname&gt; and
-	&lt;classname&gt;std::string&lt;/classname&gt;.
-      &lt;/para&gt;
-      &lt;para&gt;
-	A toolkit can be imported into the application by writing:
-	&lt;programlisting&gt;  #include &amp;lt;rtt/RealTimeToolkit.hpp&gt;
-  // ...
-  RTT::Toolkit::Import( RTT::RealTimeToolkit );	&lt;/programlisting&gt;
-	This is however done automatically, unless you disabled that
-	option in the configuration system. After this line is executed,
-	Orocos is able to display, transfer over a network or recognise
-	these types in scripts.
-      &lt;/para&gt;
-    &lt;/section&gt;
-    &lt;section&gt;
-      &lt;title&gt;Telling Orocos about your data&lt;/title&gt;
-      &lt;para&gt;
-	Say that you have an application which transfers data
-	in a struct &lt;classname&gt;ControlData&lt;/classname&gt; :
-	&lt;programlisting&gt;  struct ControlData {
-    double x, y, z;
-    int sample_nbr;
-  }&lt;/programlisting&gt;
-        How can you tell Orocos how to handle this type ? A helper
-	class is provided which you can extend to fit your needs,
-	&lt;classname&gt;RTT::TemplateTypeInfo&lt;/classname&gt;.
-	&lt;programlisting&gt;  #include &amp;lt;rtt/TemplateTypeInfo.hpp&gt;
-  // ...
-  struct ControlDataTypeInfo
-    : public RTT::TemplateTypeInfo&amp;lt;ControlData&gt;
-  {
-     ControlDataTypeInfo
-        : RTT::TemplateTypeInfo&amp;lt;ControlData&gt;(&quot;ControlData&quot;)
-     {}
-  };
-
-  // Tell Orocos the name and type of this struct:
-  RTT::TypeInfoRepository::Instance()-&gt;addType( new ControlDataTypeInfo() );
-	&lt;/programlisting&gt;
-	From now on, Orocos knows the 'ControlData' type name and allows
-	you to create a scripting variable of that type. It does however
-	not know yet how to display it or write it to an XML file.
-      &lt;/para&gt;
-      &lt;section&gt;
-	&lt;title&gt;Displaying&lt;/title&gt;
-	&lt;para&gt;
-	  In order to tell Orocos how to display your type, you
-	  may overload the &lt;function&gt;TemplateTypeInfo::write&lt;/function&gt; fuction
-	  or define &lt;function&gt;operator&amp;lt;&amp;lt;()&lt;/function&gt; for your type:
-	&lt;/para&gt;
-	&lt;programlisting&gt;  #include &amp;lt;rtt/TemplateTypeInfo.hpp&gt;
-  #include &amp;lt;ostream&gt;
-
-  std::ostream&amp;amp; operator&amp;lt;&amp;lt;(std::ostream&amp;amp; os, const ControlData&amp;amp; cd) {
-     return os &amp;lt;&amp;lt; '('&amp;lt;&amp;lt; cd.x &amp;lt;&amp;lt; cd.y &amp;lt;&amp;lt; cd.z &amp;lt;&amp;lt; '): ' &amp;lt;&amp;lt; cd.sample_nbr;
-  }
-  // ...
-  // 'true' argument: &lt;emphasis&gt; it has operator&amp;lt;&amp;lt;&lt;/emphasis&gt;
-  struct ControlDataTypeInfo
-    : public RTT::TemplateTypeInfo&amp;lt;ControlData,&lt;emphasis&gt;true&lt;/emphasis&gt;&gt;
-  {
-     ControlDataTypeInfo
-        : RTT::TemplateTypeInfo&amp;lt;ControlData,&lt;emphasis&gt;true&lt;/emphasis&gt;&gt;(&quot;ControlData&quot;)
-     {}
-  };
-
-  // Tell Orocos the name and type of this struct
-  RTT::Types::Instance()-&gt;addType( new ControlDataTypeInfo() );
-	&lt;/programlisting&gt;
-	&lt;para&gt;
-	  If you use the above line of code to add the type, Orocos will be
-	  able to display it as well, for example in the TaskBrowser or
-	  in the ReportingComponent.
-	&lt;/para&gt;
-      &lt;/section&gt;
-      &lt;section&gt;
-	&lt;title&gt;Writing to XML&lt;/title&gt;
-	&lt;para&gt;
-	  In order to inform Orocos of the structure of your data type,
-	  it must be given a 'decompose' function: Of which primitive types
-	  does the struct consists ? Representing structured data is what
-	  Orocos &lt;classname&gt;RTT::Property&lt;/classname&gt; objects do.
-	  Here is how to tell Orocos how the &quot;ControlData&quot; is structured:
-	&lt;/para&gt;
-	&lt;programlisting&gt;  // ...
-  struct ControlDataTypeInfo
-    : public TemplateTypeInfo&amp;lt;ControlData,true&gt;
-  {
-     // ... other functions omitted
-
-     virtual bool decomposeTypeImpl(const ControlData&amp;amp; in, PropertyBag&amp;amp; targetbag ) const {
-         targetbag.setType(&quot;ControlData&quot;);
-         targetbag.add( new Property&amp;lt;double&gt;(&quot;X&quot;, &quot;X value of my Data&quot;, in.x ) );
-         targetbag.add( new Property&amp;lt;double&gt;(&quot;Y&quot;, &quot;Y value of my Data&quot;, in.y ) );
-         targetbag.add( new Property&amp;lt;double&gt;(&quot;Z&quot;, &quot;Z value of my Data&quot;, in.z ) );
-         targetbag.add( new Property&amp;lt;int&gt;(&quot;Sample&quot;, &quot;The sample number of the Data&quot;, in.sample_nbr ) );
-         return true;
-     }
-  }&lt;/programlisting&gt;
-        &lt;para&gt;
-	  That was easy ! For each member of your struct, add a
-	  &lt;classname&gt;RTT::Property&lt;/classname&gt; of the correct
-	  type to the targetbag and you're done !
-	  &lt;function&gt;setType()&lt;/function&gt; can be used lateron to
-	  determine the version or type of your XML representation.  Next,
-	  if Orocos tries to write an XML file with ControlData in it,
-	  it will look like:
-	&lt;/para&gt;
-	&lt;programlisting&gt;
-&lt;![CDATA[  &lt;struct name=&quot;MyData&quot; type=&quot;ControlData&quot;&gt;
-    &lt;simple name=&quot;X&quot; type=&quot;double&quot;&gt;
-       &lt;description&gt;X value of my Data&lt;/description&gt;
-       &lt;value&gt;0.12&lt;/value&gt;
-    &lt;/simple&gt;
-    &lt;simple name=&quot;Y&quot; type=&quot;double&quot;&gt;
-       &lt;description&gt;Y value of my Data&lt;/description&gt;
-       &lt;value&gt;1.23&lt;/value&gt;
-    &lt;/simple&gt;
-    &lt;simple name=&quot;Z&quot; type=&quot;double&quot;&gt;
-       &lt;description&gt;Z value of my Data&lt;/description&gt;
-       &lt;value&gt;3.21&lt;/value&gt;
-    &lt;/simple&gt;
-    &lt;simple name=&quot;Sample&quot; type=&quot;short&quot;&gt;
-       &lt;description&gt;The sample number of the Data&lt;/description&gt;
-       &lt;value&gt;3123&lt;/value&gt;
-    &lt;/simple&gt;
-  &lt;/struct&gt;]]&gt;
-	&lt;/programlisting&gt;
-      &lt;/section&gt;
-      &lt;section&gt;
-	&lt;title&gt;Reading from XML&lt;/title&gt;
-	&lt;para&gt;
-	  Orocos does not know yet how to convert an XML format back
-	  to the ControlData object. This operation is called 'composition'
-	  and is fairly simple as well:
-	  Here is how to tell Orocos how the &quot;ControlData&quot; is read:
-	&lt;/para&gt;
-	&lt;programlisting&gt;  // ...
-  struct ControlDataTypeInfo
-    : public TemplateTypeInfo&amp;lt;ControlData,true&gt;
-  {
-
-     // ... other functions omitted
-
-     virtual bool composeTypeImpl(const PropertyBag&amp;amp; bag, ControlData&amp;amp; out ) const 
-     {
-        if ( bag.getType() == std::string(&quot;ControlData&quot;) ) // check the type
-        {  
-          Property&amp;lt;double&gt;* x = targetbag.getProperty&amp;lt;double&gt;(&quot;X&quot;);
-          Property&amp;lt;double&gt;* y = targetbag.getProperty&amp;lt;double&gt;(&quot;Y&quot;);
-          Property&amp;lt;double&gt;* z = targetbag.getProperty&amp;lt;double&gt;(&quot;Z&quot;);
-          Property&amp;lt;int&gt;* t = targetbag.getProperty&amp;lt;int&gt;(&quot;Sample&quot;);
-
-	  if ( !x || !y || !z || !t )
-	     return false;
-
-          out.x = x-&gt;get();
-          out.y = y-&gt;get();
-          out.z = z-&gt;get();
-          out.sample_nbr = t-&gt;get();
-          return true;
-        }
-        return false; // unknown type !
-     }
-  }&lt;/programlisting&gt;
-        &lt;para&gt;
-	  First the properties are located in the bag, it should look just
-	  like we stored them. If not, return false, otherwise, read the
-	  values and store them in the out variable.
-	&lt;/para&gt;
-      &lt;/section&gt;
-      &lt;section&gt;
-	&lt;title&gt;Network transfer (CORBA)&lt;/title&gt;
-	&lt;para&gt;
-	  In order to transfer your data between components over a
-	  network, Orocos requires that you provide the conversion
-	  from your type to a CORBA::Any type and back, quite similar
-	  to the 'composition' and 'decomposition' of your data.
-	  Look at the &lt;classname&gt;RTT::TemplateTypeInfo&lt;/classname&gt;
-	  interface for the functions you need to implement.
-	&lt;/para&gt;
-	&lt;para&gt;
-	  The first step is describing your struct in IDL and generate
-	  the 'client' headers with 'Any' support. Next you
-	  create such a struct, fill it with your data type's data
-	  and next 'stream' it to an Any. The other way around is
-	  required as well.
-	&lt;/para&gt;
-	&lt;para&gt;
-	  In addition, you will need the CORBA support of Orocos
-	  enabled in your build configuration.
-	&lt;/para&gt;
-      &lt;/section&gt;
-      &lt;section&gt;
-	&lt;title&gt;Advanced types&lt;/title&gt;
-	&lt;para&gt;
-	  In order to add more complex types, take a look at the
-	  code of the RealTimeToolkit and the GeometryToolkit of Orocos.
-	&lt;/para&gt;
-      &lt;/section&gt;
-    &lt;/section&gt;
-    &lt;section&gt;
-      &lt;title&gt;Building your own Toolkit&lt;/title&gt;
-      &lt;para&gt;
-	The number of types may grow in your application to such
-	a number or diversity that it may be convenient to 
-	build your own toolkit and import them when appropriate.
-	Non-Orocos libraries benefit from this system as well because
-	they can introduce their data types into Orocos.
-      &lt;/para&gt;
-      &lt;para&gt;
-	Each toolkit must inherit from the &lt;classname&gt;RTT::ToolkitPlugin&lt;/classname&gt;
-	class and implement three functions: &lt;function&gt;loadTypes()&lt;/function&gt;,
-	&lt;function&gt;loadOperators()&lt;/function&gt; and &lt;function&gt;getName()&lt;/function&gt;.
-      &lt;/para&gt;
-      &lt;para&gt;
-	The name of a toolkit must be unique. Each toolkit will be loaded
-	no more than once. The loadTypes function contains all 
-	'TemplateTypeInfo' constructs to tell Orocos about the types
-	of your toolkit. The loadOperators function contains all
-	operations that can be performed on your data such as addition ('+'),
-	indexing ('[i]'), construction ('vector(1.0,2.0,3.0)'),
-	comparison ('==') etc.
-      &lt;/para&gt;
-      &lt;para&gt;
-	Mimick the code of the
-	&lt;classname&gt;RTT::RealTimeToolkit&lt;/classname&gt; and
-	&lt;classname&gt;RTT::GeometryToolkit&lt;/classname&gt; to build
-	your own.
-      &lt;/para&gt;
-      &lt;section id=&quot;overloading-operators&quot;&gt;
-	&lt;title&gt;Loading Operators&lt;/title&gt;
-	&lt;para&gt;
-	  Operator are stored in the class &lt;classname&gt;RTT::OperatorRepository&lt;/classname&gt;
-	  in &lt;filename&gt;Operators.hpp&lt;/filename&gt;.  The list of
-	  supported operators is set by the toolkit and added to the OperatorRepository
-	  It looks something like this:
-	  &lt;programlisting&gt;
-bool loadOperators() {
-  OperatorRepository::shared_ptr or = OperatorRepository::Instance();
-  // boolean stuff:
-  or-&gt;add( newUnaryOperator( &amp;quot;!&amp;quot;, std::logical_not&amp;lt;bool&amp;gt;() ) );
-  or-&gt;add( newBinaryOperator( &amp;quot;&amp;amp;&amp;amp;&amp;quot;, std::logical_and&amp;lt;bool&amp;gt;() ) );
-  or-&gt;add( newBinaryOperator( &amp;quot;||&amp;quot;, std::logical_or&amp;lt;bool&amp;gt;() ) );
-  or-&gt;add( newBinaryOperator( &amp;quot;==&amp;quot;, std::equal_to&amp;lt;bool&amp;gt;() ) );
-  or-&gt;add( newBinaryOperator( &amp;quot;!=&amp;quot;, std::not_equal_to&amp;lt;bool&amp;gt;() ) );
-  return true;
-} &lt;/programlisting&gt;
-	  Adding your own should not be terribly hard.  The hardest
-	  part is that as the second argument to newUnaryOperator,
-	  newBinaryOperator or newTernaryOperator, you need to specify
-	  a STL Adaptable Functor, and even though the STL provides
-	  many predefined one's, it does not provide all possible
-	  combinations, and you might end up having to write your
-	  own.  The STL does not at all provide any &quot;ternary
-	  operators&quot;, so if you need one of those, you'll definitely
-	  have to write it yourself.
-	&lt;/para&gt;
-	&lt;para&gt;
-	  Note that this section is only about adding overloads for
-	  existing operators, if you want to add new operators to
-	  the scripting engine, the parsers need to be extended as well.
-	&lt;/para&gt;
-      &lt;/section&gt;
-    &lt;/section&gt;
-  &lt;/section&gt;
 &lt;/article&gt;</diff>
      <filename>doc/xml/orocos-corelib-devel.xml</filename>
    </modified>
    <modified>
      <diff>@@ -186,7 +186,7 @@
       Activities, which execute functions in a thread, in the system. 
       Events allow callback functions to be executed when state changes
       occur. Commands are used to send instructions between threads.
-      The following sections explain usefull classes which
+      The following sections explain useful classes which
       are used throughout the framework such as the TimeService and
       Properties.
     &lt;/para&gt;
@@ -622,7 +622,7 @@ ORO_main( int argc, char** argv)
 	The &lt;classname&gt;RTT::CommandProcessor&lt;/classname&gt; is
 	responsible for accepting command requests from other
 	(realtime) tasks. It uses a non-blocking queue to store
-	incomming requests and fetch-and-execute them in its periodic
+	incoming requests and fetch-and-execute them in its periodic
 	step.
       &lt;/para&gt;
       &lt;figure&gt;&lt;title&gt;Tasks Sending Commands&lt;/title&gt;
@@ -1125,7 +1125,7 @@ emergencyStop(); // User not notified&lt;/programlisting&gt;
   bag.add( &amp;amp;bd );
 
   // setup mirrors:	
-  &lt;classname&gt;RTT::Property&amp;lt;double&amp;gt;&lt;/classname&gt; weight = bag.getProperty&amp;lt;double&amp;gt;(&quot;Weight&quot;);
+  &lt;classname&gt;RTT::Property&lt;/classname&gt;&amp;lt;double&amp;gt; weight = bag.getProperty&amp;lt;double&amp;gt;(&quot;Weight&quot;);
   assert( weight.ready() );
 
   // values are mirrored:
@@ -1149,22 +1149,22 @@ emergencyStop(); // User not notified&lt;/programlisting&gt;
       &lt;title&gt;Marshalling and Demarshalling Properties (Serialization)&lt;/title&gt;
       &lt;para&gt;
 	Marshalling is converting a property C++ object to a format
-	suitable for transportation or storage, like XML Demarshalling
+	suitable for transportation or storage, like XML. Demarshalling
 	reconstructs the property again from the stored format. In
 	Orocos, the &lt;classname&gt;RTT::Marshaller&lt;/classname&gt;
 	interface defines how properties can be marshalled.  The
 	available marshallers (property to file) in Orocos are the
-	&lt;classname&gt;RTT::SimpleMarshaller&lt;/classname&gt;,
+	&lt;classname&gt;RTT::TinyMarshaller&lt;/classname&gt;,
 	&lt;classname&gt;RTT::XMLMarshaller&lt;/classname&gt;,
 	&lt;classname&gt;RTT::XMLRPCMarshaller&lt;/classname&gt;,
 	&lt;classname&gt;RTT::INIMarshaller&lt;/classname&gt; and the
-	&lt;classname&gt;RTT::CPFMarshaller&lt;/classname&gt;.  
+	RTT::CPFMarshaller (only if Xerces is available).  
       &lt;/para&gt;
       &lt;para&gt;
 	The inverse operation (file to property) is currently
-	supported by only two demarshallers:
-	&lt;classname&gt;RTT::SimpleDemarshaller&lt;/classname&gt; and the
-	&lt;classname&gt;RTT::CPFDemarshaller&lt;/classname&gt;.  They
+	supported by two demarshallers:
+	&lt;classname&gt;RTT::TinyDemarshaller&lt;/classname&gt; and the
+	RTT::CPFDemarshaller (only if Xerces is available).  They
 	implement the &lt;classname&gt;RTT::Demarshaller&lt;/classname&gt;
 	interface.
       &lt;/para&gt;
@@ -1407,7 +1407,7 @@ emergencyStop(); // User not notified&lt;/programlisting&gt;
       file is &lt;parameter&gt;Logger::Info&lt;/parameter&gt;. It will get more verbose if
       you increase &lt;envar&gt;ORO_LOGLEVEL&lt;/envar&gt;, but will not go below Info. 
       This file is always created if the logging infrastructure is used. You can inspect this file
-      if you want to know the most usefull information of what is happening inside Orocos.
+      if you want to know the most useful information of what is happening inside Orocos.
     &lt;/para&gt;
     &lt;para&gt;If you want to disable logging completely, use &lt;screen&gt;export ORO_LOGLEVEL=-1&lt;/screen&gt;
       before you start your program.&lt;/para&gt;
@@ -1425,7 +1425,7 @@ emergencyStop(); // User not notified&lt;/programlisting&gt;
   log() &amp;lt;&amp;lt; &quot; more debug info.&quot; &amp;lt;&amp;lt; data &amp;lt;&amp;lt; endlog();
   log() &amp;lt;&amp;lt; &quot;A warning.&quot; &amp;lt;&amp;lt; endlog( Warning );&lt;/programlisting&gt;
       &lt;para&gt;As you can see, the Logger can be used like the standard C++ input streams.
-	You may change the Log message's level using the &lt;classname&gt;RTT::LogLevel&lt;/classname&gt;
+	You may change the Log message's level using the LogLevel
 	enums in front (using log() ) or at the end (using endlog()) of the log message.
 	When no log level is specified, the previously set level is used.
 	The above message could result in :</diff>
      <filename>doc/xml/orocos-corelib.xml</filename>
    </modified>
    <modified>
      <diff>@@ -49,7 +49,7 @@ Alex Russell
     &lt;/title&gt;
     &lt;subtitle&gt;&lt;emphasis&gt;Open RObot COntrol Software&lt;/emphasis&gt;
     &lt;/subtitle&gt;
-    &lt;pubdate&gt;13 January, 2005&lt;/pubdate&gt;
+    &lt;pubdate&gt;8 November 2006&lt;/pubdate&gt;
     &lt;revhistory&gt;
       &lt;revision&gt;
         &lt;revnumber&gt;0.1&lt;/revnumber&gt;
@@ -75,6 +75,22 @@ Alex Russell
 	  Added 'Testing Orocos' section.
         &lt;/revremark&gt;
       &lt;/revision&gt;
+      &lt;revision&gt;
+        &lt;revnumber&gt;0.4&lt;/revnumber&gt;
+        &lt;date&gt;8 Nov 2006&lt;/date&gt;
+        &lt;authorinitials&gt;PS&lt;/authorinitials&gt;
+        &lt;revremark&gt;
+	  Updated to Orocos 1.0
+        &lt;/revremark&gt;
+      &lt;/revision&gt;
+      &lt;revision&gt;
+        &lt;revnumber&gt;0.5&lt;/revnumber&gt;
+        &lt;date&gt;17 Nov 2006&lt;/date&gt;
+        &lt;authorinitials&gt;PS&lt;/authorinitials&gt;
+        &lt;revremark&gt;
+	  Fixed wrong links.
+        &lt;/revremark&gt;
+      &lt;/revision&gt;
     &lt;/revhistory&gt;
     &lt;abstract&gt;
       &lt;para&gt;
@@ -89,22 +105,18 @@ Alex Russell
       &lt;title&gt;General Questions&lt;/title&gt;
       &lt;qandaentry&gt;
 	&lt;question&gt;
-	  &lt;para&gt;What is Orocos - RealTime Control Services - Robot Control Software ?&lt;/para&gt;
+	  &lt;para&gt;What is Orocos - Real-Time Toolkit ?&lt;/para&gt;
 	&lt;/question&gt;
 	&lt;answer&gt;
 	  &lt;para&gt;
 	    Orocos stands for Open Robot Control Software and was a
 	    EU funded project to write Free Software for robots. This faq is
-	    about the RealTime Control Services and Robot Control Software
-	    libraries for writing hard realtime control applications in
+	    about the Real-Time Toolkit
+	    library for writing hard realtime control applications in
 	    C++. It supports hard realtime &lt;ulink
-	      url=&quot;http://www.rtai.org&quot;&gt;RTAI/LXRT&lt;/ulink&gt; and non
-	    realtime GNU/Linux programs. Take a look at the webpage for &lt;ulink
-	      url=&quot;http://www.orocos.org/about.php&quot;&gt; Orocos history
-	    &lt;/ulink&gt; and the &lt;ulink
-	      url=&quot;http://www.orocos.org&quot;&gt; 
-	      main page&lt;/ulink&gt; for the difference between the RealTime Control
-	  Services and the Robot Control Software.&lt;/para&gt;
+	      url=&quot;http://www.rtai.org&quot;&gt;RTAI/LXRT&lt;/ulink&gt; and &lt;ulink
+	      url=&quot;http://www.xenomai.org&quot;&gt;Xenomai&lt;/ulink&gt; and normal
+	    GNU/Linux programs.&lt;/para&gt;
 	&lt;/answer&gt;
       &lt;/qandaentry&gt;
       &lt;qandaentry&gt;
@@ -126,12 +138,11 @@ Alex Russell
 	&lt;answer&gt;
 	  &lt;para&gt;
 	    In the &lt;ulink
-	      url=&quot;http://www.orocos.org/documentation.php&quot;&gt;
+	      url=&quot;http://www.orocos.org/documentation.html&quot;&gt;
 	      Documentation Section &lt;/ulink&gt; of the Orocos website,
 	    you can find all online documents (and this FAQ). Also,
-	    the &lt;ulink url=&quot;http://www.orocos.org/downloads.php&quot;&gt;
-	      Download Section &lt;/ulink&gt; contains separate manuals for
-	    all software packages.
+	    the &lt;ulink url=&quot;http://www.orocos.org/rtt&quot;&gt; RTT
+	      Users Section &lt;/ulink&gt; contains links to the manuals.
 	  &lt;/para&gt;
 	&lt;/answer&gt;
       &lt;/qandaentry&gt;
@@ -154,8 +165,8 @@ Alex Russell
 	&lt;/question&gt;
 	&lt;answer&gt;
 	  &lt;para&gt;
-	    In the &lt;ulink url=&quot;http://www.orocos.org/downloads.php&quot;&gt;
-	      Download Section&lt;/ulink&gt; of the Orocos website for each
+	    In the &lt;ulink url=&quot;http://www.orocos.org/rtt&quot;&gt; RTT
+	      Users Section&lt;/ulink&gt; of the Orocos website for each
 	      use of Orocos.
 	  &lt;/para&gt;
 	&lt;/answer&gt;
@@ -236,7 +247,7 @@ Alex Russell
 	      &lt;/listitem&gt;
 	    &lt;/itemizedlist&gt;
 	  &lt;/para&gt;
-	  &lt;para&gt;The follwing Linux options must be enabled to guarantee
+	  &lt;para&gt;The following Linux options must be enabled to guarantee
 	    the most stable performance :
 	    &lt;itemizedlist&gt;
 	      &lt;listitem&gt;
@@ -258,7 +269,7 @@ Alex Russell
 	  &lt;para&gt;How should I configure RTAI?&lt;/para&gt;
 	&lt;/question&gt;
 	&lt;answer&gt;
-	  &lt;para&gt;The follwing RTAI options must be enabled (and modules must be loaded) :
+	  &lt;para&gt;The following RTAI options must be enabled (and modules must be loaded) :
 	    &lt;itemizedlist&gt;
 	      &lt;listitem&gt;
 		&lt;para&gt;
@@ -292,18 +303,9 @@ Alex Russell
 	    popup the configuration GUI. If you unload packages (see also Build-&gt;Packages...)
 	    they will no longer be compiled (without removing them physically).
 	  &lt;/para&gt;
-	&lt;/answer&gt;
-	&lt;answer&gt;
-	  &lt;para&gt;
-	    Use &lt;command&gt;make control_services&lt;/command&gt; in your build directory to build
-	    only the RealTime Control Services library of Orocos.
-	  &lt;/para&gt;
-	&lt;/answer&gt;
-	&lt;answer&gt;
 	  &lt;para&gt;
-	    Use &lt;command&gt;make robot_control&lt;/command&gt; in your build directory to build
-	    the RealTime Control Services library, kinematics and the (feedback) control kernel application
-	    framework.
+	    Use &lt;command&gt;make rtt-corba&lt;/command&gt; in your build directory to build
+	    only the library for distributed components using Corba.
 	  &lt;/para&gt;
 	&lt;/answer&gt;
       &lt;/qandaentry&gt;
@@ -335,23 +337,9 @@ Alex Russell
 	&lt;/question&gt;
 	&lt;answer&gt;
 	  &lt;para&gt;
-	    You can download the 'taskintro' application from the download page.
-	    The Component Builder's Manual gives a short walk-through in the first Chapter.
-	    You need to download, build 'control_services' and install Orocos on your system 
-	    to be able to compile the demo.
-	  &lt;/para&gt;
-	&lt;/answer&gt;
-	&lt;answer&gt;
-	  &lt;para&gt;
-	    The kernel_sample package contains a number of example feedback
-	    control kernels, using the Orocos 'robot_control' build.
-	  &lt;/para&gt;
-	&lt;/answer&gt;
-	&lt;answer&gt;
-	  &lt;para&gt;
-	    The KDE 'kernelclient' package contains an examples directory
-	    which can be used with the 'kernelclient' to monitor a remote (CORBA)
-	    control kernel using the Orocos 'robot_control' build.
+	    You can download the Orocos Component Library (OCL),
+	    install it and check out the examples you can download 
+	    on the Orocos RTT page as well.
 	  &lt;/para&gt;
 	&lt;/answer&gt;
       &lt;/qandaentry&gt;
@@ -361,7 +349,8 @@ Alex Russell
 	&lt;/question&gt;
 	&lt;answer&gt;
 	  &lt;para&gt;Did you read the README ? Did you install Orocos in /usr/local/orocos ?
-	  Otherwise, adapt the Makefile.
+	  Otherwise, set ORO_PATH to the correct location in the Makefile or
+	  specify it in &lt;command&gt;make ORO_PATH=/path/to/install&lt;/command&gt;
 	  &lt;/para&gt;
 	&lt;/answer&gt;
       &lt;/qandaentry&gt;
@@ -405,26 +394,6 @@ $ ldd core-test
 	&lt;/para&gt;
 	&lt;/answer&gt;
       &lt;/qandaentry&gt;
-      &lt;qandaentry&gt;
-	&lt;question&gt;
-	  &lt;para&gt;I get sporadic crashes on my SMP or hyper-threading system.&lt;/para&gt;
-	&lt;/question&gt;
-	&lt;answer&gt;
-	  &lt;para&gt;Select the 'Build for SMP' option under 'Global Build Options'
-	  of the graphical configuration tool. This will enable the 'CONFIG_SMP'
-	  flag.&lt;/para&gt;
-	&lt;/answer&gt;
-	&lt;answer&gt;
-	  &lt;para&gt;With some distributions, you can disable the 'Hide
-	  System includes from Orocos' option in under 'OS Abstraction
-	  Layer' in the graphical configuration tool. Orocos requires some
-	  assembler instructions to be present (such as in atomic.h). Since
-	  most distributions do not deliver these files (correctly), Orocos
-	  uses a default implementation, which may not be correct for your
-	  platform. This flag tells Orocos to use the system headers. Orocos
-	  will not compile if they are not present or not fit.&lt;/para&gt;
-	&lt;/answer&gt;
-      &lt;/qandaentry&gt;
     &lt;/qandadiv&gt;
     &lt;qandadiv&gt;
       &lt;title&gt;Runtime Problems with RTAI/LXRT&lt;/title&gt;
@@ -465,7 +434,7 @@ $ ldd core-test
 	&lt;answer&gt;
 	  &lt;para&gt;You tried to use RTAI's functions while RTAI was not yet initialised.
 	    This happens if you use global objects which contain Mutexes. Examples
-	    are ORO_CoreLib::Event and some DataObjects, Buffers and the Logger class.
+	    are Event and some DataObjects, Buffers and the Logger class.
 	    The solution is not to use global objects, but use global pointers and
 	    create the objects in ORO_main() with new.
 	  &lt;/para&gt;
@@ -596,7 +565,8 @@ $ ldd core-test
 	&lt;/question&gt;
 	&lt;answer&gt;
 	  &lt;para&gt;The eCos Operating System (and all its supported processors)
-	  and the ACE library (and all its supported OS's).
+	  and the ACE library (and all its supported OS's). The Orocos developers
+	  are very willing to assist you in porting Orocos to your Operating System.
 	  &lt;/para&gt;
 	&lt;/answer&gt;
       &lt;/qandaentry&gt;</diff>
      <filename>doc/xml/orocos-faq.xml</filename>
    </modified>
    <modified>
      <diff>@@ -12,9 +12,9 @@
 &lt;article&gt;
   &lt;articleinfo&gt;
     &lt;title&gt;
-      Inside the Orocos Build System
+      Inside the RTT Build System
     &lt;/title&gt;
-    &lt;subtitle&gt;&lt;emphasis&gt;Open Robot Control Software Version &amp;oversion;&lt;/emphasis&gt;&lt;/subtitle&gt;
+    &lt;subtitle&gt;&lt;emphasis&gt;Orocos Real-Time Toolkit Version &amp;oversion;&lt;/emphasis&gt;&lt;/subtitle&gt;
     &lt;copyright&gt;
       &lt;year&gt;2002,2003,2004,2005,2006&lt;/year&gt;
       &lt;holder&gt;Peter Soetens&lt;/holder&gt;</diff>
      <filename>doc/xml/orocos-installation-devel.xml</filename>
    </modified>
    <modified>
      <diff>@@ -12,9 +12,9 @@
 &lt;article&gt;
   &lt;articleinfo&gt;
     &lt;title&gt;
-      The OROCOS Installation Guide 
+      The OROCOS Real-Time Toolkit Installation Guide 
     &lt;/title&gt;
-    &lt;subtitle&gt;&lt;emphasis&gt;Open Robot Control Software Version &amp;oversion;&lt;/emphasis&gt;&lt;/subtitle&gt;
+    &lt;subtitle&gt;&lt;emphasis&gt;Real-Time Toolkit Version &amp;oversion;&lt;/emphasis&gt;&lt;/subtitle&gt;
     &lt;copyright&gt;
       &lt;year&gt;2002,2003,2004,2005,2006&lt;/year&gt;
       &lt;holder&gt;Peter Soetens&lt;/holder&gt;
@@ -23,7 +23,7 @@
     &lt;abstract&gt;
       &lt;para&gt;
 	This document explains how the
-	packages of &lt;ulink url=&quot;http://www.orocos.org&quot;&gt;&amp;orocos;&lt;/ulink&gt;,
+	Real-Time Toolkit of &lt;ulink url=&quot;http://www.orocos.org&quot;&gt;&amp;orocos;&lt;/ulink&gt;,
 	the &lt;emphasis&gt;Open RObot COntrol Software&lt;/emphasis&gt; project
 	must be installed and configured.
       &lt;/para&gt;
@@ -58,7 +58,7 @@
 	&lt;revnumber&gt;0.22.0&lt;/revnumber&gt;
 	&lt;date&gt;17 Feb 2006&lt;/date&gt;
 	&lt;authorinitials&gt;ps&lt;/authorinitials&gt;
-	&lt;revremark&gt;Simplified configuration section, removed RTLinux, added Xenoami&lt;/revremark&gt;
+	&lt;revremark&gt;Simplified configuration section, removed RTLinux, added Xenomai&lt;/revremark&gt;
       &lt;/revision&gt;
       &lt;revision&gt;
 	&lt;revnumber&gt;0.25.0&lt;/revnumber&gt;
@@ -72,6 +72,18 @@
 	&lt;authorinitials&gt;ps&lt;/authorinitials&gt;
 	&lt;revremark&gt;Simplified build system.&lt;/revremark&gt;
       &lt;/revision&gt;
+      &lt;revision&gt;
+	&lt;revnumber&gt;1.0.0&lt;/revnumber&gt;
+	&lt;date&gt;27 Okt 2006&lt;/date&gt;
+	&lt;authorinitials&gt;ps&lt;/authorinitials&gt;
+	&lt;revremark&gt;Simplified build system.&lt;/revremark&gt;
+      &lt;/revision&gt;
+      &lt;revision&gt;
+	&lt;revnumber&gt;1.0.1&lt;/revnumber&gt;
+	&lt;date&gt;21 Nov 2006&lt;/date&gt;
+	&lt;authorinitials&gt;ps&lt;/authorinitials&gt;
+	&lt;revremark&gt;Updated build/run/doc dependencies.&lt;/revremark&gt;
+      &lt;/revision&gt;
     &lt;/revhistory&gt;
 
     &lt;legalnotice&gt;
@@ -118,7 +130,7 @@
 	  middle number indicates a &lt;emphasis&gt;stable&lt;/emphasis&gt;
 	  version. For example :
 	  &lt;itemizedlist&gt;
-	    &lt;listitem&gt;&lt;para&gt;0.1.4 : Release 0, unstable (1), revision
+	    &lt;listitem&gt;&lt;para&gt;1.1.4 : Release 1, unstable (1), revision
 		4.&lt;/para&gt;&lt;/listitem&gt;
 	    &lt;listitem&gt;&lt;para&gt;1.2.1 : Release 1, stable   (2), revision
 		1.&lt;/para&gt;&lt;/listitem&gt;
@@ -479,8 +491,7 @@
 		Compiling : &lt;option&gt;-I/usr/realtime/include&lt;/option&gt;
 	      &lt;/para&gt;
 	      &lt;para&gt;
-		This is the RTAI headers installation directory. This option is not needed
-		if you configured Orocos with the 'Agnostic headers' option.
+		This is the RTAI headers installation directory.
 	      &lt;/para&gt;
 	    &lt;/listitem&gt;
 	    &lt;listitem&gt;</diff>
      <filename>doc/xml/orocos-installation.xml</filename>
    </modified>
    <modified>
      <diff>@@ -174,3 +174,179 @@
   set d6 = double6d( 1., 2., 3., 4., 5., 6. ) &lt;/programlisting&gt;
   &lt;/section&gt;
 &lt;/article&gt;
+&lt;?xml version='1.0'?&gt;
+&lt;!DOCTYPE article PUBLIC &quot;-//OASIS//DTD DocBook XML V4.3//EN&quot;
+&quot;http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd&quot;
+[
+&lt;!ENTITY % oro_ents SYSTEM &quot;http://people.mech.kuleuven.be/~psoetens/orocos/doc/orocos.ent&quot; &gt;
+%oro_ents;
+]
+&gt;
+
+&lt;article&gt;
+  &lt;articleinfo&gt;
+    &lt;title&gt;
+      The Orocos Kinematics and Dynamics Library Plugin
+    &lt;/title&gt;
+    &lt;copyright&gt;
+      &lt;year&gt;2006&lt;/year&gt;
+      &lt;holder&gt;Peter Soetens, Herman Bruyninckx&lt;/holder&gt;
+    &lt;/copyright&gt;
+    
+    &lt;abstract&gt;
+      &lt;para&gt;
+	This document describes the &amp;orocos; Kinematics and Dynamics
+	Library Plugin for the Real-Time Toolkit.
+      &lt;/para&gt;
+    &lt;/abstract&gt;
+    
+    &lt;revhistory&gt;
+      &lt;revision&gt;
+	&lt;revnumber&gt;0.01&lt;/revnumber&gt;
+	&lt;date&gt;30/10/2006&lt;/date&gt;
+	&lt;authorinitials&gt;PS&lt;/authorinitials&gt;
+	&lt;revremark&gt;Initial version, text stripped from Main manual.&lt;/revremark&gt;
+      &lt;/revision&gt;
+   &lt;/revhistory&gt;
+
+    &lt;legalnotice&gt;
+      &lt;para&gt;
+	Permission is granted to copy, distribute and/or modify this document
+	under the terms of the GNU Free Documentation License, Version 1.1 or
+	any later version published by the Free Software Foundation, with no
+	Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
+	Texts. A copy of this license can be found at
+	&lt;ulink
+	  url=&quot;http://www.fsf.org/copyleft/fdl.html&quot;&gt;http://www.fsf.org/copyleft/fdl.html&lt;/ulink&gt;.
+      &lt;/para&gt;
+    &lt;/legalnotice&gt;
+
+  &lt;/articleinfo&gt;
+
+  &lt;section id=&quot;intro&quot;&gt;
+    &lt;title&gt;Introduction&lt;/title&gt;
+    &lt;para&gt;
+      The &amp;orocos; Scripting language allows users of the &amp;orocos; system to write
+      programs and state machines controlling the system in a
+      user-friendly realtime script language.  The advantage of scripting is
+      that it is easily extendible and does not need recompilation of
+      the main program.
+    &lt;/para&gt;
+    &lt;para&gt;
+      This document describes the extensions the Kinematics and
+      Dynamics Library (KDL) plugin adds to this scripting language.
+    &lt;/para&gt;
+  &lt;/section&gt;
+  &lt;section&gt;
+    &lt;title&gt;Setting up the KDL toolkit&lt;/title&gt;
+    &lt;para&gt;
+      In order to obtain the kdl plugin, the kdl needs to be configured
+      with the path to the Real-Time Toolkit. The &lt;filename&gt;kdltk&lt;/filename&gt;
+      library and the &lt;filename&gt;kdl/kdltk/toolkit.hpp&lt;/filename&gt; header
+      file are then required for each application which wishes to use
+      the KDL with the RTT.
+    &lt;/para&gt;
+    &lt;para&gt;
+      The KDL plugin can then be enabled in your program by writing:
+    &lt;/para&gt;
+    &lt;programlisting&gt;  #include &amp;lt;kdl/kdltk/toolkit.hpp&amp;gt;
+
+  int ORO_main(int, char*)
+  {
+     RTT::Toolkit::Import( KDL::KDLToolkit );
+  }
+    &lt;/programlisting&gt;
+    &lt;para&gt;
+      The Import statement may occur multiple times in the same program,
+      the first one will actually import KDL into the RTT. From now on
+      the KDL types described below are available at the TaskBrowser
+      prompt and in scripts.
+    &lt;/para&gt;
+  &lt;/section&gt;
+  &lt;section id=&quot;kdl-types&quot;&gt;
+    &lt;title&gt;KDL Types&lt;/title&gt;
+    &lt;para&gt;
+      The KDL adds 3D vector, rotation, frame, twist and wrench types
+      to the scripting language.
+    &lt;/para&gt;
+    &lt;para&gt;
+      Likewise, the following operators are available for the
+      geometry types :
+      &lt;programlisting&gt;  var frame f1, f2, f3
+  var rotation r
+  var vector   v
+  var twist    t
+  var wrench   w
+  // ...
+  
+  set f1 = f2.inv * f3 // frame transformations: inverse of f2 times f3
+
+  set v = f1.p          // read the position
+  set r = f1.R          // read the rotation
+  set r = f1.R.inv      // read the inverse rotation
+
+  set v = t.vel        // read the translational velocity
+  set v = t.rot        // read the rotational velocity
+
+  set v = w.force      // read the force
+  set v = w.torque     // read the torque
+
+  var double x = v.x  // also : v.y or v.z
+
+  var double p = r.roll  // also : r.pitch or r.yaw&lt;/programlisting&gt;
+    &lt;/para&gt;
+    &lt;para&gt;
+      You can not use the '.' operator in the reverse direction.
+      thus the following code is invalid :
+      &lt;programlisting&gt;  set f.p = v         // Invalid !
+  set f1.R = r          // Invalid !&lt;/programlisting&gt;
+  These are thus read-only accessors and can thus not be written to.
+  To change them, you'll have to use a constructor from the next
+  section.
+    &lt;/para&gt;
+  &lt;/section&gt;
+  &lt;section&gt;
+    &lt;title&gt;Constructors&lt;/title&gt;
+    &lt;para&gt;
+      For the KDL types, scripting constructors are provided.  The
+      simplest example is the vector constructor, that looks like
+      this:
+    &lt;/para&gt;
+    &lt;para&gt;
+      &lt;programlisting&gt;
+  vector( arg1, arg2, arg3 )	    &lt;/programlisting&gt;&lt;/para&gt;
+    &lt;para&gt;
+      where arg1, arg2 and arg3 are expressions which
+      &lt;emphasis&gt;must be of type double&lt;/emphasis&gt;.
+      This returns an expression of type vector, with arg1 as
+      the x component, arg2 as the y component, and arg3 as the
+      z component.
+    &lt;/para&gt;
+    &lt;para&gt;
+      Other constructors currently available are:
+    &lt;/para&gt;
+    &lt;programlisting&gt;
+  // roll, pitch and yaw are double expressions, this
+  // returns a rotation, that is constructed using the
+  // Roll-Pitch-Yaw convention in RADIANS :
+  var double roll = 45.0 * (2.*3.14/360.)         // convert to radians
+  // ...
+  var rotation rot = rotation( roll, pitch, yaw )
+  
+  // Vect is a vector expression, rot is a rotation
+  // expression.  This returns a frame, constructed
+  // using the vector x as the origin, and rotation
+  // rot as the rotation..
+  var frame f = frame( vect, rot )
+
+  // or changing its vector and/or rotation:
+  f = frame( -f.p, f.M.inv )
+  
+  // Double6D is a commonly used type in Orocos
+  // and has been recently introduced in the parser
+  var double6d d6 = double6d(0.0)
+  set d6[0] = 1.0
+  var double d0 = d6[0]
+  set d6 = double6d( 1., 2., 3., 4., 5., 6. ) &lt;/programlisting&gt;
+  &lt;/section&gt;
+&lt;/article&gt;</diff>
      <filename>doc/xml/orocos-kdl-plugin.xml</filename>
    </modified>
    <modified>
      <diff>@@ -53,3 +53,58 @@
              xmlns:xi=&quot;http://www.w3.org/2001/XInclude&quot; /&gt;
   &lt;/chapter&gt;
 &lt;/book&gt;
+&lt;?xml version='1.0'?&gt;
+&lt;!DOCTYPE book PUBLIC &quot;-//OASIS//DTD DocBook XML V4.3//EN&quot;
+&quot;http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd&quot;
+[
+&lt;!ENTITY % oro_ents SYSTEM &quot;http://people.mech.kuleuven.be/~psoetens/orocos/doc/orocos.ent&quot; &gt;
+%oro_ents;
+]
+&gt;
+
+&lt;book&gt;
+  &lt;bookinfo&gt;
+    &lt;title&gt;
+      Tutorial on the Component Interface
+    &lt;/title&gt;
+    &lt;subtitle&gt;&lt;emphasis&gt;Open RObot COntrol Software&lt;/emphasis&gt;
+    &lt;/subtitle&gt;
+    &lt;subtitle&gt;&amp;oversion;&lt;/subtitle&gt;
+    &lt;copyright&gt;
+      &lt;year&gt;2002,2003,2004,2005,2006&lt;/year&gt;
+      &lt;holder&gt;Peter Soetens&lt;/holder&gt;
+      &lt;holder&gt;FMTC&lt;/holder&gt;
+    &lt;/copyright&gt;
+
+    &lt;abstract&gt;
+      &lt;para&gt;
+	This document gives an introduction on the different aspects
+	of interfacing an &amp;orocos; component. This is an excerpt from 
+	the Component Builder's Manual and walks through the 'Hello World'
+	program.
+      &lt;/para&gt;
+    &lt;/abstract&gt;
+
+    &lt;legalnotice&gt;
+      &lt;para&gt;
+	Orocos Version &amp;oversion;.
+      &lt;/para&gt;
+      &lt;para&gt;
+	Permission is granted to copy, distribute and/or modify this document
+	under the terms of the GNU Free Documentation License, Version 1.1 or
+	any later version published by the Free Software Foundation, with no
+	Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
+	Texts. A copy of this license can be found at
+	&lt;ulink
+	  url=&quot;http://www.fsf.org/copyleft/fdl.html&quot;&gt;http://www.fsf.org/copyleft/fdl.html&lt;/ulink&gt;.
+      &lt;/para&gt;
+    &lt;/legalnotice&gt;
+  &lt;/bookinfo&gt;
+  &lt;chapter id=&quot;orocos-ocl-intro&quot;&gt;
+    &lt;title&gt;&lt;/title&gt;
+    &lt;xi:include  href=&quot;orocos-task-context.xml#xpointer(/article/section[1])&quot;  
+             xmlns:xi=&quot;http://www.w3.org/2001/XInclude&quot; /&gt;
+    &lt;xi:include  href=&quot;orocos-task-context.xml#xpointer(/article/section[2])&quot;  
+             xmlns:xi=&quot;http://www.w3.org/2001/XInclude&quot; /&gt;
+  &lt;/chapter&gt;
+&lt;/book&gt;</diff>
      <filename>doc/xml/orocos-ocl-intro.xml</filename>
    </modified>
    <modified>
      <diff>@@ -18,7 +18,7 @@
     &lt;subtitle&gt;&lt;emphasis&gt;Open RObot COntrol Software&lt;/emphasis&gt;
     &lt;/subtitle&gt;
     &lt;copyright&gt;
-      &lt;year&gt;2002,2003,2004,2005,2006&lt;/year&gt;
+      &lt;year&gt;2002-2007&lt;/year&gt;
       &lt;holder&gt;Herman Bruyninckx, Peter Soetens&lt;/holder&gt;
     &lt;/copyright&gt;
 
@@ -50,6 +50,12 @@
 	&lt;authorinitials&gt;ps&lt;/authorinitials&gt;
 	&lt;revremark&gt;Added section 'Building Orocos Applications&quot;&lt;/revremark&gt;
       &lt;/revision&gt;
+      &lt;revision&gt;
+	&lt;revnumber&gt;1.0.2&lt;/revnumber&gt;
+	&lt;date&gt;4 Jan 2007&lt;/date&gt;
+	&lt;authorinitials&gt;ps&lt;/authorinitials&gt;
+	&lt;revremark&gt;Made this a less technical document&lt;/revremark&gt;
+      &lt;/revision&gt;
     &lt;/revhistory&gt;
 
     &lt;legalnotice&gt;
@@ -74,22 +80,51 @@
 	  Software&lt;/ulink&gt;&lt;/emphasis&gt; project. The project's aim is to develop
       a general-purpose, free software, and modular &lt;emphasis&gt;framework&lt;/emphasis&gt;
       for &lt;emphasis&gt;robot&lt;/emphasis&gt;and &lt;emphasis&gt;machine control&lt;/emphasis&gt;.
+      The &amp;orocos; project supports 4 C++ libraries: the Real-Time Toolkit, the
+      Kinematics and Dynamics Library, the Bayesian Filtering Library and
+      the Orocos Component Library.
     &lt;/para&gt;
-    &lt;para&gt;
-      A framework is a set of source code from which applications in a
-      particular domain can be made &lt;citation&gt;Johnson97&lt;/citation&gt;). So, the
-      framework is not an application
-      in itself, but it provides the infrastructure and the functionalities to
-      build applications in C++.  Usually, application builders must fill
-      in some &amp;ldquo;hot spots&amp;rdquo; that are specific to their
-      application, and hence, which cannot be provided by the framework.
-    &lt;/para&gt;
-    &lt;para&gt;
-      &amp;orocos; works in a &amp;ldquo;bottom-up&amp;rdquo; fashion, so current
-      activities are currently more focused on developing 
-      &lt;emphasis&gt;basic infrastructure&lt;/emphasis&gt; than on implementing
-      advanced control, planning or sensor processing algorithms.
-    &lt;/para&gt;
+    &lt;mediaobject&gt;
+      &lt;imageobject role=&quot;html&quot;&gt;
+	&lt;imagedata fileref=&quot;images/RTT_KDL_BFL_400&quot; /&gt;
+      &lt;/imageobject&gt;
+    &lt;/mediaobject&gt;
+    &lt;itemizedlist&gt;
+      &lt;listitem&gt;
+	&lt;para&gt;
+	  The &amp;orocos; Real-Time Toolkit (RTT) is not an application
+	  in itself, but it provides the infrastructure and the
+	  functionalities to build robotics applications in C++. The
+	  emphasis is on &lt;emphasis&gt;real-time&lt;/emphasis&gt;,
+	  &lt;emphasis&gt;online interactive&lt;/emphasis&gt; and
+	  &lt;emphasis&gt;component based&lt;/emphasis&gt; applications.
+	&lt;/para&gt;
+      &lt;/listitem&gt;
+      &lt;listitem&gt;
+	&lt;para&gt;
+	  The &amp;orocos; Components Library (OCL) provides some ready to
+	  use control components. Both Component management and
+	  Components for control and hardware access are available.
+	&lt;/para&gt;
+      &lt;/listitem&gt;
+      &lt;listitem&gt;
+	&lt;para&gt;
+	  The &amp;orocos; Kinematics and Dynamics Library (KDL) is a C++
+	  library which allows to calculate kinematic chains in
+	  real-time.
+	&lt;/para&gt;
+      &lt;/listitem&gt;
+      &lt;listitem&gt;
+	&lt;para&gt;
+	  The &amp;orocos; Bayesian Filtering Library (BFL) provides an
+	  application independent framework for inference in Dynamic
+	  Bayesian Networks, i.e., recursive information processing
+	  and estimation algorithms based on Bayes' rule, such as
+	  (Extended) Kalman Filters, Particle Filters (Sequential
+	  Monte methods), etc.
+	&lt;/para&gt;
+      &lt;/listitem&gt;
+    &lt;/itemizedlist&gt;
     &lt;para&gt;
       &amp;orocos; is a free software project, hence its code and documentation
       are released under Free Software licenses.
@@ -111,6 +146,16 @@
       because the robotics community is not homogeneous, &amp;orocos;
       targets four different categories of &amp;ldquo;Users&amp;rdquo; (or, in
       the first place, &amp;ldquo;Developers&amp;rdquo;):
+    &lt;/para&gt;
+    &lt;mediaobject&gt;
+      &lt;imageobject role=&quot;html&quot;&gt;
+	&lt;imagedata fileref=&quot;images/FrameworkOverview&quot; /&gt;
+      &lt;/imageobject&gt;
+      &lt;imageobject&gt;
+	&lt;imagedata fileref=&quot;images/FrameworkOverview&quot; /&gt;
+      &lt;/imageobject&gt;
+    &lt;/mediaobject&gt;
+    &lt;para&gt;
       &lt;orderedlist&gt;
 	&lt;listitem&gt;
 	  &lt;para&gt;
@@ -127,7 +172,8 @@
 	    &amp;orocos; project, the supporting code (the &amp;ldquo;Framework&amp;rdquo;)
 	    gets a lot of attention. The hope is, of course, that this work will
 	    pay of by facilitating the developments for the other
-	    &amp;ldquo;Builders&amp;rdquo;.
+	    &amp;ldquo;Builders&amp;rdquo;. The RTT, KDL and BFL are created by Framework
+	    builders
 	  &lt;/para&gt;
 	&lt;/listitem&gt;
 	&lt;listitem&gt;
@@ -142,7 +188,8 @@
 	    Kinematics Component may be designed as such that it can
 	    &amp;ldquo;serve&amp;rdquo; different kinematic architectures.
 	    Other examples are Components to hardware devices, Components
-	    for diagnostics, safety or simulation.
+	    for diagnostics, safety or simulation. The OCL is created by 
+	    Component Builders.
 	  &lt;/para&gt;
 	&lt;/listitem&gt;
 	&lt;listitem&gt;
@@ -150,14 +197,12 @@
 	    &lt;emphasis&gt;Application Builders.&lt;/emphasis&gt;
 	  &lt;/para&gt;
 	  &lt;para&gt;
-	    These developers use the &amp;orocos;' Framework and Components, and
-	    integrate them into one particular application. That means that they
-	    add a specific, application-dependent
-	    &lt;emphasis&gt;architecture&lt;/emphasis&gt; on top
-	    of the functionalities offered by the Framework and the Components.
-	    An example Orocos application is the Orocos Control Kernel, which
-	    provides an application framework for (motion) control, with a set
-	    of components which implement control or planning algorithms.
+	    These developers use the &amp;orocos;' Framework and
+	    Components, and integrate them into one particular
+	    application. That means that they create a specific,
+	    application-dependent &lt;emphasis&gt;architecture&lt;/emphasis&gt;:
+	    Components are connected and configured as such that they
+	    form an application.
 	  &lt;/para&gt;
 	&lt;/listitem&gt;
 	&lt;listitem&gt;
@@ -170,11 +215,6 @@
 	  &lt;/para&gt;
 	&lt;/listitem&gt;
       &lt;/orderedlist&gt;
-      The focus in the &amp;orocos; project lies primarily with the Framework
-      Builders and the Component Builders. But, since all contributors
-      are motivated by their own particular applications, the needs of
-      the Application Builders are also taken into account, albeit
-      indirectly. 
     &lt;/para&gt;
     &lt;para&gt;
       End Users do not directly belong to the target audience of
@@ -209,21 +249,22 @@
       &lt;section&gt;
 	&lt;title&gt;Application Templates&lt;/title&gt;
 	&lt;para&gt;
-	  The &quot;Application Templates&quot; are the kick-start 'Component
-	  tapers' which do nothing more than selecting and connecting
-	  a few components which work well together in order to
-	  realise a running application. An application template
-	  should be so simple that any Orocos user can pick one and
-	  modify it, hence it is the first thing a new user will
-	  encounter. An application template should be explainable on
-	  one page with one figure explaining the architecture.
+	  An &quot;Application Template&quot; is a set of components that work
+	  well together. For example, the application template for
+	  motion control contains components for path planning,
+	  position control, hardware access and data reporting. The
+	  components are choosen as such that their interfaces are
+	  compatible.
+	&lt;/para&gt;
+	&lt;para&gt;
+	  An application template should be so simple that any Orocos
+	  user can pick one and modify it, hence it is the first thing
+	  a new user will encounter. An application template should be
+	  explainable on one page with one figure explaining the
+	  architecture.
 	&lt;/para&gt;
 	&lt;note&gt;
-	  &lt;para&gt;We are currently reworking the template infrastructure
-	  to match this description.  The current &quot;Control Kernel&quot;
-	  application template does not fit that description very well
-	  and will disappear as such [v1.0]. Also, an application
-	  template will have no longer any relation to 'C++'
+	  &lt;para&gt;An application template has no relation to 'C++'
 	  templates.
 	  &lt;/para&gt;
 	&lt;/note&gt;
@@ -258,17 +299,6 @@
 	  through their (XML) properties or command/method interface
 	  in order to configure their applications.
 	&lt;/para&gt;
-	&lt;note&gt;&lt;para&gt;
-	  The current Orocos 'Control
-	  Kernel' components need to be converted in order to fit in
-	  this description and are to be split off in separate
-	  packages [v1.0].
-	&lt;/para&gt;&lt;/note&gt;
-	&lt;para&gt;
-	  The Component interface is defined by the
-	  'TaskContext' class as released in version 0.22.0 and
-	  described in the &quot;Component Builders Guide&quot;.
-	&lt;/para&gt;
 	&lt;para&gt;
 	  There are five distinct ways in which an Orocos
 	  component can be interfaced: through its properties,
@@ -282,18 +312,17 @@
 	  fictuous component interfaces for a 'Robot' Component:
 	&lt;itemizedlist&gt;
 	  &lt;listitem&gt;
-	    &lt;para&gt;&lt;emphasis&gt;Properties:&lt;/emphasis&gt;
-	    Are run-time modifyable parameters, stored
-	    in XML files. For example:
-	    &quot;Kinematic Algorithm&quot;, &quot;Control Parameters&quot;, 
-	    &quot;Homing Position&quot;, &quot;ToolType&quot;,...&lt;/para&gt;
+	    &lt;para&gt;&lt;emphasis&gt;Data-Flow Ports:&lt;/emphasis&gt; Are a thread-safe
+	    data transport mechanism to communicate buffered or
+	    un-buffered data between components.  For example:
+	    &quot;JointSetpoints&quot;, &quot;EndEffectorFrame&quot;,
+	    &quot;FeedForward&quot;,...&lt;/para&gt;
 	  &lt;/listitem&gt;
 	  &lt;listitem&gt;
-	    &lt;para&gt;&lt;emphasis&gt;Events:&lt;/emphasis&gt; 
-	    Provide a 'callback' mechanism to 'publish'
-	    a change to 'subscribers'. For example:
-	    &quot;Position Reached&quot;, &quot;Emergency Stop&quot;, 
-	    &quot;Object Grasped&quot;,...&lt;/para&gt;
+	    &lt;para&gt;&lt;emphasis&gt;Properties:&lt;/emphasis&gt; Are run-time
+	    modifyable parameters, stored in XML files. For example:
+	    &quot;Kinematic Algorithm&quot;, &quot;Control Parameters&quot;, &quot;Homing
+	    Position&quot;, &quot;ToolType&quot;,...&lt;/para&gt;
 	  &lt;/listitem&gt;
 	  &lt;listitem&gt;
 	    &lt;para&gt;&lt;emphasis&gt;Methods:&lt;/emphasis&gt; Are callable by other
@@ -314,11 +343,10 @@
 	    &lt;/para&gt;
 	  &lt;/listitem&gt;
 	  &lt;listitem&gt;
-	    &lt;para&gt;&lt;emphasis&gt;Data-Flow Ports:&lt;/emphasis&gt; Are a 'raw'
-	    data transport mechanism to communicate buffered or
-	    un-buffered data between components.  For example:
-	    &quot;JointSetpoints&quot;, &quot;EndEffectorFrame&quot;,
-	    &quot;FeedForward&quot;,...&lt;/para&gt;
+	    &lt;para&gt;&lt;emphasis&gt;Events:&lt;/emphasis&gt; Allows functions to be
+	    executed when a change in the system occurs. For example:
+	    &quot;Position Reached&quot;, &quot;Emergency Stop&quot;, &quot;Object
+	    Grasped&quot;,...&lt;/para&gt;
 	  &lt;/listitem&gt;
 	&lt;/itemizedlist&gt;
 	&lt;/para&gt;
@@ -344,53 +372,8 @@
 	&lt;/figure&gt;
 	&lt;/para&gt;
       &lt;/section&gt;
-      &lt;section&gt;&lt;title&gt;Orocos Toolkits&lt;/title&gt;
-      &lt;para&gt;
-	The lowest level of Orocos will exist out of 3 independent libraries:
-	The &quot;Real-Time Toolkit&quot;, the &quot;Bayesian Filtering Library&quot; and the &quot;Kinematics 
-	and Dynamics Library&quot;. The project is currently refactoring some parts 
-	in preparation of the 1.0 release. These changes are marked with 
-	a version number such as [v1.0].
-      &lt;/para&gt;
-      &lt;section&gt;
-	&lt;title&gt;Real-Time Toolkit (RTT)&lt;/title&gt;
-	&lt;para&gt;
-	  This is a set of C++ classes which allows a developer to
-	  build Orocos components. It provides the OS
-	  abstraction, low-level device drivers and device interfaces,
-	  and the 'task infrastructure' to build components.  It also
-	  encapsulates any distribution (using CORBA [v0.24.0]) specific code required
-	  to distribute components. This is what we are now calling
-	  the 'Real-Time Control Services' on our website. The 
-	  &lt;emphasis&gt;real-time&lt;/emphasis&gt; stands for time determinism and
-	  thread-safety but does not automatically require a real-time
-	  Operating System to be useful. The aim is that beginning
-	  Orocos users will not be working immediately with this
-	  toolkit, but use the ready made components instead.
-	&lt;/para&gt;
-      &lt;/section&gt;
-      &lt;section&gt;
-	&lt;title&gt;Bayesian Filtering Library (BFL)&lt;/title&gt;
-	&lt;para&gt;
-	  This C++ library can be used independently of Orocos today but will get a more 
-	  prominent place on the Orocos webpage. It will be used by Orocos Components
-	  which (actively) do intelligent sensor processing [v1.0]. Current BFL users will 
-	  still be able to use this library as before.
-	&lt;/para&gt;
-      &lt;/section&gt;
-      &lt;section&gt;
-	&lt;title&gt;Kinematics and Dynamics Library (KDL)&lt;/title&gt;
-	&lt;para&gt;
-	  This C++ library is today integrated within Orocos as the 'geometry' and 
-	  'kindyn' packages. It will be split off [v1.0] as an independent library for 
-	  kinematics usable by developers who do not wish to use the Real-Time Toolkit. 
-	  Credits go to Erwin Aertbelien who developed a major part of this library, 
-	  and new candidates are ready to take over the job.
-	&lt;/para&gt;
-      &lt;/section&gt;
     &lt;/section&gt;
-  &lt;/section&gt;
-  &lt;section&gt;
+    &lt;section&gt;
     &lt;title&gt;Related 'Orocos' Projects&lt;/title&gt;
     &lt;para&gt;
       The Orocos project spawned a couple of largely independent</diff>
      <filename>doc/xml/orocos-overview.xml</filename>
    </modified>
    <modified>
      <diff>@@ -105,6 +105,12 @@
 	&lt;authorinitials&gt;PS&lt;/authorinitials&gt;
 	&lt;revremark&gt;User feedback, drop 'task.' prefix for accessing properties.&lt;/revremark&gt;
       &lt;/revision&gt; 
+      &lt;revision&gt;
+	&lt;revnumber&gt;1.0.0&lt;/revnumber&gt;
+	&lt;date&gt;28 November 2006&lt;/date&gt;
+	&lt;authorinitials&gt;PS&lt;/authorinitials&gt;
+	&lt;revremark&gt;Added two new 'array' constructors.&lt;/revremark&gt;
+      &lt;/revision&gt; 
    &lt;/revhistory&gt;
 
     &lt;legalnotice&gt;
@@ -313,15 +319,65 @@
 	  &lt;para&gt;Container types can be used in two ways : with a predefined
 	    capacity (ie the &lt;emphasis&gt;possibility&lt;/emphasis&gt; to hold N items),
 	    or with a free capacity, where capacity is expanded as there is need for it.
-	    The former way is necessary for realtime programs, the latter can only be
-	    used in non realtime tasks, since it may cause a memory allocation when
-	    capacity limits are exceeded.
+	    The former way is necessary for real-time programs, the latter can only be
+	    used in non real-time tasks, since it may cause a memory allocation when
+	    capacity limits are exceeded. The following table lists all available
+	    constructors:
 	  &lt;/para&gt;
+	&lt;table frame=&quot;all&quot;&gt;
+	  &lt;title&gt;array and string constructors&lt;/title&gt;
+	  &lt;tgroup cols=&quot;3&quot;&gt;
+	    &lt;thead&gt;
+	      &lt;row&gt;
+		&lt;entry&gt;Constructor Syntax&lt;/entry&gt;
+		&lt;entry&gt;Real-Time Initialising&lt;/entry&gt;
+		&lt;entry&gt;Notes&lt;/entry&gt;
+	      &lt;/row&gt;
+	    &lt;/thead&gt;
+	    &lt;tbody&gt;
+	      &lt;row&gt;
+		&lt;entry&gt;&lt;programlisting&gt;var string x = string()&lt;/programlisting&gt;&lt;/entry&gt;
+		&lt;entry&gt;&lt;programlisting&gt;var string x&lt;/programlisting&gt;&lt;/entry&gt;
+		&lt;entry&gt;Creates an empty string. (&lt;type&gt;std::string&lt;/type&gt;)&lt;/entry&gt;
+	      &lt;/row&gt;
+	      &lt;row&gt;
+		&lt;entry&gt;&lt;programlisting&gt;var string x = string(&quot;Hello World&quot;)&lt;/programlisting&gt;&lt;/entry&gt;
+		&lt;entry&gt;&lt;programlisting&gt;var string x(&quot;Hello World&quot;)&lt;/programlisting&gt;&lt;/entry&gt;
+		&lt;entry&gt;Creates a string with contents &quot;Hello World&quot;.&lt;/entry&gt;
+	      &lt;/row&gt;
+	      &lt;row&gt;
+		&lt;entry&gt;&lt;programlisting&gt;var array x = array()&lt;/programlisting&gt;&lt;/entry&gt;
+		&lt;entry&gt;&lt;programlisting&gt;var array x&lt;/programlisting&gt;&lt;/entry&gt;
+		&lt;entry&gt;Creates an empty array. (&lt;type&gt;std::vector&amp;lt;double&amp;gt;)&lt;/type&gt;&lt;/entry&gt;
+	      &lt;/row&gt;
+	      &lt;row&gt;
+		&lt;entry&gt;&lt;programlisting&gt;var array x = array(10)&lt;/programlisting&gt;&lt;/entry&gt;
+		&lt;entry&gt;&lt;programlisting&gt;var array x(10)&lt;/programlisting&gt;&lt;/entry&gt;
+		&lt;entry&gt;Creates an array with 10 elements, all equal to 0.0.&lt;/entry&gt;
+	      &lt;/row&gt;
+	      &lt;row&gt;
+		&lt;entry&gt;&lt;programlisting&gt;var array x = array(10, 3.0)&lt;/programlisting&gt;&lt;/entry&gt;
+		&lt;entry&gt;&lt;programlisting&gt;var array x(10, 3.0)&lt;/programlisting&gt;&lt;/entry&gt;
+		&lt;entry&gt;Creates an array with 10 elements, all equal to 3.0.&lt;/entry&gt;
+	      &lt;/row&gt;
+	      &lt;row&gt;
+		&lt;entry&gt;&lt;programlisting&gt;var array x = array(1.0, 2.0, 3.0)&lt;/programlisting&gt;&lt;/entry&gt;
+		&lt;entry&gt;&lt;programlisting&gt;var array x(1.0, 2.0, 3.0)&lt;/programlisting&gt;&lt;/entry&gt;
+		&lt;entry&gt;Creates an array with 3 elements: {1.0, 2.0, 3.0}. Any number of
+		arguments may be given.&lt;/entry&gt;
+	      &lt;/row&gt;
+	    &lt;/tbody&gt;
+	  &lt;/tgroup&gt;
+	&lt;/table&gt;
+	&lt;warning&gt;&lt;para&gt;The 'Constructor Syntax' syntax leads to not
+	real-time scripts !  See the examples below. &lt;/para&gt;&lt;/warning&gt;
+	&lt;example&gt;
+	  &lt;title&gt;string and array creation&lt;/title&gt;
 	  &lt;programlisting&gt;  // A free string and free array :
-  // applestring is expanded to contain 6 characters (Non realtime!)
+  // applestring is expanded to contain 6 characters (Non real-time!)
   var string applestring = &amp;quot;apples&amp;quot;
 
-  // values is expanded to contain 15 elements (Non realtime!)
+  // values is expanded to contain 15 elements (Non real-time!)
   var array  values      = array(15)         
 
   // A fixed string and fixed array :
@@ -339,16 +395,22 @@
 
   set fixvalues  = morevalues  // ok, since morevalues only contains 10 items.
 
-  set values     = array(20)   // expand values to contain 20 doubles. (Non realtime!) &lt;/programlisting&gt;
+  set values     = array(20)   // expand values to contain 20 doubles. (Non real-time!) 
+
+  var array list(1.0, 2.0, 3.0, 4.0) // list contains {1.0, 2.0, 3.0, 4.0}
+  var array biglist;                 // creates an empty array
+  set biglist = list           // 'biglist' is now equal to 'list' (Non real-time!)
+	  &lt;/programlisting&gt;
 	  &lt;para&gt;
 	    As the example above demonstrates, a &lt;emphasis&gt;fixed&lt;/emphasis&gt; string or array may
 	    only be assigned from another string or array with equal or less elements,
 	    while a &lt;emphasis&gt;free&lt;/emphasis&gt; string or array may be assigned any number
 	    of elements.
 	  &lt;/para&gt;
+	&lt;/example&gt;
 	  &lt;important&gt;
 	    &lt;para&gt;
-	      The value given upon construction must be a
+	      The 'size' value given upon construction (array(10) or string(17)) must be a
 	      &lt;emphasis&gt;legal expression at parse time and is only
 	      evaluated once&lt;/emphasis&gt;. The safest method is using a
 	      literal integer ( i.e. (10) like in the examples ), but if you
@@ -364,7 +426,7 @@
               Which will not lead to '50', but to '5 times the
 	      value of numberOfItems, being still zero, when the program is parsed.
 	    &lt;/para&gt;
-	    &lt;/important&gt;
+	  &lt;/important&gt;
 	  &lt;para&gt;Another property of container types is that you can index (use []) their
 	    contents. The index may be any expression that return an int.
 	  &lt;/para&gt;</diff>
      <filename>doc/xml/orocos-program-parser.xml</filename>
    </modified>
    <modified>
      <diff>@@ -122,7 +122,7 @@
       series of &lt;classname&gt;Processor&lt;/classname&gt;s which loads state
       machine and program definitions and executes them. Execution of
       the programs and state machines will happen in real-time. In
-      addition, it processes incomming commands and events in
+      addition, it processes incoming commands and events in
       real-time as well. The execution engine thus exists of four
       processors : &lt;classname&gt;RTT::ProgramProcessor&lt;/classname&gt;,
       &lt;classname&gt;RTT::StateMachineProcessor&lt;/classname&gt;,
@@ -446,13 +446,13 @@
   void foo( int x, int y );
   int a1 = 1, a2 = 2;
 
-  CommandInterface* command = newCommandFunctor( boost::bind( &amp;amp;foo, a1, a2 ) );
+  ActionInterface* command = newCommandFunctor( boost::bind( &amp;amp;foo, a1, a2 ) );
 
   command-&gt;execute(); // calls foo(a1,a2)
 
   delete command;
 	&lt;/programlisting&gt;
-	Argument 'binding' is a very powerfull feature of C++. It allows to 
+	Argument 'binding' is a very powerful feature of C++. It allows to 
 	provide the arguments of a function in advance and execute the function
 	lateron.
       &lt;/para&gt;
@@ -472,7 +472,7 @@
 
   X x_object;
   int a1 = 1, a2 = 2;
-  CommandInterface* command = newCommandFunctor( boost::bind( &amp;amp;X::foo, x_object, a1, a2 ) );
+  ActionInterface* command = newCommandFunctor( boost::bind( &amp;amp;X::foo, x_object, a1, a2 ) );
 
   command-&gt;execute(); // calls x_object.foo(a1,a2)
 </diff>
      <filename>doc/xml/orocos-program-processor.xml</filename>
    </modified>
    <modified>
      <diff>@@ -38,6 +38,12 @@
 	&lt;authorinitials&gt;PS&lt;/authorinitials&gt;
 	&lt;revremark&gt;Split off the main manual.&lt;/revremark&gt;
       &lt;/revision&gt;
+      &lt;revision&gt;
+	&lt;revnumber&gt;1.0.2&lt;/revnumber&gt;
+	&lt;date&gt;18 January 2007&lt;/date&gt;
+	&lt;authorinitials&gt;PS&lt;/authorinitials&gt;
+	&lt;revremark&gt;Removed outdated text.&lt;/revremark&gt;
+      &lt;/revision&gt;
     &lt;/revhistory&gt;
 
     &lt;legalnotice&gt;</diff>
      <filename>doc/xml/orocos-task-context-devel.xml</filename>
    </modified>
    <modified>
      <diff>@@ -672,8 +672,8 @@ the_data_port.     cd            ls
       &lt;para&gt;
 	The ready-to-execute code of this section can be found in the
 	'simple-task' package on the &lt;ulink
-	url=&quot;http://www.orocos.org/download.html&quot;&gt;Download&lt;/ulink&gt;
-	page of the Orocos.org website.
+	url=&quot;http://www.orocos.org/rtt&quot;&gt;RTT Download&lt;/ulink&gt;
+	section of the Orocos.org website.
       &lt;/para&gt;
     &lt;/important&gt;
     &lt;para&gt;
@@ -871,12 +871,12 @@ the_data_port.     cd            ls
       &lt;title&gt;Interfacing the TaskContext&lt;/title&gt;
       &lt;para&gt;
 	During development of your TaskContext, it is handy to connect
-	the &lt;classname&gt;RTT::TaskBrowser&lt;/classname&gt; to your
+	the &lt;classname&gt;OCL::TaskBrowser&lt;/classname&gt; to your
 	task such that you can interactively manipulate it and it's 
 	properties:
-	&lt;programlisting&gt;  #include &amp;lt;rtt/TaskBrowser.hpp&gt;
+	&lt;programlisting&gt;  #include &amp;lt;ocl/TaskBrowser.hpp&gt;
   // ... see above
-  &lt;classname&gt;RTT::TaskBrowser&lt;/classname&gt; browser(a_task);
+  &lt;classname&gt;OCL::TaskBrowser&lt;/classname&gt; browser(a_task);
 
   // Start the interactive console:
   browser.loop();&lt;/programlisting&gt;
@@ -940,7 +940,7 @@ the_data_port.     cd            ls
 	  &lt;para&gt;
 	    The ready-to-execute code of this section can be found in the
 	    'dataflow-task' package on the &lt;ulink
-	    url=&quot;http://www.orocos.org/download.html&quot;&gt;Download&lt;/ulink&gt;
+	    url=&quot;http://www.orocos.org/rtt&quot;&gt;RTT Download&lt;/ulink&gt;
 	    page of the Orocos.org website.
 	  &lt;/para&gt;
 	&lt;/important&gt;
@@ -1391,7 +1391,7 @@ the_data_port.     cd            ls
 		&lt;entry&gt;string, array&lt;/entry&gt;
 	      &lt;/row&gt;
 	      &lt;row&gt;
-		&lt;entry&gt;Orocos Fixed Container types : RTT::Double6D, ORO_Geometry::[Frame | Rotation | Twist | ... ]&lt;/entry&gt;
+		&lt;entry&gt;Orocos Fixed Container types : RTT::Double6D, KDL::[Frame | Rotation | Twist | ... ]&lt;/entry&gt;
 		&lt;entry&gt;&lt;emphasis&gt;const &amp;amp;&lt;/emphasis&gt;&lt;/entry&gt;
 		&lt;entry&gt;double6d, frame, rotation, twist, ...&lt;/entry&gt;
 	      &lt;/row&gt;
@@ -1477,7 +1477,7 @@ the_data_port.     cd            ls
 	value of false and 5 to the task's interface. A constant 'pi' is added as well.
 	The methods return false if an attribute with that name already exists.
 	Adding a Property is also straightforward. The property is added in a 
-	&lt;classname&gt;ORO_Corelib::PropertyBag&lt;/classname&gt;.
+	&lt;classname&gt;RTT::PropertyBag&lt;/classname&gt;.
       &lt;/para&gt;
     &lt;/section&gt;
     &lt;section&gt;
@@ -1770,9 +1770,8 @@ the_data_port.     cd            ls
       &lt;/mediaobject&gt;
     &lt;para&gt;
       A task may register its events in its interface in order to be
-      used by its state machines and other tasks as well.  Events
-      are defined and explained in the Orocos
-      CoreLib Manual.
+      used by its state machines and other tasks as well.  Events are
+      defined and explained in the Orocos CoreLib Reference Manual.
     &lt;/para&gt;
     &lt;section&gt;
       &lt;title&gt;Adding Events&lt;/title&gt;
@@ -1819,7 +1818,7 @@ the_data_port.     cd            ls
       &lt;para&gt;
 	Once events are added, they can be emitted using the
 	&lt;classname&gt;RTT::Event&lt;/classname&gt; object.
-	&lt;programlisting&gt;  &lt;classname&gt;RTT::Event&amp;lt; bool(double, double, double) &amp;gt;&lt;/classname&gt; move_event 
+	&lt;programlisting&gt;  &lt;classname&gt;RTT::Event&lt;/classname&gt;&amp;lt; bool(double, double, double) &amp;gt; move_event 
     = a_task.events()-&gt;getEvent( &quot;move&quot; );
   assert( move_event.ready() );
 
@@ -1895,7 +1894,7 @@ the_data_port.     cd            ls
 	&lt;/para&gt;
       &lt;/note&gt;
       &lt;para&gt;
-	Analogous to the event example in the CoreLib Manual,
+	Analogous to the event example in the CoreLib Reference Manual,
 	a class is made to react to the event. A connection
 	is setup between the &quot;move&quot; event and the &lt;function&gt;react_callback&lt;/function&gt;
 	function of &quot;r&quot;. The connection can be controlled using
@@ -1991,11 +1990,11 @@ the_data_port.     cd            ls
       &lt;programlisting&gt;  // bi-directional :
   connectPeers( &amp;amp;a_task, &amp;amp;b_task );
   assert( a_task.hasPeer( &amp;amp;b_task.getName() ) 
-          &amp;amp;&amp;amp; b_task.hasPeer( &amp;amp;a_task.getName() );
+          &amp;amp; b_task.hasPeer( &amp;amp;a_task.getName() ) );
   // uni-directional :
   a_task.addPeer( &amp;amp;c_task );
   assert( a_task.hasPeer( &amp;amp;c_task.getName() ) 
-          &amp;amp;&amp;amp; ! c_task.hasPeer( &amp;amp;a_task.getName() );
+          &amp;amp; ! c_task.hasPeer( &amp;amp;a_task.getName() ) );
 
   // Access the interface of a Peer:
   Method&amp;lt;bool(void) m = a_task.getPeer( &quot;CTask&quot; )-&gt;methods()-&gt;getMethod&amp;lt;bool(void)&gt;(&quot;aMethod&quot;);</diff>
      <filename>doc/xml/orocos-task-context.xml</filename>
    </modified>
    <modified>
      <diff>@@ -2,11 +2,13 @@
 &lt;xsl:stylesheet xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot;
                 version='1.0'
                 xmlns=&quot;http://www.w3.org/TR/xhtml1/transitional&quot;
+		xmlns:str=&quot;http://xsltsl.org/string&quot;
                 exclude-result-prefixes=&quot;#default&quot;&gt;
 
 &lt;!-- Change this to the path to where you have installed Norman
      Walsh's XSL stylesheets.  --&gt;
 &lt;xsl:import href=&quot;/usr/share/xml/docbook/stylesheet/nwalsh/xhtml/docbook.xsl&quot;/&gt;
+&lt;xsl:import href=&quot;xsltsl-1.2.1/stdlib.xsl&quot;/&gt;
 
 &lt;!-- 
   These parameters are specific for the Orocos project and override</diff>
      <filename>doc/xsl/orocos-html.xsl</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,15 @@
+# This is a comment
+prefix=@prefix@
+exec_prefix=@exec_prefix@  # defining another variable in terms of the first
+libdir=@libdir@
+includedir=@includedir@
+
+Name: Orocos                            # human-readable name
+Description: Open Robot Control Software # human-readable description
+Version: @PACKAGE_VERSION@
+Libs: -L${libdir} -lorocos-rtt @TARGET_LIBS@
+#Libs.private: @TARGET_LIBS@
+Cflags: -I${includedir} @TARGET_FLAGS@
 
 #
 # THIS FILE IS NOT FOR INSTALLATION !</diff>
      <filename>orocos-rtt.pc.in</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ActionInterface.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ActionInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -34,7 +44,6 @@
 
 /**
  * @defgroup CoreLibActivities Activity (thread) classes.
- * @ingroup CoreLib
  * Activities execute functions in a thread.
  */
 #include &quot;SlaveActivity.hpp&quot;</diff>
      <filename>src/Activities.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ActivityInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/AnyDataSource.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ArgumentDescription.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,29 +9,38 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
  *                                                                         *
  ***************************************************************************/
  
- 
+#include &quot;DataSource.hpp&quot;
 
 #ifndef ORO_ASSIGNCOMMAND_HPP
 #define ORO_ASSIGNCOMMAND_HPP
 
 #include &quot;CommandInterface.hpp&quot;
-#include &quot;DataSource.hpp&quot;
 
 namespace RTT
 {</diff>
      <filename>src/AssignCommand.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/AsynchCommandDecorator.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/AsynchCommandDecorator.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,24 +1,34 @@
 /***************************************************************************
-  tag: Peter Soetens  Tue Dec 21 22:43:07 CET 2004  AtomicQueue.hpp 
+  tag: Peter Soetens  Wed Jan 18 14:11:39 CET 2006  AtomicQueue.hpp 
 
                         AtomicQueue.hpp -  description
                            -------------------
-    begin                : Tue December 21 2004
-    copyright            : (C) 2004 Peter Soetens
-    email                : peter.soetens@mech.kuleuven.ac.be
+    begin                : Wed January 18 2006
+    copyright            : (C) 2006 Peter Soetens
+    email                : peter.soetens@mech.kuleuven.be
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -26,24 +36,24 @@
  ***************************************************************************/
  
  
-#ifndef ORO_CORELIB_ATOMIC_QUEUE_HPP
-#define ORO_CORELIB_ATOMIC_QUEUE_HPP
-
+#ifndef ORO_QUEUE_LOCK_FREE_HPP
+#define ORO_QUEUE_LOCK_FREE_HPP
+ 
+#include &lt;vector&gt;
+#include &quot;os/oro_atomic.h&quot;
 #include &quot;os/CAS.hpp&quot;
 #include &quot;BufferPolicy.hpp&quot;
-#include &lt;utility&gt;
 
-namespace RTT 
+namespace RTT
 {
     /**
-     * Create an atomic, non-blocking single ended queue (FIFO) for storing
-     * a pointer \a T by value. It is a 
-     * Many Readers, Many Writers implementation
-     * based on the atomic Compare And Swap instruction. Any number of threads
-     * may access the queue concurrently.
-     * @warning You can not store null pointers.
-     * @param T The pointer type to be stored in the Queue.
-     * Example : AtomicQueue&lt; A* &gt; is a queue of pointers to A.
+     * A lock-free queue implementation to \a enqueue or \a dequeue
+     * a pointer of type \a T.
+     * No memory allocation is done during read or write, but the maximum number
+     * of threads which can access this object is defined by
+     * MAX_THREADS.
+     * @param T The pointer type to be stored in the queue.
+     * Example : \begincode AtomicQueue&lt;A*&gt; \endcode is a queue which holds values of type A.
      * @param ReadPolicy The Policy to block (wait) on \a empty (during dequeue)
      * using \a BlockingPolicy, or to return \a false, using \a NonBlockingPolicy (Default).
      * This does not influence partial filled queue behaviour.
@@ -52,148 +62,165 @@ namespace RTT
      * This does not influence partial filled buffer behaviour.
      * @ingroup CoreLibBuffers
      */
-    template&lt;class T, class ReadPolicy = NonBlockingPolicy, class WritePolicy = NonBlockingPolicy&gt;
+    template&lt; class T, class ReadPolicy = NonBlockingPolicy, class WritePolicy = NonBlockingPolicy&gt;
     class AtomicQueue
     {
-        //typedef _T* T;
-        const int _size;
-        typedef std::pair&lt;T, int&gt;  C;
-        typedef volatile C* volatile WriteType;
-        typedef volatile C* volatile const ReadType;
-        typedef volatile C* CachePtrType;
-        typedef C* volatile CacheObjType;
-        typedef C  ValueType;
-        typedef C* PtrType;
-
-        /**
-         * The pointer to the buffer can be cached,
-         * the contents are volatile.
-         */
-        CachePtrType  _buf;
-
-        /**
-         * A volatile pointer to a volatile cell.
+    public:
+        /** 
+         * @brief The maximum number of threads.
+         *
+         * The number of threads which may concurrently access this buffer.
          */
-        WriteType _wptr;
+        const unsigned int MAX_THREADS;
 
-        /**
-         * This pointer is also writable because we
-         * set it to zero to indicate it has been read.
-         */
-        WriteType _rptr;
+        typedef T value_t;
+    private:
+        typedef std::vector&lt;value_t&gt; BufferType;
+        typedef typename BufferType::iterator Iterator;
+        typedef typename BufferType::const_iterator CIterator;
+        struct Item {
+            Item()  {
+                //ATOMIC_INIT(count);
+                atomic_set(&amp;count,-1);
+            }
+            mutable atomic_t count;  // refcount
+            BufferType data;
+        };
 
-        WritePolicy write_policy;
-        ReadPolicy read_policy;
+        struct StorageImpl
+        {
+            Item* items;
+            StorageImpl(size_t alloc) : items( new Item[alloc] ) {
+            }
+            ~StorageImpl() {
+                delete[] items;
+            }
+            Item&amp; operator[](int i) {
+                return items[i];
+            }
+        };
 
         /**
-         * Atomic advance and wrap of the Write pointer.
-         * Return the old position or zero if queue is full.
+         * Our single storage
          */
-        CachePtrType advance_w()
+        typedef StorageImpl* Storage;
+
+        Storage newStorage(size_t alloc, size_t items, bool init = true)
         {
-            CachePtrType oldval, newval;
-            do {
-                oldval = _wptr;
-                newval =  oldval+1;
-                if ( newval &gt;= _buf+_size )
-                    newval -= _size;
-                // check for full : 
-                if ( newval-&gt;first != 0 || newval == _rptr || newval == _rptr + _size )
-                    return 0;
-                // if ptr is unchanged, replace it with newval.
-            } while ( !OS::CAS( &amp;_wptr, oldval, newval) );
-            // frome here on :
-            // oldval is 'unique', other preempting threads
-            // will have a different value for oldval, as
-            // _wptr advances.
+            Storage st( new StorageImpl(alloc) );
+            for (unsigned int i=0; i &lt; alloc; ++i) {
+                (*st)[i].data.reserve( items ); // pre-allocate
+            }
+            // bootstrap the first queue :
+            if (init) {
+                active = &amp;(*st)[0];
+                atomic_inc( &amp;active-&gt;count );
+            }
 
-            // return the old position to write to :
-            return oldval;
+            return st;
         }
-        /**
-         * Atomic advance and wrap of the Read pointer.
-         * Return the data position or zero if queue is empty.
-         */
-        CachePtrType advance_r()
-        {
-            CachePtrType oldval, newval;
-            do {
-                oldval = _rptr;
-                newval =  oldval+1;
-                if ( newval &gt;= _buf+_size )
-                    newval -= _size;
-                // check for empty : 
-                if ( oldval-&gt;first == 0 )
-                    return 0;
-                // if ptr is unchanged, replace it with newval.
-            } while ( !OS::CAS( &amp;_rptr, oldval, newval) );
-            // frome here on :
-            // oldval is 'unique', other preempting threads
-            // will have a different value for oldval, as
-            // _rptr advances.
 
-            // return the old position to read from :
-            return oldval;
+        Storage bufs;
+        Item* volatile active;
+
+        // each thread has one 'working' buffer, and one 'active' buffer
+        // lock. Thus we require to allocate twice as much buffers as threads,
+        // for all the locks to succeed in a worst case scenario.
+        inline size_t BufNum() const {
+            return MAX_THREADS * 2;
         }
 
-        // non-copyable !
-        AtomicQueue( const AtomicQueue&lt;T&gt;&amp; );
+        WritePolicy write_policy;
+        ReadPolicy read_policy;
+
+        atomic_t counter;
+        atomic_t dcounter;
     public:
         typedef unsigned int size_type;
 
         /**
-         * Create an AtomicQueue with queue size \a size.
-         * @param size The size of the queue, should be 1 or greater.
-         */
-        AtomicQueue( unsigned int size )
-            : _size(size+1), write_policy(size), read_policy(0)
+         * Create a lock-free queue wich can store \a lsize elements.
+         * @param lsize the capacity of the queue.
+         * @param threads the number of threads which may concurrently
+         * read or write this buffer. Defaults to ORONUM_OS_MAX_THREADS, but you
+         * may lower this number in case not all threads will read this buffer.
+         * A lower number will consume less memory.
+'        */
+        AtomicQueue(unsigned int lsize, unsigned int threads = ORONUM_OS_MAX_THREADS )
+            : MAX_THREADS( threads ), write_policy(lsize), read_policy(0)
         {
-            _buf= new C[_size];
-            this-&gt;clear();
+            const unsigned int BUF_NUM = BufNum();
+            bufs = newStorage( BUF_NUM, lsize );
+            atomic_set(&amp;counter,0);
+            atomic_set(&amp;dcounter,0);
+        }
+
+        ~AtomicQueue() {
+            delete bufs;
         }
 
-        ~AtomicQueue()
+        size_t capacity() const
         {
-            delete[] _buf;
+            size_t res;
+            Item* orig = lockAndGetActive();
+            res = orig-&gt;data.capacity();
+            atomic_dec( &amp;orig-&gt;count ); // lockAndGetActive
+            return res;
         }
 
-        /**
-         * Inspect if the Queue is full.
-         * @return true if full, false otherwise.
-         */
-        bool isFull() const
+        size_t size() const
         {
-            // two cases where the queue is full : 
-            // if wptr is one behind rptr or if wptr is at end
-            // and rptr at beginning.
-            return _wptr-&gt;first != 0 || _wptr == _rptr - 1 || _wptr == _rptr+_size - 1;
+            size_t res;
+            Item* orig = lockAndGetActive();
+            res = orig-&gt;data.size();
+            atomic_dec( &amp;orig-&gt;count ); // lockAndGetActive
+            return res;
         }
-        
+
         /**
          * Inspect if the Queue is empty.
          * @return true if empty, false otherwise.
          */
         bool isEmpty() const
         {
-            // empty if nothing to read.
-            return _rptr-&gt;first == 0;
+            bool res;
+            Item* orig = lockAndGetActive();
+            res = orig-&gt;data.empty();
+            atomic_dec( &amp;orig-&gt;count ); // lockAndGetActive
+            return res;
         }
 
         /**
-         * Return the maximum number of items this queue can contain.
+         * Inspect if the Queue is full.
+         * @return true if full, false otherwise.
          */
-        size_type capacity() const
+        bool isFull() const
         {
-            return _size -1;
+            bool res;
+            Item* orig = lockAndGetActive();
+            res = (orig-&gt;data.size() == orig-&gt;data.capacity());
+            atomic_dec( &amp;orig-&gt;count ); // lockAndGetActive
+            return res;
         }
 
-        /**
-         * Return the number of elements in the queue.
-         */
-        size_type size() const
+        void clear()
         {
-            int c = (_wptr - _rptr);
-            return c &gt;= 0 ? c : c + _size;
+            Item* orig(0);
+            Item* nextbuf(0);
+            int items = 0;
+            do {
+                if (orig) {
+                    atomic_dec(&amp;orig-&gt;count);
+                    atomic_dec(&amp;nextbuf-&gt;count);
+                }
+                orig = lockAndGetActive();
+                items = orig-&gt;data.size();
+                nextbuf = findEmptyBuf(); // find unused Item in bufs
+            } while ( OS::CAS(&amp;active, orig, nextbuf ) == false );
+            atomic_dec( &amp;orig-&gt;count ); // lockAndGetActive
+            atomic_dec( &amp;orig-&gt;count ); // ref count
+            atomic_set(&amp;counter,0);
+            atomic_set(&amp;dcounter,0);
         }
 
         /**
@@ -203,13 +230,25 @@ namespace RTT
          */
         bool enqueue(const T&amp; value)
         {
-            if ( value == 0 )
-                return false;
+            Item* orig=0;
+            Item* usingbuf(0);
             write_policy.pop();
-            CachePtrType loc = advance_w();
-            if ( loc == 0 )
-                return false;
-            loc-&gt;first = value;
+            do {
+                if (orig) {
+                    atomic_dec(&amp;orig-&gt;count);
+                    atomic_dec(&amp;usingbuf-&gt;count);
+                }
+                orig = lockAndGetActive();
+                if ( orig-&gt;data.size() == orig-&gt;data.capacity() ) { // check for full
+                    atomic_dec( &amp;orig-&gt;count );
+                    return false;
+                }
+                usingbuf = findEmptyBuf(); // find unused Item in bufs
+                usingbuf-&gt;data = orig-&gt;data;
+                usingbuf-&gt;data.push_back( value );
+            } while ( OS::CAS(&amp;active, orig, usingbuf ) ==false);
+            atomic_dec( &amp;orig-&gt;count ); // lockAndGetActive()
+            atomic_dec( &amp;orig-&gt;count ); // set queue free
             read_policy.push();
             return true;
         }
@@ -218,44 +257,63 @@ namespace RTT
          * Enqueue an item and return its 'ticket' number.
          * @param value The value to enqueue.
          * @return zero if the queue is full, the 'ticket' number otherwise.
+         * @deprecated &lt;b&gt; Do not use this function &lt;/b&gt;
          */
         int enqueueCounted(const T&amp; value)
         {
-            if ( value == 0 )
-                return 0;
-            write_policy.pop();
-            CachePtrType loc = advance_w();
-            if ( loc == 0 )
-                return 0;
-            loc-&gt;first = value;
-            read_policy.push();
-            return loc-&gt;second;
+            if ( enqueue( value ) ) {
+                atomic_inc(&amp;counter);
+                return atomic_read(&amp;counter);
+            }
+            return 0;
         }
 
         /**
          * Dequeue an item.
-         * @param value The value dequeued.
+         * @param result The value dequeued.
          * @return false if queue is empty, true if dequeued.
          */
         bool dequeue( T&amp; result )
         {
+            Item* orig=0;
+            Item* usingbuf(0);
             read_policy.pop();
-            CachePtrType loc = advance_r();
-            if ( loc == 0 )
-                return false;
-            result = loc-&gt;first;
-            loc-&gt;second += _size; // give the cell a new number.
-            loc-&gt;first   = 0; // this releases the cell to write to.
+            do {
+                if (orig) {
+                    atomic_dec(&amp;orig-&gt;count);
+                    atomic_dec(&amp;usingbuf-&gt;count);
+                }
+                orig = lockAndGetActive();
+                if ( orig-&gt;data.empty() ) { // check for empty
+                    atomic_dec( &amp;orig-&gt;count );
+                    return false;
+                }
+                usingbuf = findEmptyBuf(); // find unused Item in bufs
+                result = orig-&gt;data.front();
+                CIterator it = ++(orig-&gt;data.begin());
+                for ( ;  it != orig-&gt;data.end(); ++it )
+                    usingbuf-&gt;data.push_back(*it);
+                //usingbuf-&gt;data.insert( usingbuf-&gt;data.end(), it, orig-&gt;data.end() ); // ALTERNATIVE. (does it allocate??)
+            } while ( OS::CAS(&amp;active, orig, usingbuf ) ==false);
+            atomic_dec( &amp;orig-&gt;count ); // lockAndGetActive()
+            atomic_dec( &amp;orig-&gt;count ); // set queue free
             write_policy.push();
             return true;
         }
 
         /**
-         * Return the next to be read value.
+         * Dequeue an item and return the same 'ticket' number when it was queued.
+         * @param value The value dequeued.
+         * @return zero if the queue is empty, the 'ticket' number otherwise.
+         * @deprecated &lt;b&gt; Do not use this function &lt;/b&gt;
          */
-        const T front() const
+        int dequeueCounted( T&amp; result )
         {
-            return _rptr;
+            if (dequeue(result) ) {
+                atomic_inc(&amp;dcounter);
+                return atomic_read(&amp;dcounter);
+            }
+            return 0;
         }
 
         /**
@@ -267,56 +325,88 @@ namespace RTT
         template&lt;class MPoolType&gt;
         T lockfront(MPoolType&amp; mp) const
         {
-            CachePtrType loc=0;
             bool was_locked = false;
+            Item* orig=0;
+            T result;
             do {
-                if (was_locked)
-                    mp.unlock(loc-&gt;first);
-                loc = _rptr;
-                if (loc-&gt;first == 0)
+                if (orig) {
+                    mp.unlock( orig-&gt;data.front() );
+                    atomic_dec(&amp;orig-&gt;count);
+                }
+                orig = lockAndGetActive();
+                if ( orig-&gt;data.empty() ) { // check for empty
+                    atomic_dec( &amp;orig-&gt;count ); //lockAndGetActive
                     return 0;
-                was_locked = mp.lock(loc-&gt;first);
+                }
+
+                was_locked = mp.lock( orig-&gt;data.front() );
                 // retry if lock failed or read moved.
-            } while( !was_locked || loc != _rptr ); // obstruction detection.
-            return loc-&gt;first;
+            } while( !was_locked );
+            result = orig-&gt;data.front();
+            atomic_dec( &amp;orig-&gt;count ); // lockAndGetActive()
+            return result;
         }
 
         /**
-         * Dequeue an item and return the same 'ticket' number when it was queued.
-         * @param value The value dequeued.
-         * @return zero if the queue is empty, the 'ticket' number otherwise.
+         * Returns the first element of the queue.
          */
-        int dequeueCounted( T&amp; result )
+        value_t front() const
         {
-            read_policy.pop();
-            CachePtrType loc = advance_r();
-            if ( loc == 0 )
-                return 0;
-            result = loc-&gt;first;
-            int nr = loc-&gt;second;
-            loc-&gt;second += _size; // give the cell a new number.
-            loc-&gt;first = 0; // this releases the cell to write to.
-            write_policy.push();
-            return nr;
+            Item* orig = lockAndGetActive();
+            value_t ret(orig-&gt;data.front());
+            atomic_dec( &amp;orig-&gt;count ); //lockAndGetActive
+            return ret;
         }
 
         /**
-         * Clear all contents of the Queue and thus make it empty.
+         * Returns the last element of the queue.
          */
-        void clear()
+        value_t back() const
         {
-            for(int i = 0 ; i != _size; ++i) {
-                if ( _buf[i].first != 0 ) {
-                    _buf[i].first  = 0;
-                }
-                _buf[i].second = i+1; // init the counters
+            Item* orig = lockAndGetActive();
+            value_t ret(orig-&gt;data.back());
+            atomic_dec( &amp;orig-&gt;count ); //lockAndGetActive
+            return ret;
+        }
+
+    private:
+        /**
+         * Item returned is guaranteed empty
+         */
+        Item* findEmptyBuf() {
+            // These two functions are copy/pasted from BufferLockFree.
+            // If MAX_THREADS is large enough, this will always succeed :
+            Item* start = &amp;(*bufs)[0];
+            while( true ) {
+                if ( atomic_inc_and_test( &amp;start-&gt;count ) )
+                    break;
+                atomic_dec( &amp;start-&gt;count );
+                ++start;
+                if (start == &amp;(*bufs)[0] + BufNum() )
+                    start = &amp;(*bufs)[0]; // in case of races, rewind
             }
-            _rptr = _buf;
-            _wptr = _buf;
-            write_policy.reset( _size - 1 );
-            read_policy.reset(0);
+            start-&gt;data.clear();
+            return start; // unique pointer across all threads
+        }
+
+        /**
+         * Only to be used by reserve() !
+         * Caller must guarantee that active points to valid memory.
+         */
+        Item* lockAndGetActive() const {
+            // only operates on active's refcount.
+            Item* orig=0;
+            do {
+                if (orig)
+                    atomic_dec( &amp;orig-&gt;count );
+                orig = active;
+                atomic_inc( &amp;orig-&gt;count );
+                // this synchronisation point is 'aggressive' (a _sufficient_ condition)
+                // if active is still equal to orig, the increase of orig-&gt;count is
+                // surely valid, since no contention (change of active) occured.
+            } while ( active != orig );
+            return orig;
         }
-            
     };
 
 }</diff>
      <filename>src/AtomicQueue.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Attribute.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Attribute.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/AttributeBase.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/AttributeRepository.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/AttributeRepository.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,7 +1,46 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:12 CET 2006  BindStorage.hpp 
+
+                        BindStorage.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_TASK_BIND_STORAGE_HPP
 #define ORO_TASK_BIND_STORAGE_HPP
 
 #include &lt;boost/function.hpp&gt;
+#include &lt;boost/type_traits/function_traits.hpp&gt;
 #include &lt;boost/function_types/function_type.hpp&gt;
 #include &lt;boost/function_types/function_type_arity.hpp&gt;
 #include &lt;boost/bind.hpp&gt;</diff>
      <filename>src/BindStorage.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/BufferBase.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/BufferConnection.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/BufferConnectionInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/BufferDataSource.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -37,7 +47,7 @@ namespace RTT
     /**
      * A Buffer is an object which is used to store (Push) and retrieve (Pop) values from.
      * @param T The value type stored in this buffer.
-     * @ingroup CoreLibBuffers
+     * @ingroup Ports
      */
     template&lt;class T&gt;
     class BufferInterface :</diff>
      <filename>src/BufferInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -60,7 +70,7 @@ namespace RTT
      * @param WritePolicy The Policy to block (wait) on \a full (during write), 
      * using \a BlockingPolicy, or to return \a false, using \a NonBlockingPolicy (Default).
      * This does not influence partial filled buffer behaviour.
-     * @ingroup CoreLibBuffers
+     * @ingroup Ports
      */
     template&lt; class T, class ReadPolicy = NonBlockingPolicy, class WritePolicy = NonBlockingPolicy &gt;
     class BufferLockFree</diff>
      <filename>src/BufferLockFree.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -43,7 +53,7 @@ namespace RTT
      * Implements a very simple blocking threadsafe buffer, using mutexes (locks).
      *
      * @see BufferLockFree
-     * @ingroup CoreLibBuffers
+     * @ingroup Ports
      */
     template&lt;class T&gt;
     class BufferLocked</diff>
      <filename>src/BufferLocked.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/BufferPolicy.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -42,6 +52,7 @@ namespace RTT
      * Use connection() to access the buffer. If the port is not
      * connected, connection() returns null.
      * @param T The type of the data of the buffer.
+     * @ingroup Ports
      */
     template&lt;class T&gt;
     class ReadBufferPort
@@ -181,9 +192,11 @@ namespace RTT
          */
         virtual PortInterface* antiClone() const;
 
-        virtual OperationInterface* createPortObject() {
+        virtual TaskObject* createPortObject() {
 #ifndef ORO_EMBEDDED
             TaskObject* to = new TaskObject( this-&gt;getName() );
+            to-&gt;methods()-&gt;addMethod( method(&quot;ready&quot;,&amp;PortInterface::ready, this),
+                                      &quot;Check if this port is connected and ready for use.&quot;);
             to-&gt;methods()-&gt;addMethod(method(&quot;Pop&quot;, &amp;ReadBufferPort&lt;T&gt;::Pop, this),
                                      &quot;Pop a single value from the Buffer. Returns false if empty.&quot;,
                                      &quot;Val&quot;, &quot;The value returned by argument.&quot;);
@@ -211,6 +224,7 @@ namespace RTT
      * Use connection() to access the buffer. If the port is not
      * connected, connection() returns null.
      * @param T The type of the data of the buffer.
+     * @ingroup Ports
      */
     template&lt;class T&gt;
     class WriteBufferPort
@@ -370,9 +384,11 @@ namespace RTT
             return new ReadBufferPort&lt;T&gt;( this-&gt;getName() );
         }
 
-        virtual OperationInterface* createPortObject() {
+        virtual TaskObject* createPortObject() {
 #ifndef ORO_EMBEDDED
             TaskObject* to = new TaskObject( this-&gt;getName() );
+            to-&gt;methods()-&gt;addMethod( method(&quot;ready&quot;,&amp;PortInterface::ready, this),
+                                      &quot;Check if this port is connected and ready for use.&quot;);
             to-&gt;methods()-&gt;addMethod(method(&quot;Push&quot;, &amp;WriteBufferPort&lt;T&gt;::Push, this),
                                      &quot;Push a single value in the Buffer. Returns false if full().&quot;,
                                      &quot;Val&quot;, &quot;The value.&quot;);
@@ -399,6 +415,8 @@ namespace RTT
      * Use connection() to access the buffer. If the port is not
      * connected, connection() returns null.
      * @param T The type of the data of the buffer.
+     * @ingroup Ports
+     * @ingroup RTTComponentInterface
      */
     template&lt;class T&gt;
     class BufferPort
@@ -546,9 +564,11 @@ namespace RTT
             return this-&gt;clone();
         }
 
-        virtual OperationInterface* createPortObject() {
+        virtual TaskObject* createPortObject() {
 #ifndef ORO_EMBEDDED
             TaskObject* to = new TaskObject( this-&gt;getName() );
+            to-&gt;methods()-&gt;addMethod( method(&quot;ready&quot;,&amp;PortInterface::ready, this),
+                                      &quot;Check if this port is connected and ready for use.&quot;);
             to-&gt;methods()-&gt;addMethod(method(&quot;Push&quot;, &amp;WriteBufferPort&lt;T&gt;::Push, this),
                                      &quot;Push a single value in the Buffer. Returns false if full().&quot;,
                                      &quot;Val&quot;, &quot;The value.&quot;);</diff>
      <filename>src/BufferPort.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -31,8 +41,8 @@
  * This file includes the common header files from the 
  * RTT buffers package.
  */
-/**
- * @defgroup CoreLibBufferss Data Transfer classes.
+/*
+ * @defgroup CoreLibBuffers Data Transfer classes.
  * @ingroup CoreLib
  * Thread-safe implementations of data container objects
  * such as Buffers, DataObjects and Lists.</diff>
      <filename>src/Buffers.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/BuildType.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CallbackInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:06 CET 2006  Command.hpp 
+
+                        Command.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_TASK_COMMAND_HPP
 #define ORO_TASK_COMMAND_HPP
 
@@ -11,6 +49,12 @@
 namespace RTT
 {
     /**
+     * @defgroup Commands Command Interface
+     * Asynchronous command sending.
+     * @ingroup RTTComponentInterface
+     */
+
+    /**
      * A Command is a function which can be sent to a
      * task for execution and be queried for its execution status.
      * The sending is also called the 'invocation' of the Command object.
@@ -42,6 +86,8 @@ namespace RTT
      mycom(3, f, 9.0);
      @endcode
      *
+     * @ingroup RTTComponentInterface
+     * @ingroup Commands
      */
     template&lt;class CommandT&gt;
     class Command </diff>
      <filename>src/Command.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:09 CET 2006  CommandBase.hpp 
+
+                        CommandBase.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_COMMAND_BASE_HPP
 #define ORO_COMMAND_BASE_HPP
 </diff>
      <filename>src/CommandBase.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandC.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandC.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandComposite.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandCounter.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandCounter.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:12 CET 2006  CommandDS.hpp 
+
+                        CommandDS.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_TASK_COMMAND_DS_HPP
 #define ORO_TASK_COMMAND_DS_HPP
 </diff>
      <filename>src/CommandDS.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,9 +1,49 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:10 CET 2006  CommandDSFunctors.hpp 
+
+                        CommandDSFunctors.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_COMMAND_DS_FUNCTORS_HPP
 #define ORO_COMMAND_DS_FUNCTORS_HPP
 
 #include &lt;boost/type_traits.hpp&gt;
 #include &lt;boost/shared_ptr.hpp&gt;
 #include &lt;boost/weak_ptr.hpp&gt;
+#include &lt;boost/function.hpp&gt;
+#include &quot;DataSource.hpp&quot;
 
 namespace RTT
 {</diff>
      <filename>src/CommandDSFunctors.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandDataSource.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandDispatch.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandDispatch.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,60 +0,0 @@
-/***************************************************************************
-  tag: Peter Soetens  Thu Jul 15 11:21:21 CEST 2004  CommandEmitEvent.hpp 
-
-                        CommandEmitEvent.hpp -  description
-                           -------------------
-    begin                : Thu July 15 2004
-    copyright            : (C) 2004 Peter Soetens
-    email                : peter.soetens at mech.kuleuven.ac.be
- 
- ***************************************************************************
- *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
- *                                                                         *
- *   This library is distributed in the hope that it will be useful,       *
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
- *   Lesser General Public License for more details.                       *
- *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
- *   License along with this library; if not, write to the Free Software   *
- *   Foundation, Inc., 59 Temple Place,                                    *
- *   Suite 330, Boston, MA  02111-1307  USA                                *
- *                                                                         *
- ***************************************************************************/
-
-#include &quot;CommandInterface.hpp&quot;
-#include &quot;Event.hpp&quot;
-
-namespace RTT
-{
-
-    /**
-     * A command which will \a fire() an Event
-     * when \a execute()'ed.
-     */
-    class CommandEmitEvent
-        : public CommandInterface
-    {
-        Event&lt;void(void)&gt;* event;
-    public:
-        /**
-         * Create with a nullary Event.
-         */
-        CommandEmitEvent( Event&lt;void(void)&gt;* ev )
-            : event(ev) {}
-        bool execute()
-        {
-            event-&gt;fire();
-            return true;
-        }
-
-        void readArguments() {}
-
-        CommandInterface* clone() const {
-            return new CommandEmitEvent( event );
-        }
-    };
-}</diff>
      <filename>src/CommandEmitEvent.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandExecFunction.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -104,6 +114,9 @@ namespace RTT
         }
 
         ~CommandExecFunction() {
+            if ( _foo-&gt;isRunning() )
+                log(Critical) &lt;&lt; &quot;Destroying Function running in ProgramProcessor !&quot; &lt;&lt; endlog();
+            this-&gt;reset();
         }
 
         void readArguments()
@@ -140,7 +153,7 @@ namespace RTT
             minit-&gt;reset();
             isqueued = false;
             //remove any old left-overs.
-            _proc-&gt;removeFunction( _foo.get() );
+            _foo-&gt;stop();
         }
 
         virtual bool sent() const {</diff>
      <filename>src/CommandExecFunction.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandFactoryComposite.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandFactoryInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandFunctor.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:11 CET 2006  CommandFunctors.hpp 
+
+                        CommandFunctors.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_COMMANDFUNCTORS_HPP
 #define ORO_COMMANDFUNCTORS_HPP
 </diff>
      <filename>src/CommandFunctors.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandIllegal.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandIllegal.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandNOP.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandNOP.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandProcessor.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -62,6 +72,7 @@ namespace RTT
      * process() fails when the queue is full; step() does nothing
      * when the queue is empty. A subclass may install a new
      * command queue with for example blocking semantics.
+     * @ingroup Processor
      */
     class CommandProcessor
         : public RunnableInterface</diff>
      <filename>src/CommandProcessor.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:10 CET 2006  CommandRepository.hpp 
+
+                        CommandRepository.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_COMMAND_REPOSITORY_HPP
 #define ORO_COMMAND_REPOSITORY_HPP
 
@@ -18,6 +56,7 @@ namespace RTT
     /**
      * A command repository stores a number of commands from a Task which
      * can be used by other tasks or from scripts.
+     * @ingroup Commands
      */
     class CommandRepository
         : public OperationFactory&lt;DispatchInterface*&gt;</diff>
      <filename>src/CommandRepository.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandString.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CommandString.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Common.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CompletionProcessor.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionBool.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionBool.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionBoolDataSource.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionBoolDataSource.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionBoolProperty.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionBoolProperty.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionCompare.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionComposite.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionComposite.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionDSDuration.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionDSDuration.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionDuration.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionDuration.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionExpire.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionFalse.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionInterface.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionInvert.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionOnce.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionOnce.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConditionTrue.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConfigurationInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -26,20 +36,19 @@
  ***************************************************************************/ 
  
 
-#ifndef CONFIGURATOR_HPP
-#define CONFIGURATOR_HPP
+#ifndef ORO_CONFIGURATOR_HPP
+#define ORO_CONFIGURATOR_HPP
 
 #include &quot;ConfigurationInterface.hpp&quot;
-#include &quot;NonRealTimeActivity.hpp&quot;
-#include &quot;PreemptibleActivity.hpp&quot;
-#include &quot;NonPreemptibleActivity.hpp&quot;
+#include &quot;PeriodicActivity.hpp&quot;
 #include &quot;TimeService.hpp&quot;
 #include &quot;Time.hpp&quot;
 
 namespace RTT
 {
     /**
-     * @brief A task which configures components.
+     * @brief A class which configures other objects in small steps 
+     * spread in time.
      *
      * This is a step-wise configurator which instructs
      * another class to do a configuration 'step'. After
@@ -47,15 +56,12 @@ namespace RTT
      * step and so on until an error occured or the configuration
      * is finished.
      *
-     * @param BaseActivity Template : The Activity formalism to use.
+     * @see ConfigurationInterface
      */
-    template&lt; class BaseActivity &gt;
     class Configurator 
-        : protected BaseActivity
+        : protected PeriodicActivity
     {
     public:
-        typedef BaseActivity Base;
-        
         /**
          * Creates a Configurator with configuration
          * period of \a period.
@@ -63,20 +69,20 @@ namespace RTT
          * @param period The period between each configuration step.
          */
         Configurator( double period )
-            :Base( period ), target(0), status (false)
+            :PeriodicActivity(RTT::OS::LowestPriority, period ), mtarget(0), status (false)
         {
         }
 
         /**
-         * Configures &lt;_target&gt;. Returns when the configuration
+         * Configures \a target. Returns when the configuration
          * finished or terminated in error. So this is a blocking call,
          * but the Configurator itself is a non blocking task.
          *
          * @return true if the configuration finished, false otherwise.
          */
-        bool configure( ConfigurationInterface* _target, Seconds _timeout = 0 )
+        bool configure( ConfigurationInterface* target, Seconds _timeout = 0 )
         {
-            target = _target;
+            mtarget = target;
             TimeService::ticks timestamp = TimeService::Instance()-&gt;getTicks();
             this-&gt;start();
 
@@ -99,29 +105,29 @@ namespace RTT
          */
         ConfigurationInterface* configTarget() const
         {
-            return target;
+            return mtarget;
         }
 
         bool initialize()
         {
-            target-&gt;configInit();
+            mtarget-&gt;configInit();
             return true;
         }
 
         void step()
         {
-            if ( !target-&gt;configStep() || target-&gt;isFinished() )
+            if ( !mtarget-&gt;configStep() || mtarget-&gt;isFinished() )
                 this-&gt;stop();
         }
 
         void finalize()
         {
-            status = target-&gt;isFinished();
-            target-&gt;configCleanup();
+            status = mtarget-&gt;isFinished();
+            mtarget-&gt;configCleanup();
         }
 
     protected:
-        ConfigurationInterface* target;
+        ConfigurationInterface* mtarget;
 
         /**
          * Flag to save status of the target.
@@ -129,18 +135,6 @@ namespace RTT
         bool status;
     };
 
-    /**
-     * A NonPreemptible Configurator.
-     */
-    typedef Configurator&lt;NonPreemptibleActivity&gt; NonPreemptibleConfigurator;
-    /**
-     * A Preemptible Configurator.
-     */
-    typedef Configurator&lt;PreemptibleActivity&gt; PreemptibleConfigurator;
-    /**
-     * A NonRealTime Configurator.
-     */
-    typedef Configurator&lt;NonRealTimeActivity&gt; NonRealTimeConfigurator;
 }
 
 </diff>
      <filename>src/Configurator.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConnectionC.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConnectionC.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConnectionFactory.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConnectionInterface.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConnectionInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ConnectionTypes.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CoreLib.Main.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -31,16 +41,14 @@
  * Core Library.
  */
  
-/**
- * @defgroup CoreLib The Core Library
+/*
+ * @defgroup CoreLib The Core Primitives
  * @brief Buffers, DataObjects, Commands, NameServing, Activities, Events, Timing, Properties
  *
  * The most frequently used Core primitives in Orocos are Logger, Event,
  * PeriodicActivity, NonPeriodicActivity, BufferLockFree, DataObjectLockFree, TimeService, NameServer, Property,
  * PropertyBag, Attribute, Toolkit.
  *
- * The Core Library is documented in &lt;a href=&quot;../../orocos-corelib.html&quot;&gt;
- * The Orocos CoreLib Online Manual&lt;/a&gt;
  */
 
 #include &quot;Common.hpp&quot;</diff>
      <filename>src/CoreLib.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/CoreRunnableInterface.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataConnection.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataConnectionInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -39,6 +49,7 @@ namespace RTT
 
     /**
      * The Interface of a TaskContext which exposes its data-flow ports.
+     * @ingroup Ports
      */
     class DataFlowInterface
     {
@@ -153,6 +164,26 @@ namespace RTT
             return &quot;&quot;;
         }
 
+        /**
+         * Create a Task Object through which one can access a Port.
+         * This is required to access ports from the scripting interface.
+         * @param name The port name
+         */
+        OperationInterface* createPortObject(const std::string&amp; name) {
+            PortInterface* p = this-&gt;getPort(name);
+            if ( !p )
+                return 0;
+            TaskObject* to = p-&gt;createPortObject();
+            if (to) {
+                std::string d = this-&gt;getPortDescription(name);
+                if ( !d.empty() )
+                    to-&gt;setDescription( d );
+                else
+                    to-&gt;setDescription(&quot;(No description set for this Port)&quot;);
+            }
+            return to;
+        }
+
 
         /**
          * Get a port of a specific type.
@@ -168,6 +199,7 @@ namespace RTT
         void clear()
         {
             ports.clear();
+            descriptions.clear();
         }
     };
 </diff>
      <filename>src/DataFlowInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataObjectInterfaces.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -48,12 +58,13 @@ namespace RTT
      *
      * @see DataObject
      * @param T The \a DataType which can be Get() or Set() with this DataObject.
-     * @ingroup CoreLibBuffers
+     * @ingroup Ports
      */
     template &lt;class T&gt;
-    struct DataObjectInterface
+    class DataObjectInterface
         : public AssignableDataSource&lt;T&gt;
     {
+    public:
         /**
          * If you plan to use a reference counted DataObject, use this
          * type to store it and apply this-&gt;deref() to enable reference counting.
@@ -144,7 +155,7 @@ namespace RTT
      * threadsafe implementation, and can be blocking in situations where you do not want
      * that. Use the DataObjectPrioritySet and DataObjectPriorityGet classes for non
      * blocking Set or Get operations.
-     * @ingroup CoreLibBuffers
+     * @ingroup Ports
      */
     template&lt;class T&gt;
     class DataObjectLocked
@@ -463,7 +474,7 @@ namespace RTT
      * Further, multiple reads may occur before, during and after
      * a write operation simultaneously. The buffer needs readers+2*writers
      * elements to be guaranteed non blocking.
-     * @ingroup CoreLibBuffers
+     * @ingroup Ports
      */
     template&lt;class T&gt;
     class DataObjectLockFree</diff>
      <filename>src/DataObjectInterfaces.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -43,6 +53,7 @@ namespace RTT
      * Use connection() to access the data object. If the port is not
      * connected, connection() returns null.
      * @param T The type of the data of the data object.
+     * @ingroup Ports
      */
     template&lt;class T&gt;
     class ReadDataPort
@@ -128,11 +139,13 @@ namespace RTT
 
         virtual PortInterface* antiClone() const;
 
-        virtual OperationInterface* createPortObject() {
+        virtual TaskObject* createPortObject() {
 #ifndef ORO_EMBEDDED
             typedef T (ReadDataPort&lt;T&gt;::*GetType)(void) const;
             GetType get_type = &amp;ReadDataPort&lt;T&gt;::Get;
             TaskObject* to = new TaskObject( this-&gt;getName() );
+            to-&gt;methods()-&gt;addMethod( method(&quot;ready&quot;,&amp;PortInterface::ready, this),
+                                      &quot;Check if this port is connected and ready for use.&quot;);
             to-&gt;methods()-&gt;addMethod( method(&quot;Get&quot;,get_type, this),
                                       &quot;Get the current value of this Read Data Port&quot;);
             return to;
@@ -154,6 +167,7 @@ namespace RTT
      * Use connection() to access the data object. If the port is not
      * connected, connection() returns null.
      * @param T The type of the data of the Data Object.
+     * @ingroup Ports
      */
     template&lt;class T&gt;
     class WriteDataPort
@@ -247,9 +261,11 @@ namespace RTT
 
         ConnectionInterface::shared_ptr createConnection(ConnectionTypes::ConnectionType con_type);
 
-        virtual OperationInterface* createPortObject() {
+        virtual TaskObject* createPortObject() {
 #ifndef ORO_EMBEDDED
             TaskObject* to = new TaskObject( this-&gt;getName() );
+            to-&gt;methods()-&gt;addMethod( method(&quot;ready&quot;,&amp;PortInterface::ready, this),
+                                      &quot;Check if this port is connected and ready for use.&quot;);
             to-&gt;methods()-&gt;addMethod( method(&quot;Set&quot;,&amp;WriteDataPort&lt;T&gt;::Set, this),
                                       &quot;Set the current value of this Write Data Port&quot;,
                                       &quot;Value&quot;, &quot;The new value.&quot;);
@@ -271,6 +287,8 @@ namespace RTT
 
     /**
      * A data port which can be used as a reader and as a writer.
+     * @ingroup Ports
+     * @ingroup RTTComponentInterface
      */
     template&lt;class T&gt;
     class DataPort
@@ -373,11 +391,13 @@ namespace RTT
             return this-&gt;clone();
         }
 
-        virtual OperationInterface* createPortObject() {
+        virtual TaskObject* createPortObject() {
 #ifndef ORO_EMBEDDED
             typedef T (DataPort&lt;T&gt;::*GetType)(void) const;
             GetType get_type = &amp;DataPort&lt;T&gt;::Get;
             TaskObject* to = new TaskObject( this-&gt;getName() );
+            to-&gt;methods()-&gt;addMethod( method(&quot;ready&quot;,&amp;PortInterface::ready, this),
+                                      &quot;Check if this port is connected and ready for use.&quot;);
             to-&gt;methods()-&gt;addMethod( method(&quot;Get&quot;, get_type, this),
                                       &quot;Get the current value of this Data Port&quot;);
             to-&gt;methods()-&gt;addMethod( method(&quot;Set&quot;,&amp;DataPort&lt;T&gt;::Set, this),</diff>
      <filename>src/DataPort.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataSource.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataSource.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -12,6 +12,7 @@
 #include &quot;corba/CorbaConversion.hpp&quot;
 #endif
 
+
 namespace RTT
 {
 </diff>
      <filename>src/DataSource.inl</filename>
    </modified>
    <modified>
      <diff>@@ -9,28 +9,37 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
  *                                                                         *
  ***************************************************************************/
  
- 
+#include &quot;DataSource.hpp&quot;
+
 #ifndef DATASOURCE_ADAPTOR_HPP
 #define DATASOURCE_ADAPTOR_HPP
 
-#include &quot;DataSource.hpp&quot;
-
 namespace RTT
 {
     namespace detail {</diff>
      <filename>src/DataSourceAdaptor.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:11 CET 2006  DataSourceArgsCommand.hpp 
+
+                        DataSourceArgsCommand.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_DATASOURCE_ARGS_COMMAND_HPP
 #define ORO_DATASOURCE_ARGS_COMMAND_HPP
 </diff>
      <filename>src/DataSourceArgsCommand.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:05 CET 2006  DataSourceArgsEvent.hpp 
+
+                        DataSourceArgsEvent.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_DATASOURCE_ARGS_EVENT_HPP
 #define ORO_DATASOURCE_ARGS_EVENT_HPP
 </diff>
      <filename>src/DataSourceArgsEvent.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,9 +1,47 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:04 CET 2006  DataSourceArgsMethod.hpp 
+
+                        DataSourceArgsMethod.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_DATASOURCE_ARGS_METHOD_HPP
 #define ORO_DATASOURCE_ARGS_METHOD_HPP
 
 #include &quot;DataSource.hpp&quot;
-#include &quot;LocalMethod.hpp&quot;
 #include &quot;FunctorDataSource.hpp&quot;
+#include &lt;boost/function.hpp&gt;
 
 namespace RTT
 {</diff>
      <filename>src/DataSourceArgsMethod.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataSourceBase.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataSourceCommand.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataSourceCommand.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataSourceCondition.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataSourceCondition.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataSourceGenerator.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:13 CET 2006  DataSourceStorage.hpp 
+
+                        DataSourceStorage.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_TASK_DATASOURCE_STORAGE_HPP
 #define ORO_TASK_DATASOURCE_STORAGE_HPP
 </diff>
      <filename>src/DataSourceStorage.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataSourceTime.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataSourceTypeInfo.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DataSources.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -32,6 +42,7 @@
 #include &quot;DataSource.hpp&quot;
 #include &quot;DataSourceAdaptor.hpp&quot;
 #include &quot;AssignCommand.hpp&quot;
+#include &lt;vector&gt;
 
 namespace RTT
 {
@@ -536,6 +547,82 @@ namespace RTT
       }
   };
 
+  /**
+   * A generic N-arity composite DataSource. It collects data sources of the same type 
+   * and passes the values found on to \a function by means of a std::vector. 
+   * @param function Is a struct which defines value_t operator()(const std::vector&lt;arg_t&gt;&amp;),
+   * where \a value_t is defined as \a function::result_type
+   * and \a arg_t is defined as \a function::argument_type. 
+   */
+  template&lt;typename function&gt;
+  class NArityDataSource
+    : public DataSource&lt;typename function::result_type&gt;
+  {
+      typedef typename function::result_type value_t;
+      typedef typename function::argument_type  arg_t;
+      mutable std::vector&lt;arg_t&gt; margs;
+      std::vector&lt;typename DataSource&lt;arg_t&gt;::shared_ptr &gt; mdsargs;
+      function fun;
+  public:
+      typedef boost::intrusive_ptr&lt;NArityDataSource&lt;function&gt; &gt; shared_ptr;
+
+      /**
+       * Create a DataSource which returns the return value of a function
+       * \a f.
+       */ 
+      NArityDataSource( function f = function() )
+          : fun( f )
+      {
+      }
+
+      /**
+       * Create a DataSource which returns the return value of a function
+       * \a f.
+       */ 
+      NArityDataSource( function f, const std::vector&lt;typename DataSource&lt;arg_t&gt;::shared_ptr &gt;&amp; dsargs )
+          : margs( dsargs.size() ), mdsargs(dsargs), fun( f )
+      {
+      }
+
+      void add( typename DataSource&lt;arg_t&gt;::shared_ptr ds ) {
+          mdsargs.push_back(ds);
+          margs.push_back( ds-&gt;value() );
+      }
+
+      virtual value_t get() const
+      {
+          assert( mdsargs.size() == margs.size() );
+          for( unsigned int i=0; i !=mdsargs.size(); ++i)
+              margs[i] = mdsargs[i]-&gt;get();
+          return fun( margs );
+      }
+
+      virtual value_t value() const
+      {
+          assert( mdsargs.size() == margs.size() );
+          for( unsigned int i=0; i !=mdsargs.size(); ++i)
+              margs[i] = mdsargs[i]-&gt;value();
+          return fun( margs ); // fun is allowed to return margs directly.
+      }
+
+      virtual void reset()
+      {
+          for( unsigned int i=0; i !=mdsargs.size(); ++i)
+              mdsargs[i]-&gt;reset();
+      }
+
+      virtual NArityDataSource&lt;function&gt;* clone() const
+      {
+          return new NArityDataSource&lt;function&gt;(fun, mdsargs);
+      }
+
+      virtual NArityDataSource&lt;function&gt;* copy( std::map&lt;const DataSourceBase*, DataSourceBase*&gt;&amp; alreadyCloned ) const {
+          std::vector&lt;typename DataSource&lt;arg_t&gt;::shared_ptr &gt; newargs( mdsargs.size() );
+          for( unsigned int i=0; i !=mdsargs.size(); ++i)
+              newargs[i] = mdsargs[i]-&gt;copy(alreadyCloned);
+          return new NArityDataSource&lt;function&gt;( fun, newargs );
+      }
+  };
 }
 
 #include &quot;DataSources.inl&quot;</diff>
      <filename>src/DataSources.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:04 CET 2006  DispatchAction.hpp 
+
+                        DispatchAction.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_DISPATCH_ACTION_HPP
 #define ORO_DISPATCH_ACTION_HPP
 </diff>
      <filename>src/DispatchAction.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/DispatchInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/EdgeCondition.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/EdgeCondition.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -56,6 +56,7 @@ namespace RTT
      * event to call a function 'void foo(int x, double y)';
      * @see The Orocos CoreLib manual for usage.
      * @ingroup CoreLibEvents
+     * @ingroup RTTComponentInterface
      */
     template&lt;
         typename SignatureT // function type R (T1, T2, ..., TN)</diff>
      <filename>src/Event.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:05:56 CET 2006  EventBase.hpp 
+
+                        EventBase.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 
 #ifndef ORO_CORELIB_EVENT_BASE_HPP
 #define ORO_CORELIB_EVENT_BASE_HPP</diff>
      <filename>src/EventBase.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/EventC.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/EventC.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -36,6 +46,7 @@
 #include &quot;boost/function_types/function_type_arity.hpp&quot;
 #include &quot;boost/function_types/function_type_parameter.hpp&quot;
 #include &quot;DataSource.hpp&quot;
+#include &quot;DataSources.hpp&quot;
 
 namespace RTT {
     namespace detail {</diff>
      <filename>src/EventCallBack.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/EventDrivenActivity.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/EventDrivenActivity.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/EventHook.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/EventProcessor.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -461,6 +471,7 @@ namespace RTT
      * 
      * @see CompletionProcessor
      * @ingroup CoreLibEvents
+     * @ingroup Processor
      */
     class EventProcessor
         : public RunnableInterface</diff>
      <filename>src/EventProcessor.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/EventService.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/EventService.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -33,8 +43,8 @@
  */
 
 /**
- * @defgroup CoreLibEvents Event classes.
- * @ingroup CoreLib
+ * @defgroup CoreLibEvents Event Interface.
+ * @ingroup RTTComponentInterface
  * Events (publish/subscribe) allow callback functions to be executed synchronously 
  * (in the same thread) or asynchronously (in a separate thread).
  */</diff>
      <filename>src/Events.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Exceptions.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -26,20 +36,11 @@
  ***************************************************************************/ 
  
 /**
- * @defgroup Tasks Component Building
- * @brief Task Infrastructure, Program Script Loaders and Parsers, Hierarchical State Machines,
- * Asynchronous Command Processing, Online Task Browsing.
- *
- * It is meant to group all packages for executing user commands
- * in a realtime system. It currently contains the %Task Infrastructure, %Program %Parser and
- * The %Program %Processor.
- *
- * Key classes are GenericTaskContext, ProgramLoader, PropertyLoader and TaskBrowser.
+ * @defgroup CompModel Component Model
+ * @brief The RTT Component model is built around the TaskContext class.
  *
- * The packages are documented in the 
- * &lt;a href=&quot;../../orocos-task-context.html&quot;&gt;
- * Online %Task %Infrastructure Manual&lt;/a&gt;, the * &lt;a href=&quot;../../orocos-program-parser.html&quot;&gt;
- * Online %Program %Parser Manual&lt;/a&gt; and the &lt;a href=&quot;../../orocos-program-processor.html&quot;&gt;
- * Online %Program %Processor Manual&lt;/a&gt;.
- * 
+ * The approach allows application builders to specify the interface of 
+ * a component and the functionality. The component interface can be built
+ * by using the @ref RTTComponentInterface classes, while the implementation
+ * (algorithm) is being run by the @ref Processor classes.
  */</diff>
      <filename>src/Execution.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:06 CET 2006  ExecutionAccess.hpp 
+
+                        ExecutionAccess.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_EXECUTION_ACCESS_HPP
 #define ORO_EXECUTION_ACCESS_HPP
 </diff>
      <filename>src/ExecutionAccess.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ExecutionEngine.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -74,6 +84,7 @@ namespace RTT
      * behaviour. Use TaskCore::setExecutionEngine in order to 
      * install a new ExecutionEngine in a component. All Members of
      * this class are protected and thus accessible in a subclass.
+     * @ingroup Processor
      */
     class ExecutionEngine
         : public RunnableInterface</diff>
      <filename>src/ExecutionEngine.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/FactoryExceptions.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/FactoryExceptions.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -106,7 +116,7 @@ namespace RTT
         this-&gt;handleUnload();
     }
 
-    void FunctionGraph::setProgramTask(ProgramTask* mytask)
+    void FunctionGraph::setProgramTask(TaskContext* mytask)
     {
         context = mytask;
     }</diff>
      <filename>src/FunctionGraph.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -38,7 +48,7 @@ namespace RTT
 {
     class FunctionGraph;
     typedef boost::shared_ptr&lt;FunctionGraph&gt; FunctionGraphPtr;
-    class ProgramTask;
+    class TaskContext;
 
     /**
      * This class represents a function. It has
@@ -103,7 +113,7 @@ namespace RTT
 
         virtual void handleUnload();
 
-        ProgramTask* context;
+        TaskContext* context;
     public:
         /**
          * Create a FunctionGraph with a given name.
@@ -117,7 +127,7 @@ namespace RTT
 
         ~FunctionGraph();
 
-        void setProgramTask(ProgramTask* mytask);
+        void setProgramTask(TaskContext* mytask);
 
         /**
          * To be called after a function is constructed.</diff>
      <filename>src/FunctionGraph.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/FunctionGraphBuilder.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/FunctionGraphBuilder.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/FunctorDataSource.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:05:59 CET 2006  FunctorFactory.hpp 
+
+                        FunctorFactory.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_RTT_FUNCTOR_FACTORY_HPP
 #define ORO_RTT_FUNCTOR_FACTORY_HPP
 </diff>
      <filename>src/FunctorFactory.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/GraphCopier.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Handle.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Handle.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ListLockFree.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ListLockFree.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:10 CET 2006  LocalCommand.hpp 
+
+                        LocalCommand.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_LOCAL_COMMAND_HPP
 #define ORO_LOCAL_COMMAND_HPP
 </diff>
      <filename>src/LocalCommand.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:05:56 CET 2006  LocalEvent.hpp 
+
+                        LocalEvent.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 
 #ifndef ORO_CORELIB_LOCAL_EVENT_HPP
 #define ORO_CORELIB_LOCAL_EVENT_HPP</diff>
      <filename>src/LocalEvent.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:05 CET 2006  LocalMethod.hpp 
+
+                        LocalMethod.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_LOCAL_METHOD_HPP
 #define ORO_LOCAL_METHOD_HPP
 </diff>
      <filename>src/LocalMethod.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Logger.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Logger.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Marshaller.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -13,10 +13,10 @@ namespace RTT
         OperationInterface* obj = parent-&gt;getObject(&quot;marshalling&quot;);
         if (!obj)
             obj = new TaskObject(&quot;marshalling&quot;,&quot;Read and write Properties to a file.&quot;);
-        obj-&gt;methods()-&gt;addMethod(method(&quot;readProperties&quot;,&amp;MarshallingAccess::readProperties, this),
+        obj-&gt;methods()-&gt;addMethod(method(&quot;updateProperties&quot;,&amp;MarshallingAccess::updateProperties, this),
                                   &quot;Read some Properties from a file.&quot;,
                                   &quot;Filename&quot;,&quot;The file to read the Properties from.&quot;);
-        obj-&gt;methods()-&gt;addMethod(method(&quot;readAllProperties&quot;,&amp;MarshallingAccess::readAllProperties, this),
+        obj-&gt;methods()-&gt;addMethod(method(&quot;readProperties&quot;,&amp;MarshallingAccess::readProperties, this),
                                   &quot;Read all Properties from a file.&quot;,
                                   &quot;Filename&quot;,&quot;The file to read the Properties from.&quot;);
         obj-&gt;methods()-&gt;addMethod(method(&quot;readProperty&quot;,&amp;MarshallingAccess::readProperty, this),
@@ -24,10 +24,10 @@ namespace RTT
                                   &quot;Name&quot;, &quot;The name of (or the path to) the property to read.&quot;,
                                   &quot;Filename&quot;,&quot;The file to read the Properties from.&quot;);
 
-        obj-&gt;methods()-&gt;addMethod(method(&quot;writeProperties&quot;,&amp;MarshallingAccess::writeProperties, this),
+        obj-&gt;methods()-&gt;addMethod(method(&quot;updateFile&quot;,&amp;MarshallingAccess::updateFile, this),
                                   &quot;Write some Properties to a file.&quot;,
                                   &quot;Filename&quot;,&quot;The file to write the Properties to.&quot;);
-        obj-&gt;methods()-&gt;addMethod(method(&quot;writeAllProperties&quot;,&amp;MarshallingAccess::writeAllProperties, this),
+        obj-&gt;methods()-&gt;addMethod(method(&quot;writeProperties&quot;,&amp;MarshallingAccess::writeProperties, this),
                                   &quot;Write all Properties to a file.&quot;,
                                   &quot;Filename&quot;,&quot;The file to write the Properties to.&quot;);
         obj-&gt;methods()-&gt;addMethod(method(&quot;writeProperty&quot;,&amp;MarshallingAccess::writeProperty, this),
@@ -40,22 +40,22 @@ namespace RTT
     bool MarshallingAccess::readProperties(const std::string&amp; filename) const
     {
         PropertyLoader pl;
-        return pl.configure( filename, mparent, false); // not all
+        return pl.configure( filename, mparent, true); // all
     }
-    bool MarshallingAccess::readAllProperties(const std::string&amp; filename) const
+    bool MarshallingAccess::updateProperties(const std::string&amp; filename) const
     {
         PropertyLoader pl;
-        return pl.configure( filename, mparent, true); // all
+        return pl.configure( filename, mparent, false); // not all
     }
     bool MarshallingAccess::writeProperties(const std::string&amp; filename) const
     {
         PropertyLoader pl;
-        return pl.save( filename, mparent, false); // all
+        return pl.save( filename, mparent, true); 
     }
-    bool MarshallingAccess::writeAllProperties(const std::string&amp; filename) const
+    bool MarshallingAccess::updateFile(const std::string&amp; filename) const
     {
         PropertyLoader pl;
-        return pl.save( filename, mparent, true); //
+        return pl.save( filename, mparent, false);
     }
 
     bool MarshallingAccess::readProperty(const std::string&amp; name, const std::string&amp; filename) {</diff>
      <filename>src/MarshallingAccess.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:11 CET 2006  MarshallingAccess.hpp 
+
+                        MarshallingAccess.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
  
 #ifndef ORO_MARSHALLING_ACCESS_HPP
 #define ORO_MARSHALLING_ACCESS_HPP
@@ -20,8 +58,9 @@ namespace RTT
         MarshallingAccess(TaskContext* parent);
 
         /**
-         * Read the XML cpf file and 'refresh' the matching properties of the TaskContext.
-         * There may be more properties in the file than properties in the TaskContext.
+         * Read the property file and 'refresh' \b all the properties of the TaskContext.
+         * There may be more properties in the file than properties in the TaskContext,
+         * but all properties of the TaskContext must be present in \a filename.
          * In case a type mismatch occurs, this method will fail and update no properties.
          * @param filename The file to read from.
          * @return true on success, false on error, consult Logger output for messages.
@@ -29,14 +68,15 @@ namespace RTT
         bool readProperties(const std::string&amp; filename) const;
 
         /**
-         * Read the XML cpf file and 'refresh' \b all properties of the TaskContext.
+         * Read the property file and 'refresh' \b some properties of the TaskContext.
          * There may be more properties in the file than properties in the TaskContext,
-         * but all properties of the TaskContext must be present in the file.
+         * and some may be missing in the file. This method will update 'as much as possible'
+         * properties.
          * In case a type mismatch occurs, this method will fail and update no properties.
          * @param filename The file to read all the properties from.
          * @return true on success, false on error, consult Logger output for messages.
          */
-        bool readAllProperties(const std::string&amp; filename) const;
+        bool updateProperties(const std::string&amp; filename) const;
 
         /**
          * Read a single property from a file. The name may be a 'path' like
@@ -49,8 +89,7 @@ namespace RTT
         bool readProperty(const std::string&amp; name,const std::string&amp; filename);
 
         /**
-         * Write the XML cpf file with the properties of a TaskContext, update
-         * only properties present in the file.
+         * Write the property file with the properties of a TaskContext.
          * The file is first read in, the resulting tree is updated with the task's
          * properties and then written to disk again. This allows to share files
          * between tasks.
@@ -60,14 +99,15 @@ namespace RTT
         bool writeProperties(const std::string&amp; filename) const;
 
         /**
-         * Write the XML cpf file with all the properties of a TaskContext, add
-         * new entries in the file if necessary.
+         * Write the property file with the properties of a TaskContext, which
+         * are already present in \a filename.
+         * No new entries are created in the file, only existing ones are updated.
          * The file is first read in, the resulting tree is updated with the task's
-         * properties, new entries are added if missing and then written to disk again.
+         * properties, and then written to disk again.
          * @param filename The file to read from and write to.
          * @return true on success, false on error, consult Logger output for messages.
          */
-        bool writeAllProperties(const std::string&amp; filename) const;
+        bool updateFile(const std::string&amp; filename) const;
 
         /**
          * Write a single property to a file. The name may be a 'path' like</diff>
      <filename>src/MarshallingAccess.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/MemberFactoryInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/MemoryPool.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:07 CET 2006  Method.hpp 
+
+                        Method.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_TASK_METHOD_HPP
 #define ORO_TASK_METHOD_HPP
 
@@ -7,9 +45,16 @@
 #include &quot;MethodBase.hpp&quot;
 #include &quot;LocalMethod.hpp&quot;
 #include &quot;ActionInterface.hpp&quot;
+#include &quot;Logger.hpp&quot;
 
 namespace RTT
 {
+    /**
+     * @defgroup Methods Method Interface
+     * Invoking synchronous methods.
+     * @ingroup RTTComponentInterface
+     */
+
     
     /**
      * A method which executes a function.
@@ -19,6 +64,8 @@ namespace RTT
      Method&lt;double(int, double)&gt; mymeth(&quot;name&quot;, &amp;Class::foo, &amp;c);
      double result = mymeth( 3, 1.9);
      @endcode
+     * @ingroup RTTComponentInterface
+     * @ingroup Methods
      */
     template&lt;class FunctionT&gt;
     class Method</diff>
      <filename>src/Method.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:11 CET 2006  MethodBase.hpp 
+
+                        MethodBase.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_METHOD_BASE_HPP
 #define ORO_METHOD_BASE_HPP
 </diff>
      <filename>src/MethodBase.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/MethodC.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/MethodC.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:08 CET 2006  MethodRepository.hpp 
+
+                        MethodRepository.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_METHOD_REPOSITORY_HPP
 #define ORO_METHOD_REPOSITORY_HPP
 
@@ -14,6 +52,7 @@ namespace RTT
     /**
      * This class allows storage and retrieval of Method objects.
      * 
+     * @ingroup Methods
      */
     class MethodRepository
         : public OperationFactory&lt;DataSourceBase*&gt;</diff>
      <filename>src/MethodRepository.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/MultiVector.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/MultiVector.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/MultiVectorComposition.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:05:59 CET 2006  NA.hpp 
+
+                        NA.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_NA_HPP
 #define ORO_NA_HPP
 </diff>
      <filename>src/NA.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/NameServer.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -46,28 +56,28 @@ namespace RTT
     {
         typedef std::string NameType;
         // to hold a reference to the nameserver
-        // call_traits&lt; NameServer&lt;T&gt; &gt;::reference _nameserver;
-        NameServer&lt;T&gt;* _nameserver;
+        // call_traits&lt; NameServer&lt;T&gt; &gt;::reference mnameserver;
+        NameServer&lt;T&gt;* mnameserver;
         
-        // to hold the name
-        NameType _name;
+        // to hold the object
+        T mobj;
         
     public:
         NameServerRegistrator()
-            : _nameserver( 0 )
+            : mnameserver( 0 )
         {}
 
         NameServerRegistrator( typename boost::call_traits&lt; NameServer&lt; T &gt; &gt;::reference nameserver, const NameType&amp; name,
                                typename boost::call_traits&lt;T&gt;::const_reference object )
-            : _nameserver( &amp;nameserver ), _name( name )
+            : mnameserver( &amp;nameserver ), mobj( object )
         {
-            _nameserver-&gt;registerObject( object, _name );
+            mnameserver-&gt;registerObject( object, name );
         }
 
         ~NameServerRegistrator()
         {
-            if ( _nameserver != 0 )
-                _nameserver-&gt;unregisterName( _name );
+            if ( mnameserver != 0 )
+                mnameserver-&gt;unregisterObject( mobj );
         }
     };
 </diff>
      <filename>src/NameServerRegistrator.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/NonPeriodicActivity.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/NonPeriodicActivity.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:07 CET 2006  OperationFactory.hpp 
+
+                        OperationFactory.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_OPERATION_FACTORY_HPP
 #define ORO_OPERATION_FACTORY_HPP
 </diff>
      <filename>src/OperationFactory.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:09 CET 2006  OperationInterface.hpp 
+
+                        OperationInterface.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_OPERATION_INTERFACE_HPP
 #define ORO_OPERATION_INTERFACE_HPP
 
@@ -30,8 +68,8 @@ namespace RTT
     class TaskObject
         : public OperationInterface
     {
-        const std::string mname;
-        const std::string mdescription;
+        std::string mname;
+        std::string mdescription;
 
         CommandRepository mcommands;
 
@@ -45,6 +83,8 @@ namespace RTT
 
         const std::string&amp; getDescription() const { return mdescription; }
 
+        void setDescription(const std::string&amp; d) { mdescription = d;}
+
         virtual CommandRepository* commands() { return &amp;mcommands; }
 
         virtual MethodRepository* methods() { return &amp;mmethods;}</diff>
      <filename>src/OperationInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/OperatorTypes.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -59,10 +69,6 @@ namespace RTT
             return reg;
         reg.reset( new OperatorRepository() );
 
-#ifdef OROCFG_CORELIB_GEOMETRY_TOOLKIT_IMPORT
-        Toolkit::Import( RealTimeToolkit );
-#endif
-
         return reg;
     }
 </diff>
      <filename>src/Operators.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Operators.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -26,15 +36,10 @@
  ***************************************************************************/ 
  
 /**
- * @mainpage Orocos Online API Documentation
+ * @mainpage RTT Online API Documentation
  * 
  * @section intro Introduction
- * This is the Online API documentation of all available
- * packages in Orocos. Not necessarily all files listed
- * here are installed on your system. The Orocos
- * Documentation web page on the main site contains links
- * to individual packages (which still contains cross
- * references to others).
+ * This is the Online API documentation of the Orocos Real-Time Toolkit.
  *
  * @section recom Recommendation
  * It is easiest to browse the classes by modules, to not
@@ -45,7 +50,7 @@
  *
  * You will most likely also need to read the &lt;a href=&quot;http://www.orocos.org/documentation.html&quot;&gt;online manuals&lt;/a&gt;.
  *
- * @section corelib Orocos Real-Time Toolkit (RTT)
+ * @section corelib Real-Time Toolkit classes (RTT)
  * The classes in the RTT namespace form the application
  * independent control services 
  * which defines the portable framework using the five parts of a Component interface: 
@@ -54,31 +59,15 @@
  * A Control Component is run by a RTT::PeriodicActivity or RTT::NonPeriodicActivity and inherits
  * from a RTT::TaskContext. The RTT::ExecutionEngine is the heart of each component
  * which contains the application code, reacts to events, processes commands etc.
- * Scripting is enabled by the RTT::ProgramLoader, XML can be read by 
- * the RTT::PropertyLoader. Many other classes are available as well.
- * The &lt;a href=&quot;../../orocos-manual.html&quot;&gt;Orocos Software Manual&lt;/a&gt; introduces these classes.
+ * Scripting is enabled by the RTT::ScriptingAccess, XML can be read by 
+ * the RTT::MarshallingAccess. Many other classes are available as well.
  *
  * @section devdrivers Hardware Access and Device Drivers
  * Orocos has an abstraction layer and some utility classes to easily
- * access your devices from within Orocos and allow you to reuse Orocos
- * infrastructure.
- * @subsection comedi Comedi Device Communication
- * We have implemented LXRT and GNU/Linux C++ wrappers for Comedi devices,
- * which will use automatically the correct interface, depending 
- * on the target you build for. See the RTT namespace with
- * classes RTT::ComediSubDeviceAOut, RTT::ComediEncoder,
- * RTT::ComediSubDeviceDIn, etc. They express the comedi library as
- * an Orocos device API, which allows you to use them in other
- * classes which need I/O.
- * @subsection can CANOpen Device Communication
- * The RTT::CAN namespace contains device independent
- * implementations for realtime CAN communication using a RTT::CAN::CANPieController
- * and device driver. Device implementations
- * are available for some Beckhoff modules.
- * @subsection dev_integration Device Driver Integration
- * If you want to integrate your existing device drivers with Orocos,
- * they need to be wrapped to the Orocos Device API in order
- * to be used with existing implementations. You can take a look at the
- * device drivers package to find some examples.
+ * access your devices from within your applications and allow you to reuse Orocos
+ * infrastructure. The Device Interface headers can be found in rtt/dev. 
  *
+ * The device drivers are not implemented by the RTT, but provided by components.
+ * See the Orocos Components Library (OCL) documentation for a list of supported
+ * devices and examples.
  */</diff>
      <filename>src/Orocos.Main.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/PeriodicActivity.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/PeriodicActivity.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -75,18 +85,30 @@ namespace RTT
                 other-&gt;disconnect();
                 return false;
             }
-            // if here, both were readers.
+
+            // if here, both were readers or both refused to create a connection.
             Logger::In in(&quot;PortInterface::connectTo&quot;);
-            log(Warning) &lt;&lt; &quot;User requests to connect two Read ports. Creating a temporary default Writer.&quot; &lt;&lt; endlog();
+            log(Warning) &lt;&lt; &quot;Creating a temporary default Writer.&quot; &lt;&lt; endlog();
             // create a writer:
             PortInterface* aclone  = other-&gt;antiClone();
             // clumsy way of working:
             ci = aclone-&gt;createConnection();
-            // a writer must create a connection.
-            assert( ci );
+            // this can still fail
+            if (!ci) {
+                delete aclone;
+                aclone = this-&gt;antiClone();
+                ci = aclone-&gt;createConnection();
+                if (!ci) {
+                    log(Warning) &lt;&lt;&quot;Complete failure to connect read ports. Neither port wants to create a connection.&quot;&lt;&lt; endlog();
+                    delete aclone;
+                    return false;
+                }
+            }
             ci-&gt;removeWriter(aclone);
             delete aclone;
             
+            // finally a connection object !
+
             if ( this-&gt;connectTo( ci ) )
                 return ci-&gt;connect();
             // failed (type mismatch), cleanup.
@@ -106,7 +128,7 @@ namespace RTT
         return ConnectionInterface::shared_ptr();
     }
 
-    OperationInterface* PortInterface::createPortObject() {
+    TaskObject* PortInterface::createPortObject() {
         return 0;
     }
 </diff>
      <filename>src/PortInterface.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -146,7 +156,7 @@ namespace RTT
          * Create accessor Object for this Port, for addition to a
          * TaskContext Object interface.
          */
-        virtual OperationInterface* createPortObject();
+        virtual TaskObject* createPortObject();
 
     };
 </diff>
      <filename>src/PortInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -29,6 +39,14 @@
 #ifndef ORO_EXECUTION_PORTS_HPP
 #define ORO_EXECUTION_PORTS_HPP
 
+/**
+ * @defgroup Ports Data Transfer Ports
+ * The data flow between components is realised by Ports which are
+ * connected. Ports can be buffered or unbuffered, read-only, write-only
+ * or read-write.
+ * @ingroup RTTComponentInterface
+ */
+
 #include &quot;DataPort.hpp&quot;
 #include &quot;BufferPort.hpp&quot;
 </diff>
      <filename>src/Ports.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Processor.Main.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ProgramExceptions.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ProgramInterface.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ProgramInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -167,7 +177,8 @@ namespace RTT
                 foo = 0;
                 f_it = find(f_it, funcs.end(), foo );
             }
-            // 2. execute all present
+            // 2. execute all present: DO NOT REMOVE/NULLIFY an element of funcs in other functions !
+            // use it-&gt;stop() to remove an item from this list.
             for(std::vector&lt;ProgramInterface*&gt;::iterator it = funcs.begin();
                 it != funcs.end(); ++it )
                 if ( *it )
@@ -183,8 +194,10 @@ namespace RTT
     {
         if (this-&gt;getActivity() &amp;&amp; this-&gt;getActivity()-&gt;isRunning() &amp;&amp; f) {
             f-&gt;setProgramProcessor(this);
-            if ( f-&gt;start() == false)
+            if ( f-&gt;start() == false) {
+                f-&gt;setProgramProcessor(0);
                 return false;
+            }
             int result = f_queue-&gt;enqueue( f );
             // signal work is to be done:
             this-&gt;getActivity()-&gt;trigger();
@@ -195,10 +208,11 @@ namespace RTT
 
     bool ProgramProcessor::removeFunction( ProgramInterface* f )
     {
+        // we can not remove it from the queue, as step() may be accessing this pointer.
         std::vector&lt;ProgramInterface*&gt;::iterator f_it = find(funcs.begin(), funcs.end(), f );
         if ( f_it != funcs.end() ) {
-            f-&gt;setProgramProcessor(0);
-            *f_it = 0;
+            f-&gt;stop();
+            this-&gt;getActivity()-&gt;trigger();
             return true;
         }
         return false;</diff>
      <filename>src/ProgramProcessor.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -64,6 +74,7 @@ namespace RTT
      * If you want to change this
      * policy, subclass the ProgramProcessor and override the virtual
      * functions, such as step().
+     * @ingroup Processor
      */
     class ProgramProcessor
         : public RunnableInterface</diff>
      <filename>src/ProgramProcessor.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,67 +0,0 @@
-/***************************************************************************
-  tag: Peter Soetens  Wed Jan 18 14:11:40 CET 2006  ProgramTask.hpp 
-
-                        ProgramTask.hpp -  description
-                           -------------------
-    begin                : Wed January 18 2006
-    copyright            : (C) 2006 Peter Soetens
-    email                : peter.soetens@mech.kuleuven.be
- 
- ***************************************************************************
- *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
- *                                                                         *
- *   This library is distributed in the hope that it will be useful,       *
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
- *   Lesser General Public License for more details.                       *
- *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
- *   License along with this library; if not, write to the Free Software   *
- *   Foundation, Inc., 59 Temple Place,                                    *
- *   Suite 330, Boston, MA  02111-1307  USA                                *
- *                                                                         *
- ***************************************************************************/
- 
- 
-
-#ifndef PROGRAM_TASK_HPP
-#define PROGRAM_TASK_HPP
-
-#include &quot;TaskContext.hpp&quot;
-#include &quot;ProgramInterface.hpp&quot;
-#include &quot;DataSources.hpp&quot;
-
-namespace RTT
-{
-
-    /**
-     * @brief This class represents a program as a task in
-     * the Orocos TaskContext system.
-     */
-    class ProgramTask
-        : public TaskContext
-    {
-        ValueDataSource&lt;ProgramInterfaceWPtr&gt;::shared_ptr program;
-    public:
-        /**
-         * By constructing this object, a program is added to a taskcontext
-         * as a TaskContext, with its commands and methods.
-         */
-        ProgramTask( ProgramInterfacePtr, ExecutionEngine* ee = 0 );
-
-        ~ProgramTask();
-
-        /**
-         * Returns the Program of this task.
-         */
-        ProgramInterfacePtr getProgram() const { return program-&gt;get().lock(); }
-
-    };
-}
-
-#endif
-
-</diff>
      <filename>src/ProgramTask.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -33,11 +43,12 @@
  */
 
 /**
- * @defgroup CoreLibProperties Property (name-value) classes.
- * @ingroup CoreLib
+ * @defgroup CoreLibProperties Property Interface
+ * @ingroup RTTComponentInterface
  * Properties can be hierarchically stored and be
  * introspected for their type and contents. Properties can
  * be (de-)serialised using Marshallers and Demarshallers.
+ *
  */
 
 #include &quot;Property.hpp&quot;</diff>
      <filename>src/Properties.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -86,4 +96,9 @@ namespace RTT {
         pbi-&gt;introspect( *this );
     }
 
+    void PropertyIntrospection::introspect(PropertyBase* p )
+    {
+        p-&gt;identify( this );
+    }
+
 }</diff>
      <filename>src/Property.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -66,6 +76,7 @@ namespace RTT
      *
      * @param T The type of the data contained within the Property.
      * @ingroup CoreLibProperties
+     * @ingroup RTTComponentInterface
 	 */
     template&lt;typename T&gt;
     class Property</diff>
      <filename>src/Property.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -268,19 +278,11 @@ namespace RTT
     bool updateProperties(PropertyBag&amp; target, const PropertyBag&amp; source)
     {
         // check type consistency...
-        // this was probably intended to convert old xml formats to new ones.
-        // but deleting in target seems just very wrong...
-#if 0
-        if ( target.getType() != source.getType() ) {
-            // if different types, discard the old contents and
-            // put in the new contents...
-            // update type info...
-            // delete old type contents...
-            flattenPropertyBag(target);
-            deleteProperties(target);
-            // now continue 'updating'
+        // if the target is typed, it is replaced by source.
+        if ( !(target.getType() == &quot;&quot; || target.getType() == &quot;type_less&quot;) ) {
+            log(Debug) &lt;&lt; &quot;Rebuilding typed PropertyBag.&quot;&lt;&lt;endlog();
+            deletePropertyBag(target);
         }
-#endif
 
         target.setType( source.getType() );
 
@@ -395,6 +397,69 @@ namespace RTT
         return false; // failure
     }
 
+    bool refreshProperty(PropertyBag&amp; target, const PropertyBag&amp; source, const std::string&amp; name, const std::string&amp; separator)
+    {
+        Logger::In in(&quot;refreshProperty&quot;);
+        // this code has been copied&amp;modified from findProperty().
+        PropertyBase* source_walker;
+        PropertyBase* target_walker;
+        std::string token;
+        std::string::size_type start = 0;
+        if ( separator.length() != 0 &amp;&amp; name.find(separator) == 0 ) // detect 'root' attribute
+            start = separator.length();
+        std::string::size_type len = name.find(separator, start);
+        if (len != std::string::npos) {
+            token = name.substr(start,len-start);
+            start = len + separator.length();      // reset start to next token.
+            if ( start &gt;= name.length() )
+                start = std::string::npos;
+        }
+        else {
+            token = name.substr(start);
+            start = std::string::npos; // do not look further.
+        }
+        source_walker = source.find(token);
+        target_walker = target.find(token);
+        if (source_walker != 0 )
+        {
+            if ( target_walker == 0 ) {
+                log(Error) &lt;&lt; &quot;Property '&quot;&lt;&lt;source_walker-&gt;getName()&lt;&lt;&quot;' was not found in target !&quot;&lt;&lt;endlog();
+                return false;
+            }
+            Property&lt;PropertyBag&gt;*  source_walker_bag;
+            Property&lt;PropertyBag&gt;*  target_walker_bag;
+            source_walker_bag = dynamic_cast&lt;Property&lt;PropertyBag&gt;*&gt;(source_walker);
+            target_walker_bag = dynamic_cast&lt;Property&lt;PropertyBag&gt;*&gt;(target_walker);
+            if ( source_walker_bag != 0 &amp;&amp; start != std::string::npos ) {
+                if ( target_walker_bag == 0 ) {
+                    log(Error) &lt;&lt; &quot;Property '&quot;&lt;&lt;target_walker-&gt;getName()&lt;&lt;&quot;' is not a PropertyBag !&quot;&lt;&lt;endlog();
+                    return false;
+                }
+                return refreshProperty( target_walker_bag-&gt;value(), source_walker_bag-&gt;rvalue(), name.substr( start ), separator );// a bag so search recursively
+            }
+            else {
+                // found it, refresh !
+                if (target_walker-&gt;refresh(source_walker) == false ) {
+                    // try composition:
+                    if ( target_walker-&gt;getTypeInfo()-&gt;composeType( source_walker-&gt;getDataSource(), target_walker-&gt;getDataSource() ) == false ) {
+                        log(Error) &lt;&lt; &quot;Could not refresh nor compose Property &quot;
+                                   &lt;&lt; target_walker-&gt;getType() &lt;&lt; &quot; &quot;&lt;&lt; target_walker-&gt;getName()
+                                   &lt;&lt; &quot;: type mismatch, can not refresh with type &quot;
+                                   &lt;&lt; source_walker-&gt;getType() &lt;&lt; Logger::endl;
+                    }
+                }
+                log(Debug) &lt;&lt; &quot;Found Property '&quot;&lt;&lt;target_walker-&gt;getName() &lt;&lt;&quot;': refresh done.&quot; &lt;&lt; endlog();
+                return true;
+            }
+        } else {
+            // error wrong path, not present in source !
+            log(Error) &lt;&lt; &quot;Property '&quot;&lt;&lt; token &lt;&lt;&quot;' is not present in the source PropertyBag !&quot;&lt;&lt;endlog();
+            return false;
+        }
+        // not reached.
+        return false; // failure
+    }
+
     void deleteProperties(PropertyBag&amp; target)
     {
         //recursive delete.</diff>
      <filename>src/PropertyBag.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -268,7 +278,7 @@ namespace RTT
         std::string type;
     };
 
-    /**
+    /*
      * @defgroup BagOperations Recursive Property Bag Operations.
      *        These functions operate recursively on the contents of bags,
      *        possibly modifying, deleting or creating new Property objects
@@ -285,9 +295,10 @@ namespace RTT
      *        \a separator indicating the path in the bag to a property,
      *        omitting the name of the \a bag itself.
      * @param separator The token to separate properties in the \a path,
-     * Defaults to &quot;::&quot;.
+     * Defaults to &quot;.&quot;.
+     * @ingroup CoreLibProperties
      */
-    PropertyBase* findProperty(const PropertyBag&amp; bag, const std::string&amp; path, const std::string&amp; separator = std::string(&quot;::&quot;) );
+    PropertyBase* findProperty(const PropertyBag&amp; bag, const std::string&amp; path, const std::string&amp; separator = std::string(&quot;.&quot;) );
 
     /**
      * This function refreshes the values of the properties in one PropertyBag with
@@ -300,6 +311,7 @@ namespace RTT
      * @param strict Set to true if each property of \a target must be updated with a property
      * or \a source. If a property from \a target is not present in \a source, this function
      * returns false.
+     * @ingroup CoreLibProperties
      */
     bool refreshProperties(const PropertyBag&amp; target, const PropertyBag&amp; source, bool strict=false);
 
@@ -308,6 +320,7 @@ namespace RTT
      * @param target The bag in which a property with name source-&gt;getName() can be found.
      * @param source A property which contains a new value for a property with the same
      * name in \a target.
+     * @ingroup CoreLibProperties
      */
     bool refreshProperty(const PropertyBag&amp; target, const PropertyBase&amp; source);
 
@@ -319,6 +332,7 @@ namespace RTT
      *
      * @param target The bag in which the properties must be copied.
      * @param source The bag containing properties for \a target.
+     * @ingroup CoreLibProperties
      */
     bool copyProperties(PropertyBag&amp; target, const PropertyBag&amp; source);
 
@@ -331,6 +345,7 @@ namespace RTT
      * Use copyProperties if you want complete duplication.
      * @param target The bag in which the properties must be updated.
      * @param source The bag containing new values, descriptions or properties for \a target.
+     * @ingroup CoreLibProperties
      */
     bool updateProperties(PropertyBag&amp; target, const PropertyBag&amp; source);
 
@@ -346,8 +361,24 @@ namespace RTT
      * @param path The path to a property in \a source (or in a sub-bag of \a source), 
      * which must be created or updated in \a target.
      * @param separator The token to separate properties in the \a path,
+     * @ingroup CoreLibProperties
      */
-    bool updateProperty(PropertyBag&amp; target, const PropertyBag&amp; source, const std::string&amp; path, const std::string&amp; separator = &quot;::&quot;);
+    bool updateProperty(PropertyBag&amp; target, const PropertyBag&amp; source, const std::string&amp; path, const std::string&amp; separator = &quot;.&quot;);
+
+    /**
+     * This function refreshes (recursively) the values of a single Property object of one Bag with the
+     * property of another bag.
+     * It will \b not create a new Property instances if the Property
+     * is not present in the target and hence fail in that case.
+     *
+     * @param target The bag in which the property exists and must be refreshed.
+     * @param source The bag containing \a prop as one of its children.
+     * @param path The path to a property in \a source (or in a sub-bag of \a source), 
+     * which must be created or updated in \a target.
+     * @param separator The token to separate properties in the \a path,
+     * @ingroup CoreLibProperties
+     */
+    bool refreshProperty(PropertyBag&amp; target, const PropertyBag&amp; source, const std::string&amp; path, const std::string&amp; separator = &quot;.&quot;);
 
     /**
      * This function iterates over a PropertyBag and deletes all Property objects in
@@ -355,6 +386,7 @@ namespace RTT
      *
      * @post All objects in this bag are deleted and no elements reside in the bag
      *       anymore.
+     * @ingroup CoreLibProperties
      */
     void deleteProperties(PropertyBag&amp; target);
 
@@ -363,6 +395,7 @@ namespace RTT
      *
      * @post All objects in this bag (and possible subbags) are deleted and no elements reside in the bag
      *       anymore.
+     * @ingroup CoreLibProperties
      */
     void deletePropertyBag(PropertyBag&amp; target);
 
@@ -373,8 +406,9 @@ namespace RTT
      * in that bag is also a bag, the same operation is performed recursively.
      * So any bag in \a target will show up at the
      * root of \a target with the path prefixed.
+     * @ingroup CoreLibProperties
      */
-    void flattenPropertyBag(PropertyBag&amp; target, const std::string&amp; separator=&quot;::&quot;);
+    void flattenPropertyBag(PropertyBag&amp; target, const std::string&amp; separator=&quot;.&quot;);
 
     /**
      * @}</diff>
      <filename>src/PropertyBag.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/PropertyBagIntrospector.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/PropertyBagIntrospector.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/PropertyBase.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/PropertyBase.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/PropertyCommands.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -29,11 +39,14 @@
 #define PI_PROPERTYINTROSPECTION_HPP
 
 #include &lt;string&gt;
-#include &quot;Property.hpp&quot;
-#include &quot;Logger.hpp&quot;
 
 namespace RTT
 {
+    class PropertyBase;
+    class PropertyBag;
+
+    template&lt;class T&gt;
+    class Property;
 
     /**
      * A simple introspection interface to visit PropertyBags.
@@ -78,10 +91,7 @@ namespace RTT
         : public PropertyBagVisitor
     {
     protected:
-        virtual void introspect(PropertyBase* p )
-        {
-            p-&gt;identify( this );
-        }
+        virtual void introspect(PropertyBase* p );
 
     public:
         virtual ~PropertyIntrospection()
@@ -130,17 +140,9 @@ namespace RTT
          * @see TemplateTypeInfo
          */
         template&lt; class T &gt;
-        void introspect(Property&lt;T&gt; &amp;v )
-        {
-            Property&lt;PropertyBag&gt; res(v.getName(), v.getDescription() );
-            if ( v.getTypeInfo()-&gt;decomposeType( v.getDataSource(), res.value() ) ) {
-                this-&gt;introspect( res );
-                deletePropertyBag( res.value() );
-            }else
-                Logger::log() &lt;&lt; Logger::Warning&lt;&lt; &quot;Could not decompose &quot;&lt;&lt; v.getName() &lt;&lt; Logger::endl;
-            // drop.
-        }
+        void introspect(Property&lt;T&gt; &amp;v );
 	};
 }
-
 #endif
+
+#include &quot;PropertyIntrospection.inl&quot;</diff>
      <filename>src/PropertyIntrospection.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -203,7 +213,7 @@ bool PropertyLoader::configure(const std::string&amp; filename, TaskContext* task, c
         PropertyBag propbag;
         if ( demarshaller-&gt;deserialize( propbag ) )
         {
-            failure = !updateProperty( *(task-&gt;properties()), propbag, name );
+            failure = !refreshProperty( *(task-&gt;properties()), propbag, name );
         }
         else
             {</diff>
      <filename>src/PropertyLoader.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/PropertyLoader.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/PropertySequence.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/PropertySequence.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/RTT.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ReadInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -138,6 +148,64 @@ namespace RTT
                 return *(ptr);
             }
         };
+
+        /**
+         * See NArityDataSource which requires a function object like
+         * this one.
+         */
+        struct array_varargs_ctor
+        {
+            typedef const std::vector&lt;double&gt;&amp; result_type;
+            typedef double argument_type;
+            result_type operator()( const std::vector&lt;double&gt;&amp; args ) const
+            {
+                return args;
+            }
+        };
+
+        /**
+         * Helper DataSource for constructing arrays with a variable number of 
+         * parameters.
+         */
+        typedef NArityDataSource&lt;array_varargs_ctor&gt; ArrayDataSource;
+
+        /**
+         * Constructs an array with \a n elements, which are given upon
+         * construction time.
+         */
+        struct ArrayBuilder
+            : public TypeBuilder
+        {
+            virtual DataSourceBase::shared_ptr build(const std::vector&lt;DataSourceBase::shared_ptr&gt;&amp; args) const {
+                if (args.size() == 0 )
+                    return DataSourceBase::shared_ptr();
+                ArrayDataSource::shared_ptr vds = new ArrayDataSource();
+                for(unsigned int i=0; i != args.size(); ++i) {
+                    DataSource&lt;double&gt;::shared_ptr dsd = AdaptDataSource&lt;double&gt;()( args[i] );
+                    if (dsd)
+                        vds-&gt;add( dsd );
+                    else
+                        return DataSourceBase::shared_ptr();
+                }
+                return vds;
+            }
+            
+        };
+
+        struct array_ctor2
+            : public std::binary_function&lt;int, double, const std::vector&lt;double&gt;&amp;&gt;
+        {
+            typedef const std::vector&lt;double&gt;&amp; (Signature)( int, double );
+            mutable boost::shared_ptr&lt; std::vector&lt;double&gt; &gt; ptr;
+            array_ctor2()
+                : ptr( new std::vector&lt;double&gt;() ) {}
+            const std::vector&lt;double&gt;&amp; operator()( int size, double value ) const
+            {
+                ptr-&gt;resize( size );
+		ptr-&gt;assign( size, value );
+                return *(ptr);
+            }
+        };
 #endif
 
         struct string_ctor
@@ -208,6 +276,8 @@ namespace RTT
 
 #ifndef ORO_EMBEDDED
         ti-&gt;type(&quot;array&quot;)-&gt;addConstructor( newConstructor( array_ctor() ) );
+        ti-&gt;type(&quot;array&quot;)-&gt;addConstructor( newConstructor( array_ctor2() ) );
+        ti-&gt;type(&quot;array&quot;)-&gt;addConstructor( new ArrayBuilder() ); // var number of args
 #endif
         ti-&gt;type(&quot;string&quot;)-&gt;addConstructor( newConstructor( string_ctor() ) );
         return true;</diff>
      <filename>src/RealTimeToolkit.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/RealTimeToolkit.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:09 CET 2006  RemoteCommand.hpp 
+
+                        RemoteCommand.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_REMOTE_COMMAND_HPP
 #define ORO_REMOTE_COMMAND_HPP
 
@@ -6,6 +44,7 @@
 #include &quot;DispatchInterface.hpp&quot;
 #include &quot;CommandProcessor.hpp&quot;
 #include &quot;CommandFunctors.hpp&quot;
+#include &quot;CommandBase.hpp&quot;
 #include &quot;DataSourceStorage.hpp&quot;
 #include &quot;Invoker.hpp&quot;
 </diff>
      <filename>src/RemoteCommand.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/RunnableInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ScriptingAccess.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/ScriptingAccess.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Signal.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/SimulationActivity.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/SimulationActivity.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/SimulationThread.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/SimulationThread.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/SingleList.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/SlaveActivity.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/SlaveActivity.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/SortedList.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/StateDescription.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/StateDescription.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/StateInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/StateMachine.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/StateMachine.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/StateMachineProcessor.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -53,6 +63,7 @@ namespace RTT
      * If you want to change this policy, subclass the
      * StateMachineProcessor and override the virtual functions, such
      * as step().
+     * @ingroup Processor
      */
     class StateMachineProcessor
         : public RunnableInterface</diff>
      <filename>src/StateMachineProcessor.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,79 +0,0 @@
-/***************************************************************************
-  tag: Peter Soetens  Wed Jan 18 14:11:40 CET 2006  StateMachineTask.hpp 
-
-                        StateMachineTask.hpp -  description
-                           -------------------
-    begin                : Wed January 18 2006
-    copyright            : (C) 2006 Peter Soetens
-    email                : peter.soetens@mech.kuleuven.be
- 
- ***************************************************************************
- *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
- *                                                                         *
- *   This library is distributed in the hope that it will be useful,       *
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
- *   Lesser General Public License for more details.                       *
- *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
- *   License along with this library; if not, write to the Free Software   *
- *   Foundation, Inc., 59 Temple Place,                                    *
- *   Suite 330, Boston, MA  02111-1307  USA                                *
- *                                                                         *
- ***************************************************************************/
- 
- 
-
-#ifndef STATEMACHINE_TASK_HPP
-#define STATEMACHINE_TASK_HPP
-
-#include &quot;TaskContext.hpp&quot;
-#include &quot;StateMachine.hpp&quot;
-
-namespace RTT
-{
-    class StateMachineTask;
-    typedef boost::shared_ptr&lt;StateMachineTask&gt; StateMachineTaskPtr;
-
-    /**
-     * @brief This class represents a stateMachine as a task in
-     * the Orocos TaskContext system.
-     */
-    class StateMachineTask
-        : public TaskContext
-    {
-        //boost::weak_ptr&lt;StateMachine&gt; sm;
-        // used when state machines are copied.
-        // functions have a similar mechanism
-        ValueDataSource&lt; StateMachineWPtr &gt;::shared_ptr _this; 
-        //VariableDataSource&lt;StateMachineTask*&gt; _this; 
-        bool true_gen() const;
-
-        void createCommandFactory();
-        void createMethodFactory();
-
-    public:
-        StateMachineTask* copy(StateMachinePtr newsc, std::map&lt;const DataSourceBase*, DataSourceBase*&gt;&amp; replacements, bool instantiate );
-
-        /**
-         * By constructing this object, a stateMachine is added to a taskcontext
-         * as a TaskContext, with its commands and methods.
-         */
-        StateMachineTask(StateMachinePtr statemachine, ExecutionEngine* ee=0);
-
-        ~StateMachineTask();
-
-        /**
-         * Returns the StateMachine of this task.
-         */
-        StateMachinePtr getStateMachine() const { return _this-&gt;get().lock(); }
-
-    };
-}
-
-#endif
-
-</diff>
      <filename>src/StateMachineTask.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:05:56 CET 2006  Subscriber.hpp 
+
+                        Subscriber.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 
 #ifndef ORO_CORELIB_SUBSCRIBER_BASE_HPP
 #define ORO_CORELIB_SUBSCRIBER_BASE_HPP</diff>
      <filename>src/Subscriber.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -148,12 +158,10 @@ namespace RTT
         for (DataFlowInterface::Ports::iterator it = myports.begin();
              it != myports.end();
              ++it) {
-            if ( this-&gt;getObject( (*it)-&gt;getName() ) == 0 ) {
-                // Add the port to the method interface.
-                OperationInterface* ms =  (*it)-&gt;createPortObject();
-                if ( ms )
-                    this-&gt;addObject( ms );
-            }
+            // Add the port to the method interface.
+            OperationInterface* ms =  this-&gt;ports()-&gt;createPortObject((*it)-&gt;getName());
+            if ( ms )
+                this-&gt;addObject( ms );
         }
     }
 </diff>
      <filename>src/TaskContext.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TaskContext.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,18 +1,58 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:05 CET 2006  TaskContexts.hpp 
 
-/**
- * @file TaskContexts.hpp
- * This file includes the common header files from the 
- * RTT task context package.
- */
+                        TaskContexts.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 
 /**
- * @defgroup RTTComponentInterface Task Context interface classes.
- * @ingroup RTTComponent
+ * @file TaskContexts.hpp
  * The TaskContext class is the fundamental building block for
  * creating Orocos components. This header includes the TaskContext
  * header and the header for each interface primitive.
  */
 
+/**
+ * @defgroup RTTComponentInterface Task Context Interface
+ * @ingroup CompModel
+ * The TaskContext can be 'decorated' with a number of interface classes.
+ * Each interface class serves a specific type of communication in
+ * a control application. Being it configuration, data communication or
+ * execution of functionality.
+ */
+
 #include &quot;TaskContext.hpp&quot;
 #include &quot;Command.hpp&quot;
 #include &quot;Method.hpp&quot;</diff>
      <filename>src/TaskContexts.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:07 CET 2006  TaskCore.hpp 
+
+                        TaskCore.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_TASK_CORE_HPP
 #define ORO_TASK_CORE_HPP
 
@@ -56,10 +94,10 @@ namespace RTT
 
         /**
          * Function where the user must insert his 'application' code.
-         * When the ExecutionEngine's Task is a PeriodicTask, this
+         * When the ExecutionEngine's Activity is a PeriodicActivity, this
          * function is called by the ExecutionEngine in each periodic
          * step after all command, event,... processors. When it's Task is a
-         * TaskNonPeriodic, this function is called after an Event or
+         * NonPeriodicActivity, this function is called after an Event or
          * Command is received and executed.  It should not loop
          * forever, since no commands or events are processed when
          * this function executes.  The default implementation is an</diff>
      <filename>src/TaskCore.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TemplateTypeInfo.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -32,7 +42,6 @@
 
 /**
  * @defgroup CoreLibTime Time measurement classes.
- * @ingroup CoreLib
  * Time measurement and time keeping.
  */
 </diff>
      <filename>src/Time.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TimerInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TimerLockFree.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TimerLockFree.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TimerOneShot.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TimerOneShot.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TimerSequencer.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TimerSequencer.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TimerThread.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -50,7 +60,7 @@ namespace RTT
 
     /**
      * TimerThread objects are reference counted such that
-     * when the last PeriodicTask which uses it is deleted,
+     * when the last PeriodicActivity which uses it is deleted,
      * the thread is deleted as well.
      */
     typedef boost::shared_ptr&lt;TimerThread&gt; TimerThreadPtr;</diff>
      <filename>src/TimerThread.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Toolkit.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Toolkit.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TryCommand.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TryCommand.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TypeInfoName.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TypeStream.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/TypeStream.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -70,6 +80,9 @@ namespace RTT {
 
 namespace RTT
 {
+    using namespace std;
+    using namespace detail;
+
     AttributeBase* TypeInfo::buildVariable(std::string name, int ) const {
         return this-&gt;buildVariable(name);
     }</diff>
      <filename>src/Types.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/Types.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:07 CET 2006  UnMember.hpp 
+
+                        UnMember.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_UN_MEMBER_HPP
 #define ORO_UN_MEMBER_HPP
 
@@ -8,6 +46,7 @@
 #include &lt;boost/mpl/vector.hpp&gt;
 #include &lt;boost/mpl/back.hpp&gt;
 #include &lt;boost/mpl/int.hpp&gt;
+#include &lt;boost/type_traits.hpp&gt;
 #include &lt;boost/function_types/function_type.hpp&gt;
 #include &lt;boost/function_types/function_type_signature.hpp&gt;
 </diff>
      <filename>src/UnMember.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/VectorComposition.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/VectorComposition.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/VertexNode.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
 
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/VertexNode.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/WriteInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/ActionProxy.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/ActionProxy.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/ApplicationServer.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/ApplicationServer.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -10,6 +10,7 @@ module RTT
     /**
      * Exposes both attributes and properties
      * of a task as Expression objects.
+     * @ingroup CompIDL
      */
     interface AttributeInterface
     {</diff>
      <filename>src/corba/Attributes.idl</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/AttributesI.h</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/CORBAExpression.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/CommandProxy.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/CommandProxy.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -30,6 +30,7 @@ module RTT
     /**
      * An Orocos TaskObject which hosts a method and command
      * interface.
+     * @ingroup CompIDL
      */
     interface ControlObject
     {
@@ -65,6 +66,21 @@ module RTT
       typedef sequence&lt;string&gt; ControlTaskNames;
 
       /**
+       * Start this component.
+       */
+      boolean start();
+
+      /**
+       * Stop this component.
+       */
+      boolean stop();
+
+      /**
+       * Is this component running ?
+       */
+      boolean isRunning();
+
+      /**
        * Query the properties of this interface as a CosPropertyService::PropertySet.
        */
       CosPropertyService::PropertySet propertySet();</diff>
      <filename>src/corba/ControlTask.idl</filename>
    </modified>
    <modified>
      <diff>@@ -138,6 +138,34 @@ Orocos_ControlTask_i::~Orocos_ControlTask_i (void)
 {
 }
 
+CORBA::Boolean Orocos_ControlTask_i::start (
+  )
+  ACE_THROW_SPEC ((
+    CORBA::SystemException
+  ))
+{
+    return mtask-&gt;start();
+}
+
+CORBA::Boolean Orocos_ControlTask_i::stop (
+  )
+  ACE_THROW_SPEC ((
+    CORBA::SystemException
+  ))
+{
+    return mtask-&gt;stop();
+}
+
+CORBA::Boolean Orocos_ControlTask_i::isRunning (
+  )
+  ACE_THROW_SPEC ((
+    CORBA::SystemException
+  ))
+{
+    return mtask-&gt;isRunning();
+}
+
+
 ::CosPropertyService::PropertySet_ptr Orocos_ControlTask_i::propertySet (
     
   )
@@ -254,12 +282,24 @@ Orocos_ControlTask_i::~Orocos_ControlTask_i (void)
   ))
 {
     std::string pname(name);
+    // detect 'this':
+    if ( pname == &quot;this&quot; )
+        return this-&gt;_this();
+
+    // Cache other objects
     OperationInterface* task = mtask-&gt;getObject( pname );
     if ( task ) {
-        // create or lookup new server for this object.
-        Orocos_ControlObject_i* ret = new Orocos_ControlObject_i(task, mpoa.in() );
+        // do caching....
+        Orocos_ControlObject_i* ret;
+        if ( ctobjmap[pname] == 0 ) {
+            // create or lookup new server for this object.
+            ctobjmap[pname] = new Orocos_ControlObject_i(task, mpoa.in() );
+        }
+        ret = ctobjmap[pname];
         return ret-&gt;_this();
     }
+    // clear cache if possible.
+    ctobjmap.erase( pname );
     return 0;
 }
 </diff>
      <filename>src/corba/ControlTaskI.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -137,6 +147,7 @@ protected:
 	::RTT::Corba::ScriptingAccess_var mEEFact;
 	::RTT::Corba::ServiceInterface_var mService;
 	::RTT::Corba::DataFlowInterface_var mDataFlow;
+    std::map&lt;std::string, Orocos_ControlObject_i*&gt; ctobjmap;
 public:
   //Constructor 
   Orocos_ControlTask_i (RTT::TaskContext* orig, PortableServer::POA_ptr the_poa);
@@ -145,6 +156,28 @@ public:
   virtual ~Orocos_ControlTask_i (void);
 
   void shutdownCORBA();
+
+  virtual
+  CORBA::Boolean start (
+    )
+    ACE_THROW_SPEC ((
+      CORBA::SystemException
+    ));
+  
+  virtual
+  CORBA::Boolean stop (
+    )
+    ACE_THROW_SPEC ((
+      CORBA::SystemException
+    ));
+  
+  virtual
+  CORBA::Boolean isRunning (
+    )
+    ACE_THROW_SPEC ((
+      CORBA::SystemException
+    ));
+  
   
   virtual
   ::CosPropertyService::PropertySet_ptr propertySet (</diff>
      <filename>src/corba/ControlTaskI.h</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -379,6 +389,24 @@ namespace RTT
         return 0;
     }
 
+    bool ControlTaskProxy::start() {
+        if (mtask)
+            return mtask-start();
+        return false;
+    }
+    
+    bool ControlTaskProxy::stop() {
+        if (mtask)
+            return mtask-stop();
+        return false;
+    }
+    
+    bool ControlTaskProxy::isRunning() const {
+        if (mtask)
+            return mtask-&gt;isRunning();
+        return false;
+    }
+
     bool ControlTaskProxy::executeCommand( CommandInterface* c)
     {
         return false;</diff>
      <filename>src/corba/ControlTaskProxy.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -57,6 +67,7 @@ namespace RTT
      * This class manages the access of remote TaskContext Corba Servers
      * and a Corba Object Request Broker (Orb) which connects to these 
      * servers.
+     * @ingroup CompIDL
      */
     class ControlTaskProxy
         : public TaskContext,
@@ -125,6 +136,12 @@ namespace RTT
          */
         Corba::ControlTask_ptr server() const;
 
+        virtual bool start();
+
+        virtual bool stop();
+
+        virtual bool isRunning() const;
+
         virtual bool executeCommand( CommandInterface* c);
 
         virtual int queueCommand( CommandInterface* c);</diff>
      <filename>src/corba/ControlTaskProxy.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/ControlTaskServer.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -44,6 +54,7 @@ namespace RTT
      * This class manages the creation of TaskContext Corba Servers
      * and a Corba Object Request Broker (Orb) which executes the servers.
      * The Orb may be run from the main thread or in its own thread.
+     * @ingroup CompIDL
      */
     class ControlTaskServer
         : public ApplicationServer</diff>
      <filename>src/corba/ControlTaskServer.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,46 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:17 CET 2006  Corba.hpp 
+
+                        Corba.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
+
+/**
+ * @defgroup CompIDL Component IDL and Corba Setup
+ * IDL interface of Orocos Components and setup classes
+ */
 
 namespace RTT
 {</diff>
      <filename>src/corba/Corba.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1 +1,39 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:20 CET 2006  CorbaBuffer.cpp 
+
+                        CorbaBuffer.cpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #include &quot;CorbaBuffer.hpp&quot;</diff>
      <filename>src/corba/CorbaBuffer.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:18 CET 2006  CorbaBuffer.hpp 
+
+                        CorbaBuffer.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 
 #ifndef ORO_CORBA_BUFFER_HPP
 #define ORO_CORBA_BUFFER_HPP</diff>
      <filename>src/corba/CorbaBuffer.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1 +1,39 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:21 CET 2006  CorbaBufferProxy.cpp 
+
+                        CorbaBufferProxy.cpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #include &quot;CorbaBufferProxy.hpp&quot;</diff>
      <filename>src/corba/CorbaBufferProxy.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:20 CET 2006  CorbaBufferProxy.hpp 
+
+                        CorbaBufferProxy.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 
 #ifndef ORO_CORBA_BUFFER_PROXY_HPP
 #define ORO_CORBA_BUFFER_PROXY_HPP</diff>
      <filename>src/corba/CorbaBufferProxy.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/CorbaCommandFactory.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/CorbaConversion.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/CorbaConversion.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1 +1,39 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:21 CET 2006  CorbaDataObject.cpp 
+
+                        CorbaDataObject.cpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #include &quot;CorbaDataObject.hpp&quot;</diff>
      <filename>src/corba/CorbaDataObject.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:19 CET 2006  CorbaDataObject.hpp 
+
+                        CorbaDataObject.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
  
 #ifndef ORO_CORBA_DATAOBJECT_HPP
 #define ORO_CORBA_DATAOBJECT_HPP</diff>
      <filename>src/corba/CorbaDataObject.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1 +1,39 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:21 CET 2006  CorbaDataObjectProxy.cpp 
+
+                        CorbaDataObjectProxy.cpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #include &quot;CorbaDataObjectProxy.hpp&quot;</diff>
      <filename>src/corba/CorbaDataObjectProxy.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:19 CET 2006  CorbaDataObjectProxy.hpp 
+
+                        CorbaDataObjectProxy.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
  
 #ifndef ORO_CORBA_DATAOBJECTPROXY_HPP
 #define ORO_CORBA_DATAOBJECTPROXY_HPP</diff>
      <filename>src/corba/CorbaDataObjectProxy.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/CorbaMethodFactory.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:19 CET 2006  CorbaPort.hpp 
+
+                        CorbaPort.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
  
 #ifndef ORO_CORBA_PORT_HPP
 #define ORO_CORBA_PORT_HPP</diff>
      <filename>src/corba/CorbaPort.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/CosPropertyServiceI.h</filename>
    </modified>
    <modified>
      <diff>@@ -13,6 +13,7 @@ module RTT
     /**
      * A buffer consists of an event channel and
      * some query methods for reading the buffer's state.
+     * @ingroup CompIDL
      */
     interface BufferChannel 
     {
@@ -41,6 +42,7 @@ module RTT
      * of a ControlTask object. Data ports are exported as
      * assignable expressions (Set/Get). Buffer ports are
      * exported as buffer channels.
+     * @ingroup CompIDL
      */
     interface DataFlowInterface
     {
@@ -71,6 +73,15 @@ module RTT
       BufferChannel createBufferChannel(in string port_name);
 
       /**
+       * Creates a read-only data object which represents the status
+       * of a Data or Buffer Channel connection. For a DataChannel, it returns the
+       * current value, for a BufferChannel, it returns the value of
+       * the front() element.
+       * If the port is not connected, nill is returned.
+       */
+      Expression createDataObject(in string port_name);
+
+      /**
        * Check if a port will read from or write to a Channel.
        */
       PortType getPortType(in string port_name);</diff>
      <filename>src/corba/DataFlow.idl</filename>
    </modified>
    <modified>
      <diff>@@ -89,19 +89,22 @@ RTT_Corba_DataFlowInterface_i::~RTT_Corba_DataFlowInterface_i (void)
         ci = p-&gt;connection();
     }
 
-    assert(ci);
+    if ( !ci ) {
+        RTT::log() &lt;&lt; &quot;Failed to create Data Connection for Port: &quot;&lt;&lt; port_name &lt;&lt;endlog(Error);
+        return 0;
+    }
 
-    RTT::log(Info) &lt;&lt; &quot;Creating new channel.&quot; &lt;&lt; endlog();
     CORBA::Object_var ret = ci-&gt;toChannel();
     if ( CORBA::is_nil( ret ) ) {
-        RTT::log() &lt;&lt; &quot;Could not create DataChannel for Port &quot;&lt;&lt; port_name &lt;&lt;endlog(Error);
+        RTT::log() &lt;&lt; &quot;Could not create DataChannel for Port: &quot;&lt;&lt; port_name &lt;&lt;endlog(Error);
         return 0;
     }
     ::RTT::Corba::AssignableExpression_var ec = ::RTT::Corba::AssignableExpression::_narrow( ret.in() );
 
     if ( ec.in() )
         return ec._retn();
-    RTT::log() &lt;&lt; &quot;Could not create DataChannel for Port &quot;&lt;&lt; port_name &lt;&lt;endlog(Error);
+
+    RTT::log() &lt;&lt; &quot;Could not create DataChannel for Port (try BufferChannel ?): &quot;&lt;&lt; port_name &lt;&lt;endlog(Error);
     return 0;
 }
 
@@ -123,16 +126,56 @@ RTT_Corba_DataFlowInterface_i::~RTT_Corba_DataFlowInterface_i (void)
     } else {
         ci = p-&gt;connection();
     }
+
+    if ( !ci ) {
+        RTT::log() &lt;&lt; &quot;Failed to create Buffer Connection for Port: &quot;&lt;&lt; port_name &lt;&lt;endlog(Error);
+        return 0;
+    }
     
     CORBA::Object_var ret = ci-&gt;toChannel();
+    if ( CORBA::is_nil( ret ) ) {
+        RTT::log() &lt;&lt; &quot;Could not create BufferChannel for Port: &quot;&lt;&lt; port_name &lt;&lt;endlog(Error);
+        return 0;
+    }
     ::RTT::Corba::BufferChannel_var ec = ::RTT::Corba::BufferChannel::_narrow( ret.in() );
 
     if ( ec.in() )
         return ec._retn();
-    RTT::log() &lt;&lt; &quot;Could not create BufferChannel for Port &quot;&lt;&lt; port_name &lt;&lt;endlog(Error);
+    RTT::log() &lt;&lt; &quot;Could not create BufferChannel for Port (try DataChannel?): &quot;&lt;&lt; port_name &lt;&lt;endlog(Error);
     return 0;
 }
 
+::RTT::Corba::Expression_ptr RTT_Corba_DataFlowInterface_i::createDataObject (
+    const char * port_name
+  )
+  ACE_THROW_SPEC ((
+    CORBA::SystemException
+  ))
+{
+    RTT::Logger::In in(&quot;createDataObject&quot;);
+  // Add your implementation here
+    PortInterface* p = mdf-&gt;getPort(port_name);
+    if ( p == 0) {
+        RTT::log() &lt;&lt; &quot;No such Port: &quot;&lt;&lt; port_name &lt;&lt;endlog(Error);
+        return 0;
+    }
+    ConnectionInterface::shared_ptr ci;
+    if ( p-&gt;connected() == false) {
+        RTT::log() &lt;&lt; &quot;Can not create DataObject for unconnected Port: &quot;&lt;&lt; port_name &lt;&lt;endlog(Error);
+        return 0;
+    } else {
+        ci = p-&gt;connection();
+    }
+
+    ::RTT::Corba::Expression_var ret = ci-&gt;getDataSource()-&gt;server(0);
+    if ( CORBA::is_nil( ret ) ) {
+        RTT::log() &lt;&lt; &quot;Could not create DataObject for connected Port: &quot;&lt;&lt; port_name &lt;&lt;endlog(Error);
+        return 0;
+    }
+    return ret._retn();
+}
+
+
 ::RTT::Corba::DataFlowInterface::PortType RTT_Corba_DataFlowInterface_i::getPortType (
     const char * port_name
   )</diff>
      <filename>src/corba/DataFlowI.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:20 CET 2006  DataFlowI.h 
+
+                        DataFlowI.h -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 // -*- C++ -*-
 //
 // $Id$
@@ -207,6 +245,14 @@ public:
     ));
   
   virtual
+  ::RTT::Corba::Expression_ptr createDataObject (
+      const char * port_name
+    )
+    ACE_THROW_SPEC ((
+      CORBA::SystemException
+    ));
+  
+  virtual
   ::RTT::Corba::DataFlowInterface::PortType getPortType (
       const char * port_name
     )</diff>
      <filename>src/corba/DataFlowI.h</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/ExpressionProxy.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/ExpressionProxy.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/ExpressionServer.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/ExpressionServer.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,41 +0,0 @@
-#ifndef ORO_GEOMETRY_IDL
-#define ORO_GEOMETRY_IDL
-
-module RTT
-{
-  module Corba
-  {
-
-    typedef sequence&lt;double,3&gt; Vector;
-    typedef Vector Position;
-
-    typedef sequence&lt;Vector,3&gt; Rotation;
-
-    struct Frame
-    {
-      Rotation m;
-      Position p;
-    };
-
-    struct Twist
-    {
-      Vector vel;
-      Vector rot;
-    };
-
-    struct Wrench
-    {
-      Vector force;
-      Vector torque;
-    };
-
-    typedef sequence&lt;double&gt; JacCol;
-
-    /**
-     * J[row][col] layout.
-     */
-    typedef sequence&lt;JacCol&gt; Jacobian;
-  };
-};
-
-#endif</diff>
      <filename>src/corba/Geometry.idl</filename>
    </modified>
    <modified>
      <diff>@@ -1,191 +0,0 @@
-/***************************************************************************
-  tag: Peter Soetens  Mon Jun 26 13:25:58 CEST 2006  GeometryConversion.hpp 
-
-                        GeometryConversion.hpp -  description
-                           -------------------
-    begin                : Mon June 26 2006
-    copyright            : (C) 2006 Peter Soetens
-    email                : peter.soetens@fmtc.be
- 
- ***************************************************************************
- *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
- *                                                                         *
- *   This library is distributed in the hope that it will be useful,       *
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
- *   Lesser General Public License for more details.                       *
- *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
- *   License along with this library; if not, write to the Free Software   *
- *   Foundation, Inc., 59 Temple Place,                                    *
- *   Suite 330, Boston, MA  02111-1307  USA                                *
- *                                                                         *
- ***************************************************************************/
- 
- 
-#ifndef ORO_GEOMETRY_ANYCONVERSION_HPP
-#define ORO_GEOMETRY_ANYCONVERSION_HPP
-
-#include &quot;CorbaConversion.hpp&quot;
-#include &quot;GeometryC.h&quot;
-
-namespace RTT
-{
-
-    template&lt;&gt;
-    struct AnyConversion&lt;ORO_Geometry::Vector&gt;
-    {
-        typedef ORO_Geometry::Vector&amp; StdType;
-        typedef Corba::Vector CorbaType;
-
-        static bool update(const CORBA::Any&amp; any, StdType tp) {
-            CorbaType* at;
-            // at is shallow copy of 'any', so do not delete it.
-            if (any &gt;&gt;= at ) {
-                for(size_t i =0; i != 3; ++i)
-                    tp[i] = (*at)[i];
-                return true;
-            }
-            return false;
-        }
-
-        static CORBA::Any_ptr createAny( const ORO_Geometry::Vector&amp; tp ) {
-            CorbaType ta;
-            for(size_t i =0; i != 3; ++i)
-                ta[i] = tp[i];
-            CORBA::Any_ptr any = new CORBA::Any();
-            *any &lt;&lt;= ta;
-            return any;
-        }
-    };
-
-    template&lt;&gt;
-    struct AnyConversion&lt;ORO_Geometry::Rotation&gt;
-    {
-        typedef ORO_Geometry::Rotation&amp; StdType;
-        typedef Corba::Rotation CorbaType;
-
-        static bool update(const CORBA::Any&amp; any, StdType tp) {
-            CorbaType* at;
-            // at is shallow copy of 'any', so do not delete it.
-            if (any &gt;&gt;= at ) {
-                for(size_t i =0; i != 3; ++i)
-                    for (size_t j=0; j != 3; ++j )
-                        tp(i,j) = (*at)[i][j];
-                return true;
-            }
-            return false;
-        }
-
-        static CORBA::Any_ptr createAny( const ORO_Geometry::Rotation&amp; tp ) {
-            CorbaType ta;
-            for(size_t i =0; i != 3; ++i)
-                for (size_t j=0; j != 3; ++j )
-                    ta[i][j] = tp(i,j);
-            CORBA::Any_ptr any = new CORBA::Any();
-            *any &lt;&lt;= ta;
-            return any;
-        }
-    };
-
-    template&lt;&gt;
-    struct AnyConversion&lt;ORO_Geometry::Frame&gt;
-    {
-        typedef ORO_Geometry::Frame&amp; StdType;
-        typedef Corba::Frame CorbaType;
-
-        static bool update(const CORBA::Any&amp; any, StdType tp) {
-            CorbaType* at;
-            // at is shallow copy of 'any', so do not delete it.
-            if (any &gt;&gt;= at ) {
-                for(size_t i =0; i != 3; ++i) {
-                    tp.p[i] = at-&gt;p[i];
-                    for (size_t j=0; j != 3; ++j )
-                        tp.M(i,j) = at-&gt;m[i][j];
-                }
-                return true;
-            }
-            return false;
-        }
-
-        static CORBA::Any_ptr createAny( const ORO_Geometry::Frame&amp; tp ) {
-            CorbaType ta;
-            for(size_t i =0; i != 3; ++i) {
-                ta.p[i] = tp.p[i];
-                for (size_t j=0; j != 3; ++j )
-                    ta.m[i][j] = tp.M(i,j);
-            }
-            CORBA::Any_ptr any = new CORBA::Any();
-            *any &lt;&lt;= ta;
-            return any;
-        }
-    };
-
-    template&lt;&gt;
-    struct AnyConversion&lt;ORO_Geometry::Twist&gt;
-    {
-        typedef ORO_Geometry::Twist&amp; StdType;
-        typedef Corba::Twist CorbaType;
-
-        static bool update(const CORBA::Any&amp; any, StdType tp) {
-            CorbaType* at;
-            // at is shallow copy of 'any', so do not delete it.
-            if (any &gt;&gt;= at ) {
-                for(size_t i =0; i != 3; ++i) {
-                    tp.vel[i] = at-&gt;vel[i];
-                    tp.rot[i] = at-&gt;rot[i];
-                }
-                return true;
-            }
-            return false;
-        }
-
-        static CORBA::Any_ptr createAny( const ORO_Geometry::Twist&amp; tp ) {
-            CorbaType ta;
-            for(size_t i =0; i != 3; ++i) {
-                ta.vel[i] = tp.vel[i];
-                ta.rot[i] = tp.rot[i];
-            }
-            CORBA::Any_ptr any = new CORBA::Any();
-            *any &lt;&lt;= ta;
-            return any;
-        }
-    };
-
-    template&lt;&gt;
-    struct AnyConversion&lt;ORO_Geometry::Wrench&gt;
-    {
-        typedef ORO_Geometry::Wrench&amp; StdType;
-        typedef Corba::Wrench CorbaType;
-
-        static bool update(const CORBA::Any&amp; any, StdType tp) {
-            CorbaType* at;
-            // at is shallow copy of 'any', so do not delete it.
-            if (any &gt;&gt;= at ) {
-                for(size_t i =0; i != 3; ++i) {
-                    tp.force[i] = at-&gt;force[i];
-                    tp.torque[i] = at-&gt;torque[i];
-                }
-                return true;
-            }
-            return false;
-        }
-
-        static CORBA::Any_ptr createAny( const ORO_Geometry::Wrench&amp; tp ) {
-            CorbaType ta;
-            for(size_t i =0; i != 3; ++i) {
-                ta.force[i] = tp.force[i];
-                ta.torque[i] = tp.torque[i];
-            }
-            CORBA::Any_ptr any = new CORBA::Any();
-            *any &lt;&lt;= ta;
-            return any;
-        }
-    };
-
-}
-
-#endif</diff>
      <filename>src/corba/GeometryConversion.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -32,6 +32,7 @@ module RTT
 
     /**
      * A Method interface delivers objects which contain expressions.
+     * @ingroup CompIDL
      */
     interface MethodInterface
     {
@@ -77,6 +78,7 @@ module RTT
 
     /**
      * A Command interface delivers objects which contain asynchronous commands.
+     * @ingroup CompIDL
      */
     interface CommandInterface
     {</diff>
      <filename>src/corba/OperationInterface.idl</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/OperationInterfaceI.h</filename>
    </modified>
    <modified>
      <diff>@@ -25,6 +25,7 @@ module RTT
 
     /**
      * An expression is an object which returns a value.
+     * @ingroup CompIDL
      */
     interface Expression
     {
@@ -61,6 +62,11 @@ module RTT
       string getTypeName();
 
       /**
+       * Return the result of value() as a text string.
+       */
+      string toString();
+
+      /**
        * Call this method to free this object.
        */
       void destroyExpression();
@@ -70,6 +76,7 @@ module RTT
      * An expression of which the result can be set to
      * a value. An simple example is an expression consisting of
      * only a variable.
+     * @ingroup CompIDL
      */
     interface AssignableExpression : Expression
     {
@@ -119,6 +126,7 @@ module RTT
 
     /**
      * A method is both an Expression and an Action.
+     * @ingroup CompIDL
      */
     interface Method : Expression, Action
     {
@@ -128,6 +136,7 @@ module RTT
      * A command consists of an action to be
      * executed remotely and a condition, to be
      * evaluated remotely.
+     * @ingroup CompIDL
      */
     interface Command
     {</diff>
      <filename>src/corba/Operations.idl</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -147,6 +157,17 @@ public:
   }
 
   virtual
+  char * toString (
+      
+    )
+    ACE_THROW_SPEC ((
+      CORBA::SystemException
+      )) {
+      std::string result = morig-&gt;toString();
+      return CORBA::string_dup( result.c_str() );
+  }
+
+  virtual
   char * getTypeName (
       
     )
@@ -243,6 +264,18 @@ public:
   }
 
   virtual
+  char * toString (
+      
+    )
+    ACE_THROW_SPEC ((
+      CORBA::SystemException
+      )) {
+      std::string result = morig-&gt;toString();
+      return CORBA::string_dup( result.c_str() );
+  }
+
+
+  virtual
   char * getTypeName (
       
     )
@@ -267,14 +300,14 @@ class  Orocos_Expression_i&lt;void&gt;
     public virtual PortableServer::RefCountServantBase
 {
 protected:
-    RTT::DataSource&lt;void&gt;::const_ptr morig;
+    RTT::DataSource&lt;void&gt;::shared_ptr morig;
     PortableServer::POA_var mpoa;
 public:
     typedef void SourceType;
     typedef void ResultType;
 
   // Constructor 
-  Orocos_Expression_i (RTT::DataSource&lt;void&gt;::const_ptr orig, PortableServer::POA_ptr the_poa)
+  Orocos_Expression_i (RTT::DataSource&lt;void&gt;::shared_ptr orig, PortableServer::POA_ptr the_poa)
       : morig( orig ), mpoa( PortableServer::POA::_duplicate(the_poa) )
     {}
 
@@ -329,6 +362,17 @@ public:
   }
 
   virtual
+  char * toString (
+      
+    )
+    ACE_THROW_SPEC ((
+      CORBA::SystemException
+      )) {
+      std::string result = morig-&gt;toString();
+      return CORBA::string_dup( result.c_str() );
+  }
+
+  virtual
   char * getTypeName (
       
     )
@@ -432,6 +476,17 @@ public:
   }
 
   virtual
+  char * toString (
+      
+    )
+    ACE_THROW_SPEC ((
+      CORBA::SystemException
+      )) {
+      std::string result = massign-&gt;toString();
+      return CORBA::string_dup( result.c_str() );
+  }
+
+  virtual
   char * getTypeName (
       
     )
@@ -491,7 +546,7 @@ class  Orocos_Expression_i&lt;bool&gt;
     public virtual PortableServer::RefCountServantBase
 {
 protected:
-    RTT::DataSource&lt;bool&gt;::const_ptr morig;
+    RTT::DataSource&lt;bool&gt;::shared_ptr morig;
     RTT::DataSource&lt;bool&gt;::value_t last_value;
     PortableServer::POA_var mpoa;
 public:
@@ -499,7 +554,7 @@ public:
     typedef bool ResultType;
 
   // Constructor 
-  Orocos_Expression_i (RTT::DataSource&lt;bool&gt;::const_ptr orig, PortableServer::POA_ptr the_poa)
+  Orocos_Expression_i (RTT::DataSource&lt;bool&gt;::shared_ptr orig, PortableServer::POA_ptr the_poa)
       : morig( orig ), last_value(), mpoa( PortableServer::POA::_duplicate(the_poa) )
     {}
 
@@ -554,6 +609,17 @@ public:
   }
 
   virtual
+  char * toString (
+      
+    )
+    ACE_THROW_SPEC ((
+      CORBA::SystemException
+      )) {
+      std::string result = morig-&gt;toString();
+      return CORBA::string_dup( result.c_str() );
+  }
+
+  virtual
   char * getTypeName (
       
     )
@@ -650,6 +716,17 @@ public:
   }
 
   virtual
+  char * toString (
+      
+    )
+    ACE_THROW_SPEC ((
+      CORBA::SystemException
+      )) {
+      std::string result = massign-&gt;toString();
+      return CORBA::string_dup( result.c_str() );
+  }
+
+  virtual
   char * getTypeName (
       
     )</diff>
      <filename>src/corba/OperationsI.h</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:20 CET 2006  POAUtility.cpp 
+
+                        POAUtility.cpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 
 #include &quot;POAUtility.h&quot;
 </diff>
      <filename>src/corba/POAUtility.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:17 CET 2006  POAUtility.h 
+
+                        POAUtility.h -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef RTT_CORBA_POAUTILITY_H_
 #define RTT_CORBA_POAUTILITY_H_
 </diff>
      <filename>src/corba/POAUtility.h</filename>
    </modified>
    <modified>
      <diff>@@ -11,6 +11,7 @@ module RTT
     /**
      * This interface provides easy access to
      * a task's programs and state machines.
+     * @ingroup CompIDL
      */
     interface ScriptingAccess
     {</diff>
      <filename>src/corba/ScriptingAccess.idl</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/corba/ScriptingAccessI.h</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -42,7 +52,7 @@ namespace RTT
     {
     }
 
-    int ScriptingAccessProxy::execute( string code ) {
+    int ScriptingAccessProxy::execute( const string&amp; code ) {
         return msa-&gt;execute( code.c_str() );
     }
 </diff>
      <filename>src/corba/ScriptingAccessProxy.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -55,7 +65,7 @@ namespace RTT
         using ScriptingAccess::loadPrograms;
         using ScriptingAccess::loadStateMachines;
 
-        virtual int execute( std::string code );
+        virtual int execute( const std::string&amp; code );
         virtual CommandC getCommand( int ticket );
 
         virtual bool hasProgram( std::string name) const;</diff>
      <filename>src/corba/ScriptingAccessProxy.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:18 CET 2006  Services.hpp 
+
+                        Services.hpp -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_CORBA_SERVICES_HPP
 #define ORO_CORBA_SERVICES_HPP
 </diff>
      <filename>src/corba/Services.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,41 @@
+/***************************************************************************
+  tag: FMTC  do nov 2 13:06:18 CET 2006  ServicesI.h 
+
+                        ServicesI.h -  description
+                           -------------------
+    begin                : do november 02 2006
+    copyright            : (C) 2006 FMTC
+    email                : peter.soetens@fmtc.be
+ 
+ ***************************************************************************
+ *   This library is free software; you can redistribute it and/or         *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
+ *   Lesser General Public License for more details.                       *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public             *
+ *   License along with this library; if not, write to the Free Software   *
+ *   Foundation, Inc., 59 Temple Place,                                    *
+ *   Suite 330, Boston, MA  02111-1307  USA                                *
+ *                                                                         *
+ ***************************************************************************/
+ 
+ 
 #ifndef ORO_CORBA_SERVICES_I_HPP
 #define ORO_CORBA_SERVICES_I_HPP
 </diff>
      <filename>src/corba/ServicesI.h</filename>
    </modified>
    <modified>
      <diff>@@ -10,16 +10,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -51,6 +61,7 @@ namespace RTT
      *
      *  Unit (MU) : Unit of what is actually read on the analog channel (e.g. Volt)
      * 
+     * @ingroup DeviceInterface
      */
     template &lt; class T&gt;
     class AnalogInInterface</diff>
      <filename>src/dev/AnalogInInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -40,6 +50,7 @@ namespace RTT
      *
      * @param InputType The type (int, unsigned int, double,...)
      * in which data is sent to the board.
+     * @ingroup DeviceInterface
      */
     template&lt; class InputType &gt;
     class AnalogInput</diff>
      <filename>src/dev/AnalogInput.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -51,6 +61,7 @@ namespace RTT
      * 
      * Measurement Unit (MU) : Unit of what is actually read on the analog channel (e.g. Volt)
      * 
+     * @ingroup DeviceInterface
      */
     template &lt; class T&gt;
     class AnalogOutInterface</diff>
      <filename>src/dev/AnalogOutInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -40,6 +50,7 @@ namespace RTT
      *
      * @param OutputType The type (int, unsigned int, double,...)
      * in which data is sent to the board.
+     * @ingroup DeviceInterface
      */
     template&lt; class OutputType &gt;
     class AnalogOutput</diff>
      <filename>src/dev/AnalogOutput.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -1,15 +1,25 @@
  /***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *</diff>
      <filename>src/dev/AxisInterface.cpp</filename>
    </modified>
    <modified>
      <diff>@@ -42,6 +42,7 @@ namespace RTT
     /** 
      * The AxisInterface  represents an axis from a control
      * point of view
+     * @ingroup DeviceInterface
      */
     class AxisInterface
     {</diff>
      <filename>src/dev/AxisInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -34,6 +44,7 @@ namespace RTT
      * @brief A class which will calibrate a sensor. It is
      * useful for making 'calibration' objects.
      * @see SensorInterface
+     * @ingroup DeviceInterface
      */
     class CalibrationInterface
     {</diff>
      <filename>src/dev/CalibrationInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -26,15 +36,15 @@
  ***************************************************************************/ 
  
 /**
- * @defgroup DeviceInterface Abstract Device Interfaces
+ * @defgroup DeviceInterface Device Interfaces
  * @brief Abstraction APIs for hardware devices ('cards') such as IO, counters,
  * but also logical devices like Encoders and generic Sensors.
  *
  * The Orocos Device Interface classes are DigitalInInterface, DigitalOutInterface,
  * AnalogInInterface, AnalogOutInterface, SensorInterface, EncoderInterface,...
  * 
- * Only header files are found in this package, and NameServer functionality.
+ * Only header files are found in this package. In order to decouple device creation
+ * and device location, some classes have been extended with a (process-local) nameserver.
+ * See the NameServer class.
  *
- * The device interfaces are documented in &lt;a href=&quot;../../orocos-device-interface.html&quot;&gt;
- * The Orocos Device Interface Online Manual&lt;/a&gt;
  */</diff>
      <filename>src/dev/DeviceInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -39,6 +49,7 @@ namespace RTT
      * maximum of 32 bits can be read at once. When there are N
      * bits, the bits are numbered from Zero to N-1.
      * @see TemplateDigitalIn
+     * @ingroup DeviceInterface
      */
     class DigitalInInterface
         : private NameServerRegistrator&lt;DigitalInInterface*&gt;</diff>
      <filename>src/dev/DigitalInInterface.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***************************************************************************
  *   This library is free software; you can redistribute it and/or         *
- *   modify it under the terms of the GNU Lesser General Public            *
- *   License as published by the Free Software Foundation; either          *
- *   version 2.1 of the License, or (at your option) any later version.    *
+ *   modify it under the terms of the GNU General Public                   *
+ *   License as published by the Free Software Foundation;                 *
+ *   version 2 of the License.                                             *
+ *                                                                         *
+ *   As a special exception, you may use this file as part of a free       *
+ *   software library without restriction.  Specifically, if other files   *
+ *   instantiate templates or use macros or inline functions from this     *
+ *   file, or you compile this file and link it with other files to        *
+ *   produce an executable, this file does not by itself cause the         *
+ *   resulting executable to be covered by the GNU General Public          *
+ *   License.  This exception does not however invalidate any other        *
+ *   reasons why the executable file might be covered by the GNU General   *
+ *   Public License.                                                       *
  *                                                                         *
  *   This library is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
  *   Lesser General Public License for more details.                       *
  *                                                                         *
- *   You should have received a copy of the GNU Lesser General Public      *
+ *   You should have received a copy of the GNU General Public             *
  *   License along with this library; if not, write to the Free Software   *
  *   Foundation, Inc., 59 Temple Place,                                    *
  *   Suite 330, Boston, MA  02111-1307  USA                                *
@@ -38,6 +48,7 @@ namespace RTT
      * or as a 'virtual' switch in which case the on/off state is stored
      * in an external boolean variable supplied to the constructor.
      * @see also DigitalOutput
+     * @ingroup DeviceInterface
      */
     class DigitalInput
     {</diff>
      <filename>src/dev/DigitalInput.hpp</filename>
    </modified>
    <modified>
      <diff>@@ -9,16 +9,26 @@
  
  ***********************************************************