15 #include "jointVertexTransform.h" 17 #include "datagramIterator.h" 18 #include "bamReader.h" 19 #include "bamWriter.h" 20 #include "lightMutexHolder.h" 30 JointVertexTransform::
31 JointVertexTransform() :
43 JointVertexTransform::
49 _joint->_vertex_transforms.insert(
this);
58 JointVertexTransform::
59 ~JointVertexTransform() {
61 _joint->_vertex_transforms.erase(
this);
88 result.multiply(_matrix, previous);
111 void JointVertexTransform::
112 output(ostream &out)
const {
113 out << _joint->get_name();
121 void JointVertexTransform::
125 _matrix = _joint->_initial_net_transform_inverse * _joint->_net_transform;
126 _matrix_stale =
false;
167 _joint->_vertex_transforms.insert(
this);
186 parse_params(params, scan, manager);
187 object->fillin(scan, manager);
199 void JointVertexTransform::
201 VertexTransform::fillin(scan, manager);
204 _matrix_stale =
true;
This is the fundamental interface for extracting binary objects from a Bam file, as generated by a Ba...
Base class for objects that can be written to and read from Bam files.
This is the fundamental interface for writing binary objects to a Bam file, to be extracted later by ...
static Thread * get_current_thread()
Returns a pointer to the currently-executing Thread object.
virtual int complete_pointers(TypedWritable **p_list, BamReader *manager)
Receives an array of pointers, one for each time manager->read_pointer() was called in fillin()...
This is a 4-by-4 transform matrix.
Similar to MutexHolder, but for a light mutex.
An instance of this class is passed to the Factory when requesting it to do its business and construc...
void accumulate(const LMatrix4f &other, float weight)
Computes (*this) += other * weight.
void register_factory(TypeHandle handle, CreateFunc *func)
Registers a new kind of thing the Factory will be able to create.
static WritableFactory * get_factory()
Returns the global WritableFactory for generating TypedWritable objects.
This represents one joint of the character's animation, containing an animating transform matrix...
A class to retrieve the individual data elements previously stored in a Datagram. ...
TypeHandle is the identifier used to differentiate C++ class types.
An ordered list of data elements, formatted in memory for transmission over a socket or writing to a ...
void write_pointer(Datagram &packet, const TypedWritable *dest)
The interface for writing a pointer to another object to a Bam file.
void read_pointer(DatagramIterator &scan)
The interface for reading a pointer to another object from a Bam file.