20 #ifndef LIBMESH_REFERENCE_COUNTED_OBJECT_H 21 #define LIBMESH_REFERENCE_COUNTED_OBJECT_H 24 #include "libmesh/reference_counter.h" 76 #if defined(LIBMESH_ENABLE_REFERENCE_COUNTING) && defined(DEBUG) 89 #if defined(LIBMESH_ENABLE_REFERENCE_COUNTING) && defined(DEBUG) 102 #if defined(LIBMESH_ENABLE_REFERENCE_COUNTING) && defined(DEBUG) 129 #if defined(LIBMESH_ENABLE_REFERENCE_COUNTING) && defined(DEBUG) 141 #endif // LIBMESH_REFERENCE_COUNTED_OBJECT_H std::string name(const ElemQuality q)
This function returns a string containing some name for q.
ReferenceCountedObject(ReferenceCountedObject &&other) noexcept
Move constructor, must be declared noexcept.
void increment_constructor_count(const std::string &name) noexcept
Increments the construction counter.
ReferenceCountedObject & operator=(const ReferenceCountedObject &)
Copy assignment operator does nothing - we're copying an already-allocated object over an already-all...
The libMesh namespace provides an interface to certain functionality in the library.
This is the base class for enabling reference counting.
ReferenceCountedObject(const ReferenceCountedObject &other)
Also, increment the counter if the copy-constructor is called.
ReferenceCounter()
Constructors.
This class implements reference counting.
void increment_destructor_count(const std::string &name) noexcept
Increments the destruction counter.
ReferenceCountedObject()
Constructor.
~ReferenceCountedObject()
Destructor.