21 UpdateSeq VertexTransform::_next_modified;
38 nassertv(_tables.
empty());
48 mult_matrix(LMatrix4 &result,
const LMatrix4 &previous)
const {
49 nassertv(&result != &previous);
52 result.multiply(me, previous);
64 accum.accumulate(me, weight);
70 void VertexTransform::
71 output(std::ostream &out)
const {
78 void VertexTransform::
79 write(std::ostream &out,
int indent_level)
const {
84 mat.write(out, indent_level + 2);
98 CDWriter cdatag(_global_cycler,
true, current_thread);
100 cdatag->_modified = _next_modified;
102 return _next_modified;
110 void VertexTransform::
111 mark_modified(
Thread *current_thread) {
112 CDWriter cdata(_cycler,
true, current_thread);
115 Palettes::iterator pi;
116 for (pi = _tables.
begin(); pi != _tables.
end(); ++pi) {
117 (*pi)->update_modified(cdata->_modified, current_thread);
134 void VertexTransform::
144 return new CData(*
this);
151 void VertexTransform::CData::
159 int VertexTransform::CData::
170 void VertexTransform::CData::
This class maintains different copies of a page of data between stages of the graphics pipeline (or a...
This is the fundamental interface for extracting binary objects from a Bam file, as generated by a Ba...
A single page of data maintained by a PipelineCycler.
Base class for objects that can be written to and read from Bam files.
iterator_0 begin()
Returns the iterator that marks the first element in the ordered vector.
This is the fundamental interface for writing binary objects to a Bam file, to be extracted later by ...
iterator_0 end()
Returns the iterator that marks the end of the ordered vector.
bool empty() const
Returns true if the ordered vector is empty, false otherwise.
virtual void fillin(DatagramIterator &scan, BamReader *manager)
This internal function is intended to be called by each class's make_from_bam() method to read in all...
virtual void write_datagram(BamWriter *manager, Datagram &dg)
Writes the contents of this object to the datagram for shipping out to a Bam file.
std::ostream & indent(std::ostream &out, int indent_level)
A handy function for doing text formatting.
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 template class calls PipelineCycler::write() in the constructor and PipelineCycler::release_writ...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A thread; that is, a lightweight process.
A class to retrieve the individual data elements previously stored in a Datagram.
TypeHandle is the identifier used to differentiate C++ class types.
This is a sequence number that increments monotonically.
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.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.