14#ifndef TYPEDWRITABLEREFERENCECOUNT_H
15#define TYPEDWRITABLEREFERENCECOUNT_H
31class EXPCL_PANDA_PUTIL TypedWritableReferenceCount :
public TypedWritable,
public ReferenceCount {
33 INLINE TypedWritableReferenceCount();
34 INLINE TypedWritableReferenceCount(
const TypedWritableReferenceCount ©);
35 INLINE
void operator = (
const TypedWritableReferenceCount ©);
40 static PT(TypedWritableReferenceCount) decode_from_bam_stream(vector_uchar data,
BamReader *reader =
nullptr);
44 return get_class_type();
46 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
50 static void init_type() {
51 TypedWritable::init_type();
52 ReferenceCount::init_type();
54 TypedWritable::get_class_type(),
55 ReferenceCount::get_class_type());
57 "TypedWriteableReferenceCount");
66INLINE
void PointerToBase<TypedWritableReferenceCount>::update_type(
To *ptr) {}
This is the fundamental interface for extracting binary objects from a Bam file, as generated by a Ba...
TypeHandle is the identifier used to differentiate C++ class types.
void record_alternate_name(TypeHandle type, const std::string &name)
Indicates an alternate name for the same type.
static TypeRegistry * ptr()
Returns the pointer to the global TypeRegistry object.
virtual ReferenceCount * as_reference_count()
Returns the pointer cast to a ReferenceCount pointer, if it is in fact of that type.
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(),...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.