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;
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This template class can be used to provide faster allocation/deallocation for many Panda objects.
This class is used to associate each RenderAttrib with a different slot index at runtime,...
This is the base class for a number of render attributes (other than transform) that may be set on sc...
TypeHandle is the identifier used to differentiate C++ class types.
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.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.