29 XFileNode::PrevData::const_iterator pi;
30 pi = prev_data.find(_dynamic_size);
31 nassertr_always(pi != prev_data.end(), 0);
32 nassertr((*pi).second !=
nullptr, 0);
33 return (*pi).second->i();
41output(std::ostream &out)
const {
43 out <<
"[" << _fixed_size <<
"]";
45 out <<
"[" << _dynamic_size->get_name() <<
"]";
67 int other_child_index =
69 if (other_child_index != child_index) {
Defines one level of array bounds for an associated XFileDataDef element.
bool is_fixed_size() const
Returns true if this array definition specifies a const-size array, false if it is a dynamic-size arr...
bool matches(const XFileArrayDef &other, const XFileDataDef *parent, const XFileDataDef *other_parent) const
Returns true if the node, particularly a template node, is structurally equivalent to the other node ...
int get_fixed_size() const
Returns the const size of the array, if is_fixed_size() returned true.
XFileDataDef * get_dynamic_size() const
Returns the data element that names the dynamic size of the array, if is_fixed_size() returned false.
int get_size(const XFileNode::PrevData &prev_data) const
Returns the size of the array dimension.
A definition of a single data element appearing within a template record.
int find_child_index(const std::string &name) const
Returns the index number of the child with the indicated name, if any, or -1 if none.
This is our own Panda specialization on the default STL map.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.