24 #ifndef SHEAF_DLL_SPEC_H 25 #include "SheafSystem/sheaf_dll_spec.h" 29 #include "SheafSystem/sheaf.h" 33 #include "SheafSystem/std_string.h" 39 using namespace sheaf;
66 virtual const std::string& class_name()
const = 0;
71 static const std::string& static_class_name();
87 virtual bool is_ancestor_of(
const any_lite& xother)
const;
92 bool is_same_type(
const any_lite& xother)
const;
117 bool invariant()
const;
124 return _disable_invariance_check_request_depth == 0;
132 --_disable_invariance_check_request_depth;
142 ++_disable_invariance_check_request_depth;
151 return _disable_invariance_check_request_depth;
162 mutable int _disable_invariance_check_request_depth;
182 virtual const void*
row_dofs()
const;
194 #endif // ifndef ANY_LITE_H int disable_invariance_check_request_depth() const
Number of times disable_invariant_check has been called without matching call to enable_invariant_che...
T::row_dofs_type & row_dofs(T &x0)
The row dofs pod type for x0 (mutable version).
void disable_invariant_check() const
Disable invariant check. Intended for preventing recursive calls to invariant and for suppressing inv...
Abstract base class with useful features for all volatile objects.
void enable_invariant_check() const
Enable invariant checking.
Namespace for the sheaves component of the sheaf system.
bool invariant_check() const
True if invariant checking is enabled.
Namespace for the fiber_bundles component of the sheaf system.
any_lite volatile_type
The associated volatile type.