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

A specific kind of CullBin that sorts geometry in the order specified by the user-specified draw_order parameter. More...

#include "cullBinFixed.h"

Inheritance diagram for CullBinFixed:
CullBin TypedReferenceCount CullBinEnums TypedObject ReferenceCount MemoryBase MemoryBase

Public Member Functions

 CullBinFixed (const std::string &name, GraphicsStateGuardianBase *gsg, const PStatCollector &draw_region_pcollector)
 
virtual void add_object (CullableObject *object, Thread *current_thread)
 Adds a geom, along with its associated state, to the bin for rendering. More...
 
virtual void draw (bool force, Thread *current_thread)
 Draws all the geoms in the bin, in the appropriate order. More...
 
virtual void finish_cull (SceneSetup *scene_setup, Thread *current_thread)
 Called after all the geoms have been added, this indicates that the cull process is finished for this frame and gives the bins a chance to do any post-processing (like sorting) before moving on to draw. More...
 
virtual TypeHandle force_init_type ()
 
virtual TypeHandle get_type () const
 
- Public Member Functions inherited from CullBin
 CullBin (const std::string &name, BinType bin_type, GraphicsStateGuardianBase *gsg, const PStatCollector &draw_region_pcollector)
 
BinType get_bin_type () const
 
const LColor & get_flash_color () const
 
const std::string & get_name () const
 
bool has_flash_color () const
 
virtual PT (CullBin) make_next() const
 
 PT (PandaNode) make_result_graph()
 
- Public Member Functions inherited from TypedReferenceCount
 TypedReferenceCount (const TypedReferenceCount &copy)
 
void operator= (const TypedReferenceCount &copy)
 
- Public Member Functions inherited from TypedObject
 TypedObject (const TypedObject &copy)=default
 
TypedObjectas_typed_object ()
 Returns the object, upcast (if necessary) to a TypedObject pointer. More...
 
const TypedObjectas_typed_object () const
 Returns the object, upcast (if necessary) to a TypedObject pointer. More...
 
int get_best_parent_from_Set (const std::set< int > &) const
 
int get_type_index () const
 Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. More...
 
bool is_exact_type (TypeHandle handle) const
 Returns true if the current object is the indicated type exactly. More...
 
bool is_of_type (TypeHandle handle) const
 Returns true if the current object is or derives from the indicated type. More...
 
TypedObjectoperator= (const TypedObject &copy)=default
 
- Public Member Functions inherited from ReferenceCount
int get_ref_count () const
 
WeakReferenceListget_weak_list () const
 Returns the WeakReferenceList associated with this ReferenceCount object. More...
 
bool has_weak_list () const
 Returns true if this particular ReferenceCount object has a WeakReferenceList created, false otherwise. More...
 
void local_object ()
 This function should be called, once, immediately after creating a new instance of some ReferenceCount-derived object on the stack. More...
 
void ref () const
 Explicitly increments the reference count. More...
 
bool ref_if_nonzero () const
 Atomically increases the reference count of this object if it is not zero. More...
 
bool test_ref_count_integrity () const
 Does some easy checks to make sure that the reference count isn't completely bogus. More...
 
bool test_ref_count_nonzero () const
 Does some easy checks to make sure that the reference count isn't zero, or completely bogus. More...
 
virtual bool unref () const
 Explicitly decrements the reference count. More...
 
WeakReferenceListweak_ref ()
 Adds the indicated PointerToVoid as a weak reference to this object. More...
 
void weak_unref ()
 Removes the indicated PointerToVoid as a weak reference to this object. More...
 

Static Public Member Functions

static TypeHandle get_class_type ()
 
static void init_type ()
 
static CullBinmake_bin (const std::string &name, GraphicsStateGuardianBase *gsg, const PStatCollector &draw_region_pcollector)
 Factory constructor for passing to the CullBinManager. More...
 
- Static Public Member Functions inherited from CullBin
static TypeHandle get_class_type ()
 
static void init_type ()
 
- Static Public Member Functions inherited from TypedReferenceCount
static TypeHandle get_class_type ()
 
static void init_type ()
 
- Static Public Member Functions inherited from TypedObject
static TypeHandle get_class_type ()
 
static void init_type ()
 This function is declared non-inline to work around a compiler bug in g++ 2.96. More...
 
- Static Public Member Functions inherited from ReferenceCount
static TypeHandle get_class_type ()
 
static void init_type ()
 

Additional Inherited Members

- Public Types inherited from CullBinEnums
enum  BinType {
  BT_invalid, BT_unsorted, BT_state_sorted, BT_back_to_front,
  BT_front_to_back, BT_fixed
}
 
- Public Attributes inherited from TypedObject
 get_type
 
- Public Attributes inherited from ReferenceCount
 get_ref_count
 Returns the current reference count. More...
 

Detailed Description

A specific kind of CullBin that sorts geometry in the order specified by the user-specified draw_order parameter.

This allows precise relative ordering of two objects.

When two or more objects are assigned the same draw_order, they are drawn in scene-graph order (as with CullBinUnsorted).

Definition at line 33 of file cullBinFixed.h.

Member Function Documentation

◆ add_object()

void CullBinFixed::add_object ( CullableObject object,
Thread current_thread 
)
virtual

Adds a geom, along with its associated state, to the bin for rendering.

Implements CullBin.

Definition at line 51 of file cullBinFixed.cxx.

◆ draw()

void CullBinFixed::draw ( bool  force,
Thread current_thread 
)
virtual

Draws all the geoms in the bin, in the appropriate order.

Implements CullBin.

Definition at line 71 of file cullBinFixed.cxx.

◆ finish_cull()

void CullBinFixed::finish_cull ( SceneSetup scene_setup,
Thread current_thread 
)
virtual

Called after all the geoms have been added, this indicates that the cull process is finished for this frame and gives the bins a chance to do any post-processing (like sorting) before moving on to draw.

Reimplemented from CullBin.

Definition at line 62 of file cullBinFixed.cxx.

◆ make_bin()

CullBin * CullBinFixed::make_bin ( const std::string &  name,
GraphicsStateGuardianBase gsg,
const PStatCollector draw_region_pcollector 
)
static

Factory constructor for passing to the CullBinManager.

Definition at line 42 of file cullBinFixed.cxx.

Referenced by init_libcull().


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