14#ifndef NODECACHEDREFERENCECOUNT_H
15#define NODECACHEDREFERENCECOUNT_H
49class EXPCL_PANDA_PUTIL NodeCachedReferenceCount :
public CachedTypedWritableReferenceCount {
51 INLINE NodeCachedReferenceCount();
52 INLINE NodeCachedReferenceCount(
const NodeCachedReferenceCount ©);
53 INLINE
void operator = (
const NodeCachedReferenceCount ©);
54 INLINE ~NodeCachedReferenceCount();
70 INLINE
void node_unref_only()
const;
71 bool do_test_ref_count_integrity()
const;
74 AtomicAdjust::Integer _node_ref_count;
81 static void init_type() {
82 CachedTypedWritableReferenceCount::init_type();
84 CachedTypedWritableReferenceCount::get_class_type());
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
bool test_ref_count_integrity() const
Does some easy checks to make sure that the reference count isn't completely bogus.
bool node_unref() const
Explicitly decrements the node reference count and the normal reference count simultaneously.
void node_ref() const
Explicitly increments the reference count.
int get_node_ref_count() const
Returns the current reference count.
int get_referenced_bits() const
Returns the union of the values defined in the Referenced enum that represents the various things tha...
TypeHandle is the identifier used to differentiate C++ class types.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...