37 INLINE
virtual TypeHandle get_value_type()
const;
38 virtual void output(std::ostream &out)
const=0;
42 return get_class_type();
44 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
48 static void init_type() {
49 TypedWritableReferenceCount::init_type();
51 TypedWritableReferenceCount::get_class_type());
70 MAKE_PROPERTY(value, get_value);
72 virtual void output(std::ostream &out)
const;
79 return get_class_type();
81 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
85 static void init_type() {
86 ParamValueBase::init_type();
88 ParamValueBase::get_class_type());
112 INLINE
void set_value(
const Type &value);
113 INLINE
const Type &get_value()
const;
117 INLINE
virtual void output(std::ostream &out)
const;
134 static void init_type(
const std::string &type_name =
"UndefinedParamValue") {
135 ParamValueBase::init_type();
137 (type_name, ParamValueBase::get_class_type());
140 return get_class_type();
145 return get_class_type();
196 #ifdef STDFLOAT_DOUBLE This is the fundamental interface for extracting binary objects from a Bam file, as generated by a Ba...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
virtual void write_datagram(BamWriter *manager, Datagram &dg)
Writes the contents of this object to the datagram for shipping out to a Bam file.
A class object for storing specifically objects of type TypedReferenceCount, which is different than ...
Base class for objects that can be written to and read from Bam files.
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.
A base class for things which need to inherit from both TypedObject and from ReferenceCount.
This is the fundamental interface for writing binary objects to a Bam file, to be extracted later by ...
virtual TypeHandle get_value_type() const
Retrieves the type of the value stored in the parameter.
set_value
Changes the value stored in the parameter.
A handy class object for storing simple values (like integers or strings) passed along with an Event ...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A non-template base class of ParamValue (below), which serves mainly to define the placeholder for th...
virtual TypeHandle get_value_type() const
Returns the type of the underlying value.
An instance of this class is passed to the Factory when requesting it to do its business and construc...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A base class for things which need to inherit from both TypedWritable and from ReferenceCount.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
static void register_with_read_factory()
Tells the BamReader how to create objects of type ParamValue.
A class to retrieve the individual data elements previously stored in a Datagram.
TypeHandle is the identifier used to differentiate C++ class types.
TypeHandle register_dynamic_type(const std::string &name)
This is essentially similar to register_type(), except that it doesn't store a reference to any TypeH...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
An ordered list of data elements, formatted in memory for transmission over a socket or writing to a ...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.