// $Id$
//
// Copyright (C) 2006
-// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS)
-// Kompetenzzentrum fuer Satelitenkommunikation (SatCom)
-// Stefan Bund <stefan.bund@fokus.fraunhofer.de>
+// 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
/** \defgroup membind Bound Member Functions
- The membind() family of function templates simplifies the creation
- of simple bound member function pointers:
+ The membind() family of function templates simplifies the creation of simple bound member
+ function pointers:
\code
struct Foo {
int rv = f(1); // Calls foo->test(1)
\endcode
- \idea Make the \a ob argument type an additional P template
- parameter (using call_traits for the exact arg type? Probably
- we'll get deduction problems then) . The only operation this
- object musst suppoprt is ob->*fn. This would allow the use of
- smart pointers. We should keep the T & version to still support
- ob.*fn use.
+ senf::membind() takes either a pointer or an object as second argument. When passing an object,
+ <em>that object will be copied into the bound member function returned.</em>
+
+ \idea Make the \a ob argument type an additional P template parameter (using call_traits for the
+ exact arg type? Probably we'll get deduction problems then) . The only operation this object
+ must support is ob->*fn. This would allow the use of smart pointers. We should keep the T &
+ version to still support ob.*fn use.
*/
-#ifndef HH_membind_
-#define HH_membind_ 1
+#ifndef HH_SENF_Utils_membind_
+#define HH_SENF_Utils_membind_ 1
// Custom includes
#include <boost/bind.hpp>
#include <boost/function.hpp>
+#include "../config.hh"
///////////////////////////////hh.p////////////////////////////////////////
namespace senf {
#define scOBTYPE T *
-#include "Utils/impl/membind.hh"
+#include "../Utils/impl/membind.hh"
#undef scOBTYPE
#define scOBTYPE T &
-#include "Utils/impl/membind.hh"
+#include "../Utils/impl/membind.hh"
#undef scOBTYPE
#ifdef DOXYGEN
// c-file-style: "senf"
// indent-tabs-mode: nil
// ispell-local-dictionary: "american"
+// compile-command: "scons -u test"
+// comment-column: 40
// End: