Panda3D
Public Member Functions | Static Public Member Functions | List of all members
GeomPipelineReader Class Reference

Encapsulates the data from a Geom, pre-fetched for one stage of the pipeline. More...

#include "geom.h"

Inheritance diagram for GeomPipelineReader:
GeomEnums

Public Member Functions

 GeomPipelineReader (Thread *current_thread)
 
 GeomPipelineReader (const Geom *object, Thread *current_thread)
 
 GeomPipelineReader (const GeomPipelineReader &copy)=delete
 
bool check_valid (const GeomVertexDataPipelineReader *data_reader) const
 
 CPT (GeomVertexData) get_vertex_data() const
 
 CPT (GeomPrimitive) get_primitive(int i) const
 
bool draw (GraphicsStateGuardianBase *gsg, const GeomVertexDataPipelineReader *data_reader, bool force) const
 The implementation of Geom::draw(). More...
 
Threadget_current_thread () const
 
int get_geom_rendering () const
 
UpdateSeq get_modified () const
 
int get_num_primitives () const
 
const Geomget_object () const
 
PrimitiveType get_primitive_type () const
 
ShadeModel get_shade_model () const
 
GeomPipelineReaderoperator= (const GeomPipelineReader &copy)=delete
 
GeomContextprepare_now (PreparedGraphicsObjects *prepared_objects, GraphicsStateGuardianBase *gsg) const
 
void set_object (const Geom *object)
 

Static Public Member Functions

static TypeHandle get_class_type ()
 
static void init_type ()
 

Additional Inherited Members

- Public Types inherited from GeomEnums
enum  AnimationType { AT_none, AT_panda, AT_hardware }
 
enum  Contents {
  C_other, C_point, C_clip_point, C_vector,
  C_texcoord, C_color, C_index, C_morph_delta,
  C_matrix, C_normal
}
 
enum  GeomRendering {
  GR_indexed_point = 0x00001, GR_indexed_other = 0x10000, GR_indexed_bits = 0x10001, GR_point = 0x00002,
  GR_point_uniform_size = 0x00004, GR_per_point_size = 0x00008, GR_point_perspective = 0x00010, GR_point_aspect_ratio = 0x00020,
  GR_point_scale = 0x00040, GR_point_rotate = 0x00080, GR_point_sprite = 0x00100, GR_point_sprite_tex_matrix = 0x00200,
  GR_point_bits = 0x003fe, GR_triangle_strip = 0x00400, GR_triangle_fan = 0x00800, GR_line_strip = 0x01000,
  GR_composite_bits = 0x01c00, GR_strip_cut_index = 0x20000, GR_flat_first_vertex = 0x02000, GR_flat_last_vertex = 0x04000,
  GR_shade_model_bits = 0x06000, GR_render_mode_wireframe = 0x40000, GR_render_mode_point = 0x80000, GR_adjacency = 0x100000
}
 
enum  NumericType {
  NT_uint8, NT_uint16, NT_uint32, NT_packed_dcba,
  NT_packed_dabc, NT_float32, NT_float64, NT_stdfloat,
  NT_int8, NT_int16, NT_int32, NT_packed_ufloat
}
 
enum  PrimitiveType {
  PT_none, PT_polygons, PT_lines, PT_points,
  PT_patches
}
 
enum  ShadeModel { SM_uniform, SM_smooth, SM_flat_first_vertex, SM_flat_last_vertex }
 
enum  UsageHint {
  UH_client, UH_stream, UH_dynamic, UH_static,
  UH_unspecified
}
 

Detailed Description

Encapsulates the data from a Geom, pre-fetched for one stage of the pipeline.

Does not hold a reference to the Geom. The caller must ensure that the Geom persists for at least the lifetime of the GeomPipelineReader.

Definition at line 405 of file geom.h.

Member Function Documentation

◆ draw()

bool GeomPipelineReader::draw ( GraphicsStateGuardianBase gsg,
const GeomVertexDataPipelineReader data_reader,
bool  force 
) const

The implementation of Geom::draw().

Definition at line 1849 of file geom.cxx.

Referenced by Geom::draw().


The documentation for this class was generated from the following files: