src/core/ref-count-base.h
author Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
Thu Nov 12 13:01:01 2009 +0100 (2009-11-12)
changeset 5505 c0ac392289c3
parent 3395 3b6bc7a4f975
child 5533 63e2dbaf577c
permissions -rw-r--r--
replace RefCountBase with SimpleRefCount<> to avoid duplicate refcounting implementations.
     1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
     2 /*
     3  * Copyright (c) 2007 Georgia Tech Research Corporation
     4  *
     5  * This program is free software; you can redistribute it and/or modify
     6  * it under the terms of the GNU General Public License version 2 as
     7  * published by the Free Software Foundation;
     8  *
     9  * This program is distributed in the hope that it will be useful,
    10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
    11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    12  * GNU General Public License for more details.
    13  *
    14  * You should have received a copy of the GNU General Public License
    15  * along with this program; if not, write to the Free Software
    16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
    17  *
    18  * Author:  George Riley <riley@ece.gatech.edu>
    19  * Adapted from original code in object.h by:
    20  * Authors: Gustavo Carneiro <gjcarneiro@gmail.com>,
    21  *          Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
    22  */
    23 #ifndef __REF_COUNT_BASE_H__
    24 #define __REF_COUNT_BASE_H__
    25 
    26 #include "simple-ref-count.h"
    27 
    28 namespace ns3 {
    29 
    30 /**
    31  * \brief A deprecated way to get reference-counting powers
    32  *
    33  * Users who wish to use reference counting for a class of their own should use
    34  * instead the template \ref ns3::SimpleRefCount. This class is maintained
    35  * purely for compatibility to avoid breaking the code of users.
    36  */
    37 class RefCountBase : public SimpleRefCount<RefCountBase>
    38 { 
    39 public:
    40   /**
    41    * This only thing this class does it declare a virtual destructor
    42    */
    43   virtual ~RefCountBase () = 0;
    44 };
    45 
    46 } // namespace ns3
    47 
    48 #endif /* __REF_COUNT_BASE_H__*/