21 #ifndef IJK_PRODUCT_STRUCTURE_H 22 #define IJK_PRODUCT_STRUCTURE_H 24 #ifndef SHEAF_DLL_SPEC_H 25 #include "SheafSystem/sheaf_dll_spec.h" 28 #ifndef ABSTRACT_PRODUCT_STRUCTURE_H 29 #include "SheafSystem/abstract_product_structure.h" 33 #include "SheafSystem/pod_types.h" 208 virtual bool is_ancestor_of(
const any *other)
const;
213 virtual bool invariant()
const;
236 return (x0*x1_end+x1)*x2_end + x2;
269 #endif // ifndef IJK_PRODUCT_STRUCTURE_H A 3D implementation of abstract_product_structure.
An abstract class that defines the product structure for an id space.
pod_index_type ordinal(pod_index_type xi, pod_index_type xj, size_type xj_ub)
2-tuple to ordinal conversion.
Abstract base class with useful features for all objects.
size_type _k_ub
The upper bound in the k-direction.
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.
pod_index_type pod_type
The "plain old data" index type for this.
ijk_product_structure()
Default constructor; disabled.
bool operator==(const singly_linked_list< T, Alloc > &lhs, const singly_linked_list< T, Alloc > &rhs)
Checks if the contents of lhs and rhs are equal, that is, whether lhs.size() == rhs.size() and each element in lhs compares equal with the element in rhs at the same position.
size_type _j_ub
The upper bound in the j-direction.
int_type pod_index_type
The plain old data index type.
Namespace for the sheaves component of the sheaf system.
void tuple(pod_index_type x, size_type xj_ub, pod_index_type &xi, pod_index_type &xj)
Ordinal to 2-tuple conversion.