25 #ifndef ARRAY_SECTION_DOF_MAP_H 26 #define ARRAY_SECTION_DOF_MAP_H 28 #ifndef SHEAF_DLL_SPEC_H 29 #include "SheafSystem/sheaf_dll_spec.h" 32 #ifndef SECTION_DOF_MAP_H 33 #include "SheafSystem/section_dof_map.h" 56 virtual const std::string& class_name()
const;
61 static const std::string& static_class_name();
100 virtual bool invariant()
const;
123 size_t xdofs_ub = 0);
135 size_t xdofs_ub = 0);
142 return ARRAY_SECTION_DOF_TUPLE_ID;
159 virtual bool dof_in_bounds(
pod_index_type xdof_id,
bool xis_table_dofs)
const;
202 virtual bool fiber_in_bounds(
pod_index_type xdisc_id,
bool xis_table_dofs)
const;
244 return _dofs + schema().offset(xdof_id, xis_table_dofs);
252 return _dofs + schema().offset(xdisc_id, xfiber_dof_id, xis_table_dofs);
263 virtual void* dof_tuple();
268 virtual const void* dof_tuple()
const;
273 virtual void get_dof_tuple(
void* xbuf,
size_t xbuflen)
const;
278 virtual void put_dof_tuple(
const void* xbuf,
size_t xbuflen);
286 virtual void allocate_dofs();
318 bool _this_owns_dofs;
323 void init_dofs(
void* xdofs,
size_t xdofs_ub);
328 static bool make_prototype();
333 void reserve(
size_t xdof_tuple_ub);
338 #endif // ifndef ARRAY_SECTION_DOF_MAP_H The abstract map from section dof ids to section dof values of heterogeneous type.
virtual void get_dof(pod_index_type xdisc_id, pod_index_type xfiber_dof_id, void *xdof, size_type xdof_size) const =0
Copies the dof referred to by xdisc_id, xfiber_dof_id into xdof.
The standard fiber bundles name space; extends the standard sheaves namespace by defining base space...
virtual dof_tuple_type type_id() const
An identifer for the type of dof tuple this is.
A contiguous tuple, contiguous fiber representation of the abstract map from section dof ids to secti...
An index within the external ("client") scope of a given id space.
unsigned long size_type
An unsigned integral type used to represent sizes and capacities.
dof_tuple_type
Identifiers for dof tuple types.
Basic description of a dof.
int_type pod_index_type
The plain old data index type.
virtual void put_dof(pod_index_type xdisc_id, pod_index_type xfiber_dof_id, const void *xdof, size_type xdof_size)=0
Sets the dof referred to by xdof_id to the value at xdof.
Namespace for the fiber_bundles component of the sheaf system.
A handle for a poset whose members are numerical representations of sections of a fiber bundle...