X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Utils%2Fintrusive_refcount.cti;h=976e1ae3dfe2faf3352bc0cee101fee725a5540f;hb=a1fdb7bb122f0b05be809a922d4b7ef5e125fa67;hp=bf3c744f8067a2621888dbf12255a9393fbb7654;hpb=47368f306a577d1e46df69a7f729bd3893cbe5e7;p=senf.git diff --git a/Utils/intrusive_refcount.cti b/Utils/intrusive_refcount.cti index bf3c744..976e1ae 100644 --- a/Utils/intrusive_refcount.cti +++ b/Utils/intrusive_refcount.cti @@ -1,6 +1,8 @@ -// Copyright (C) 2007 -// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS) -// Kompetenzzentrum fuer Satelitenkommunikation (SatCom) +// $Id$ +// +// Copyright (C) 2007 +// Fraunhofer Institute for Open Communication Systems (FOKUS) +// Competence Center NETwork research (NET), St. Augustin, GERMANY // Stefan Bund // // This program is free software; you can redistribute it and/or modify @@ -28,28 +30,28 @@ #define prefix_ inline ///////////////////////////////cti.p/////////////////////////////////////// -template -prefix_ void senf::intrusive_refcount_t::intrusive_ptr_add_ref() +template +prefix_ void senf::intrusive_refcount_base::intrusive_ptr_add_ref() { - static_cast(this)->add_ref(); + static_cast(this)->add_ref(); } -template -prefix_ void senf::intrusive_refcount_t::intrusive_ptr_release() +template +prefix_ void senf::intrusive_refcount_base::intrusive_ptr_release() { - if (static_cast(this)->release()) delete this; + if (static_cast(this)->release()) delete this; } template -prefix_ void senf::intrusive_ptr_add_ref(intrusive_refcount_t* p) +prefix_ void senf::intrusive_ptr_add_ref(intrusive_refcount_t const * p) { - p->intrusive_ptr_add_ref(); + const_cast*>(p)->intrusive_ptr_add_ref(); } template -prefix_ void senf::intrusive_ptr_release(intrusive_refcount_t* p) +prefix_ void senf::intrusive_ptr_release(intrusive_refcount_t const * p) { - p->intrusive_ptr_release(); + const_cast*>(p)->intrusive_ptr_release(); } template @@ -66,4 +68,6 @@ prefix_ senf::intrusive_refcount_t::intrusive_refcount_t() // c-file-style: "senf" // indent-tabs-mode: nil // ispell-local-dictionary: "american" +// compile-command: "scons -u test" +// comment-column: 40 // End: