tlx
|
#include <algorithm>
#include <atomic>
#include <cassert>
#include <iosfwd>
#include <type_traits>
#include <utility>
Go to the source code of this file.
Classes | |
class | CountingPtrDefaultDeleter |
default deleter for CountingPtr More... | |
class | CountingPtrNoOperationDeleter |
dummy deleter for CountingPtr More... | |
class | CountingPtr< Type, Deleter > |
High-performance smart pointer used as a wrapping reference counting pointer. More... | |
class | ReferenceCounter |
Provides reference counting abilities for use with CountingPtr. More... | |
Namespaces | |
tlx | |
Typedefs | |
template<typename Type > | |
using | counting_ptr = CountingPtr< Type > |
make alias due to similarity with std::shared_ptr<T> More... | |
template<typename Type > | |
using | CountingPtrNoDelete = CountingPtr< Type, CountingPtrNoOperationDeleter > |
make alias for dummy deleter More... | |
using | reference_counter = ReferenceCounter |
make alias due to CountingPtr's similarity with std::shared_ptr<T> More... | |
Functions | |
template<typename Type , typename... Args> | |
CountingPtr< Type > | make_counting (Args &&...args) |
method analogous to std::make_shared and std::make_unique. More... | |
template<typename A , typename D > | |
void | swap (CountingPtr< A, D > &a1, CountingPtr< A, D > &a2) noexcept |
swap enclosed object with another counting pointer (no reference counts need change) More... | |
template<typename A , typename D > | |
std::ostream & | operator<< (std::ostream &os, const CountingPtr< A, D > &c) |
print pointer More... | |