14 #ifndef RENDERATTRIBREGISTRY_H 15 #define RENDERATTRIBREGISTRY_H 50 static const int _max_slots = 32;
52 int register_slot(
TypeHandle type_handle,
int sort,
56 INLINE
int get_slot(
TypeHandle type_handle)
const;
57 static constexpr
int get_max_slots() {
return _max_slots; }
59 INLINE
int get_num_slots()
const;
60 INLINE
TypeHandle get_slot_type(
int slot)
const;
61 INLINE
int get_slot_sort(
int slot)
const;
62 void set_slot_sort(
int slot,
int sort);
63 INLINE
const RenderAttrib *get_slot_default(
int slot)
const;
65 INLINE
int get_num_sorted_slots()
const;
66 INLINE
int get_sorted_slot(
int n)
const;
74 static void init_global_ptr();
80 INLINE
bool operator () (
int a,
int b)
const;
96 vector_int _slots_by_type;
97 vector_int _sorted_slots;
This is the base class for a number of render attributes (other than transform) that may be set on sc...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This class is used to associate each RenderAttrib with a different slot index at runtime,...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
TypeHandle is the identifier used to differentiate C++ class types.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This template class can be used to provide faster allocation/deallocation for many Panda objects.