switch to new MPL based Fraunhofer FOKUS Public License
[senf.git] / senf / Socket / SocketPolicy.hh
index 256081a..74e9a58 100644 (file)
@@ -2,23 +2,28 @@
 //
 // Copyright (C) 2006
 // Fraunhofer Institute for Open Communication Systems (FOKUS)
-// Competence Center NETwork research (NET), St. Augustin, GERMANY
-//     Stefan Bund <g0dil@berlios.de>
 //
-// 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.
+// The contents of this file are subject to the Fraunhofer FOKUS Public License
+// Version 1.0 (the "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at 
+// http://senf.berlios.de/license.html
 //
-// 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 General Public License for more details.
+// The Fraunhofer FOKUS Public License Version 1.0 is based on, 
+// but modifies the Mozilla Public License Version 1.1.
+// See the full license text for the amendments.
 //
-// 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.
+// Software distributed under the License is distributed on an "AS IS" basis, 
+// WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 
+// for the specific language governing rights and limitations under the License.
+//
+// The Original Code is Fraunhofer FOKUS code.
+//
+// The Initial Developer of the Original Code is Fraunhofer-Gesellschaft e.V. 
+// (registered association), Hansastraße 27 c, 80686 Munich, Germany.
+// All Rights Reserved.
+//
+// Contributor(s):
+//   Stefan Bund <g0dil@berlios.de>
 
 /** \file
     \brief Policy Framework public header
     metafunction which simplifies building SocketPolicy instantiations. It takes any number (ok, up
     to a maximum of 6) of policy classes as an argument (in any order). It will sort these arguments
     into the SocketPolicy template arguments. If for some axis no class is specified, it's slot will
-    be filled with \c Unspecified \e Axis. Additionally, the first Argument may optionally be ab
+    be filled with \c Unspecified \e Axis. Additionally, the first Argument may optionally be an
     arbitrary SocketPolicy. It will provide default values for unspecified axis</dd>
 
     <dt>\c template \c SocketPolicyIsBaseOf < \e base, \e derived ></dt> <dd>This template
 
     The \c connect member in this example will only be enabled, it the communication policy of the
     socket handle is ConnectedCommunicationPolicy (or a derived type). See <a
-    href="http://www.boost.org/libs/utility/enable_if.html">Boost.Enable_If</a> for a discussion of
-    the third argument (\c senf::ConnectedCommunicationPolicyIs is based on the \c boost::enable_if
-    template).
+    href="http://www.boost.org/doc/libs/release/libs/utility/enable_if.html">Boost.Enable_If</a>
+    for a discussion of the third argument (\c senf::ConnectedCommunicationPolicyIs is based on
+    the \c boost::enable_if template).
 
     \see \ref extend_policy \n
-         <a href="http://www.boost.org/libs/utility/enable_if.html">The Boost enable_if utility</a> \n
-         <a href="http://www.boost.org/libs/mpl/doc/index.html">The Boost.MPL library</a> \n
-         <a href="http://www.boost.org/libs/preprocessor/doc/index.html">The Boost.Preprocessor library</a>
+         <a href="http://www.boost.org/doc/libs/release/libs/utility/enable_if.html">The Boost enable_if utility</a> \n
+         <a href="http://www.boost.org/doc/libs/release/libs/mpl/doc/index.html">The Boost.MPL library</a> \n
+         <a href="http://www.boost.org/doc/libs/release/libs/preprocessor/doc/index.html">The Boost.Preprocessor library</a>
 
     \idea We could combine all the \e Axis \c Is templates into a single template. Since the \e
     trait argument will automatically specify the axis to be used, it is not necessary to specify
 // Custom includes
 
 //#include "SocketPolicy.mpp"
-///////////////////////////////hh.p////////////////////////////////////////
+//-/////////////////////////////////////////////////////////////////////////////////////////////////
 
 namespace senf {
 
     /// \addtogroup policy_group
-    /// @{
+    //\{
 
     // This may be adapted to change the supported policies (however, ClientSocketHandle and
     // ServerSocketHandle will probably have to be adjusted accordingly)
@@ -414,9 +419,9 @@ namespace senf {
     /** \brief Enable template overload depending on policy value
 
         This template is an example of the \c If \e Axis \c Is family of templates. It is used like
-        <a href="http://www.boost.org/libs/utility/enable_if.html">Boost.enable_if</a> to enable a
-        templated overload only, if the AddressingPolicy of \e Axis is compatible with \c Trait
-        (that is the AddressingPolicy of \c Policy is derived from \c Trait).
+        <a href="http://www.boost.org/doc/libs/release/libs/utility/enable_if.html">Boost.enable_if</a>
+        to enable a templated overload only, if the AddressingPolicy of \e Axis is compatible with
+        \c Trait (that is the AddressingPolicy of \c Policy is derived from \c Trait).
 
         \see policy_group
      */
@@ -509,7 +514,7 @@ namespace senf {
         SocketHandle with policy \c Base).
 
         The metafunction will return true (that is inherits from \c boost::true_type, see the <a
-        href="http://www.boost.org/libs/mpl/doc/index.html">Boost.MPL</a> library documentation for
+        href="http://www.boost.org/doc/libs/release/libs/mpl/doc/index.html">Boost.MPL</a> library documentation for
         more information) if each policy class in \c Base is a baseclass of (or the same as) the
         corresponding policy class in \c Derived.
 
@@ -521,10 +526,10 @@ namespace senf {
 
 #   endif
 
-    /// @}
+    //\}
 }
 
-//////////////////////////////hh.e////////////////////////////////////////
+//-/////////////////////////////////////////////////////////////////////////////////////////////////
 #include "SocketPolicy.ih"
 //#include "SocketPolicy.cci"
 #include "SocketPolicy.ct"