// $Id$
//
-// Copyright (C) 2006
-// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS)
-// Kompetenzzentrum fuer Satelitenkommunikation (SatCom)
-// Stefan Bund <stefan.bund@fokus.fraunhofer.de>
+// 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
// Free Software Foundation, Inc.,
// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-// Definition of inline non-template functions
+/** \file
+ \brief intrusive_refcount inline non-template implementation */
//#include "intrusive_refcount.ih"
#define prefix_ inline
///////////////////////////////cci.p///////////////////////////////////////
-prefix_ senf::intrusive_refcount::refcount_t senf::intrusive_refcount::refcount()
+prefix_ senf::intrusive_refcount_base::refcount_t senf::intrusive_refcount_base::refcount()
{
return refcount_;
}
-prefix_ bool senf::intrusive_refcount::is_shared()
+prefix_ bool senf::intrusive_refcount_base::is_shared()
{
return refcount()>1;
}
-prefix_ senf::intrusive_refcount::intrusive_refcount()
+prefix_ senf::intrusive_refcount_base::intrusive_refcount_base()
: refcount_(0)
{}
-prefix_ senf::intrusive_refcount::~intrusive_refcount()
+prefix_ senf::intrusive_refcount_base::~intrusive_refcount_base()
{}
-prefix_ void senf::intrusive_refcount::add_ref()
+prefix_ void senf::intrusive_refcount_base::add_ref()
{
++refcount_;
}
-prefix_ bool senf::intrusive_refcount::release()
+prefix_ bool senf::intrusive_refcount_base::release()
{
BOOST_ASSERT(refcount_>0);
return --refcount_ == 0;
}
-prefix_ void senf::intrusive_ptr_add_ref(intrusive_refcount* p)
-{
- p->add_ref();
-}
-
-prefix_ void senf::intrusive_ptr_release(intrusive_refcount* p)
-{
- if (p->release())
- delete p;
-}
+prefix_ senf::intrusive_refcount::intrusive_refcount()
+{}
///////////////////////////////cci.e///////////////////////////////////////
#undef prefix_
\f
// Local Variables:
// mode: c++
+// fill-column: 100
// c-file-style: "senf"
+// indent-tabs-mode: nil
+// ispell-local-dictionary: "american"
+// compile-command: "scons -u test"
+// comment-column: 40
// End: