24 #ifndef SHEAF_DLL_SPEC_H 25 #include "SheafSystem/sheaf_dll_spec.h" 28 #ifndef SEC_REP_SPACE_MEMBER_H 29 #include "SheafSystem/sec_rep_space_member.h" 33 #include "SheafSystem/block.h" 37 #include "SheafSystem/tuple.h" 43 class sec_tuple_space;
44 class fiber_bundles_namespace;
98 const std::string& xsection_suffix,
99 const std::string& xfiber_suffix);
105 template <
typename S>
109 const std::string& xsection_suffix,
110 const std::string& xfiber_suffix,
117 static host_type& new_host(namespace_type& xns,
166 bool xauto_access =
true);
178 bool xauto_access =
true);
187 int xbase_version = CURRENT_HOST_VERSION,
188 bool xauto_access =
true);
208 virtual int factor_ct()
const;
213 int factor_ct(
bool xauto_access)
const;
232 virtual const std::string& class_name()
const;
237 static const std::string& static_class_name();
272 host_type* host()
const;
297 bool fiber_is_ancestor_of(
const any* xother)
const;
302 bool is_ancestor_of(
const any* xother)
const;
307 bool invariant()
const;
344 scalar_type* comp(
int i)
const;
349 void set_comp(
int i, scalar_type* component);
356 void detach_from_state();
364 void attach_handle_data_members();
372 return xname +
"_fiber";
389 SHEAF_DLL_SPEC
size_t deep_size(
const sec_tuple& x0,
bool xinclude_shallow =
true);
393 #endif // ifndef SEC_TUPLE_H sec_tuple scalar_type
The scalar type definition.
A Cartesian product section space.
The abstract map from section dof ids to section dof values of heterogeneous type.
A section of a bundle with fiber type tuple.
The default name space; a poset which contains other posets as members.
The standard fiber bundles name space; extends the standard sheaves namespace by defining base space...
A client handle for a general, abstract partially order set.
A path defined by a poset name and a member name separated by a forward slash ('/'). For example: "cell_definitions/triangle".
A member of a sec_rep_space; a section.
Abstract base class with useful features for all objects.
virtual sec_rep_space_member * clone() const
Make a new handle, no state instance of current.
static std::string create_fiber_name(const std::string &xname)
Creates a fiber space name for sec class with name xname. Convenience method used by derived class "n...
An index within the external ("client") scope of a given id space.
virtual void restrict_to(pod_index_type xbase_id, pod_index_type xfiber_schema_id)
Restricts this section to base with index xbase_id and fiber schema with index xfiber_schema_id.
fiber_bundles_namespace namespace_type
The type of namespace for this type of member.
A member of a Cartesian product space; a tuple of attributes (persistent version).
tuple fiber_type
The fiber type.
sec_tuple * clone(bool xnew_state, bool xauto_access=true) const
Make a new handle instance of current. Attach the new instance to a new state if xnew_state is true...
int_type pod_index_type
The plain old data index type.
An abstract client handle for a member of a poset.
Namespace for the fiber_bundles component of the sheaf system.
sec_tuple_space host_type
The type of host poset.
A handle for a poset whose members are numerical representations of sections of a fiber bundle...