21 #include "SheafSystem/dof_descriptor_array.h" 23 #include "SheafSystem/assert_contract.h" 24 #include "SheafSystem/primitive_attributes.h" 25 #include "SheafSystem/std_string.h" 31 sheaf::dof_descriptor_array::
36 require(xdof_ct >= 0);
46 ensure(
ub() == xdof_ct + 1);
60 delete [] _descriptors;
75 require( (0 <= xid) && (xid <
ub()) );
77 return _descriptors[xid];
125 return _descriptors[_ub - 1].offset;
136 os <<
"p.ub() = " << p.
ub() << std::endl;
138 for(
int i=0; i<p.
ub(); ++i)
152 <<
", " << p.alignment
169 result = xinclude_shallow ?
sizeof(xp) : 0;
~dof_descriptor_array()
Destructor.
size_type size() const
The number of bytes in the dof tuple described by this.
size_type dof_ct() const
The number of dofs described in this.
size_type ub() const
The upper bound on the array index; the number of descriptors. Note that this is not the number of do...
SHEAF_DLL_SPEC size_t deep_size(const dof_descriptor_array &xp, bool xinclude_shallow=true)
The deep size of the referenced object of type dof_descriptor_array.
unsigned long size_type
An unsigned integral type used to represent sizes and capacities.
An array for storing structs which describe the size, alignment, and offset of dofs within a dof tupl...
Basic description of a dof.
void remove_reference()
Remove a reference from this.
void add_reference()
Add a reference to this.
virtual dof_descriptor & operator[](int xid) const
Value of xid-th element.
SHEAF_DLL_SPEC std::ostream & operator<<(std::ostream &os, const dof_descriptor_array &p)
Insert dof_descriptor_array& p into ostream& os.
const std::string & name() const
The name of the primitive type associated with this.