24 INLINE
bool GeomVertexArrayFormat::
25 is_registered()
const {
26 return _is_registered;
43 INLINE CPT(GeomVertexArrayFormat) GeomVertexArrayFormat::
44 register_format(
const GeomVertexArrayFormat *format) {
45 return get_registry()->register_format((GeomVertexArrayFormat *)format);
54 INLINE
int GeomVertexArrayFormat::
67 INLINE
void GeomVertexArrayFormat::
68 set_stride(
int stride) {
69 nassertv(!_is_registered);
70 nassertv(_stride >= _total_bytes);
85 INLINE
int GeomVertexArrayFormat::
101 INLINE
void GeomVertexArrayFormat::
102 set_pad_to(
int pad_to) {
103 nassertv(pad_to >= 1);
106 _stride = ((_stride + _pad_to - 1) / _pad_to) * _pad_to;
117 INLINE
int GeomVertexArrayFormat::
118 get_divisor()
const {
130 INLINE
void GeomVertexArrayFormat::
131 set_divisor(
int divisor) {
132 nassertv(divisor >= 0);
143 INLINE
int GeomVertexArrayFormat::
144 get_total_bytes()
const {
154 INLINE
int GeomVertexArrayFormat::
155 get_num_columns()
const {
156 return (
int)_columns.size();
165 get_column(
int i)
const {
166 nassertr(i >= 0 && i < (
int)_columns.size(), NULL);
167 consider_sort_columns();
177 INLINE
bool GeomVertexArrayFormat::
178 has_column(
const InternalName *name)
const {
187 INLINE GeomVertexArrayFormat::Registry *GeomVertexArrayFormat::
189 if (_registry == (Registry *)NULL) {
200 INLINE
void GeomVertexArrayFormat::
201 consider_sort_columns()
const {
202 if (_columns_unsorted) {
203 ((GeomVertexArrayFormat *)
this)->sort_columns();
208 operator << (ostream &out,
const GeomVertexArrayFormat &obj) {
This defines how a single column is interleaved within a vertex array stored within a Geom...