15 #ifndef GEOMVERTEXREADER_H
16 #define GEOMVERTEXREADER_H
18 #include "pandabase.h"
19 #include "geomVertexData.h"
20 #include "geomVertexColumn.h"
21 #include "internalName.h"
23 #include "pointerTo.h"
72 const InternalName *name,
76 INLINE GeomVertexReader(
const GeomVertexReader ©);
77 INLINE
void operator = (
const GeomVertexReader ©);
78 INLINE ~GeomVertexReader();
83 INLINE
size_t get_stride()
const;
84 INLINE
Thread *get_current_thread()
const;
86 INLINE
void set_force(
bool force);
87 INLINE
bool get_force()
const;
89 INLINE
bool set_column(
int column);
94 INLINE
bool has_column()
const;
95 INLINE
int get_array()
const;
98 INLINE
void set_row_unsafe(
int row);
99 INLINE
void set_row(
int row);
101 INLINE
int get_start_row()
const;
102 INLINE
int get_read_row()
const;
103 INLINE
bool is_at_end()
const;
105 INLINE
float get_data1f();
112 INLINE
double get_data1d();
119 INLINE PN_stdfloat get_data1();
126 INLINE
int get_data1i();
131 void output(ostream &out)
const;
134 INLINE GeomVertexColumn::Packer *get_packer()
const;
139 INLINE
bool set_pointer(
int row);
140 INLINE
void quick_set_pointer(
int row);
141 INLINE
const unsigned char *inc_pointer();
157 GeomVertexColumn::Packer *_packer;
161 const unsigned char *_pointer_begin;
162 const unsigned char *_pointer_end;
163 const unsigned char *_pointer;
171 static const unsigned char empty_buffer[100];
181 #include "geomVertexReader.I"
This is the base class for all three-component vectors and points.
This is a const pointer to an InternalName, and should be used in lieu of a CPT(InternalName) in func...
This is a 4-by-4 transform matrix.
This is the base class for all two-component vectors and points.
This is the base class for all two-component vectors and points.
This is the base class for all three-component vectors and points.
This data object is returned by GeomVertexArrayData::get_handle() or modify_handle().
This is the base class for all three-component vectors and points.
This defines how a single column is interleaved within a vertex array stored within a Geom...
static Thread * get_current_thread()
Returns a pointer to the currently-executing Thread object.
This is a 3-by-3 transform matrix.
This is a 4-by-4 transform matrix.
This defines the actual numeric vertex data stored in a Geom, in the structure defined by a particula...
This is the base class for all two-component vectors and points.
This is the base class for all three-component vectors and points.
This is the base class for all three-component vectors and points.
This is the base class for all three-component vectors and points.
A thread; that is, a lightweight process.
This object provides a high-level interface for quickly reading a sequence of numeric values from a v...
Encapsulates the data from a GeomVertexData, pre-fetched for one stage of the pipeline.
This is a 3-by-3 transform matrix.
This is the data for one array of a GeomVertexData structure.