SheafSystem
0.0.0.0
|
Emulator for a interval of implicit base space members representing an unstructured block, that is, a homogeneous collection of zones of a given type with nodal connectivity. More...
#include <zone_nodes_block_crg_interval.h>
Friends | |
class | fiber_bundles_namespace |
ZONE_NODE_BLOCK_CRG_INTERVAL FACET | |
zone_nodes_block_crg_interval () | |
Default Constructor. More... | |
virtual | ~zone_nodes_block_crg_interval () |
Destructor. More... | |
VERTEX CLIENT ID SPACE FACET | |
pod_index_type | _vertex_client_space_id |
The index of the vertex client id space. More... | |
bool | _vertex_client_id_space_initialized |
True, if and only if the client id space has been initialized. More... | |
bool | vertex_client_id_space_initialized () const |
True if and only if the vertex client id space has been initialized. More... | |
pod_index_type | vertex_client_space_id () const |
The index of the vertex client id space. More... | |
std::string | vertex_client_id_space_name () |
The reserved name for the vertex client id space of this interval. More... | |
void | initialize_vertex_client_id_space (block_adjacency &xadjacency) |
Initializes the vertex client id space. More... | |
ZONES FACET | |
void | initialize_zones (base_space_poset &xhost) |
Initialize the zones id space. More... | |
VERTICES FACET | |
void | initialize_vertices (base_space_poset &xhost) |
Initialize the vertex id space. More... | |
BASE_SPACE_CRG_INTERVAL FACET | |
int | _zone_db |
The dimension of a zone. More... | |
virtual int | db (pod_index_type xmbr_id) const |
The dimension of the member with id xmbr_id. Does not require access to dof tuple. More... | |
virtual pod_index_type | d_cells_space_id (int xd) const |
The id space index for the cells of dimension xd. Returns invalid_pod_index() if there is no id space for dimension xd. More... | |
BLOCK VERTICES FACET | |
void | initialize_block_vertices () |
Initialize the block vertices id space. More... | |
INTERVAL FACET | |
static void | get_size (const block_connectivity &xconn, size_type &result) |
The size of the interval for block connectivity xconn. More... | |
COVER SET FACET | |
virtual void | initialize_lower_covers () |
Initialize the lower covers for this interval. More... | |
virtual void | initialize_upper_covers () |
Initialize the upper cover for this interval. More... | |
DOF_TUPLE_ID FACET | |
static void | get_dof_tuple_ids (poset_state_handle &xhost, const block_connectivity &xconn, block< pod_index_type > &result) |
The dof tuple ids for an instance created with parameter xi_size. More... | |
PRIVATE_DATA FACET | |
virtual size_type | implicit_private_data_size () const |
The size of the private data. More... | |
virtual void | get_implicit_private_data (block< pod_index_type > &xdata) const |
Initializes this using private data xdata. More... | |
virtual void | put_implicit_private_data (const block< pod_index_type > &xdata) |
Initializes this using private data xdata. More... | |
static void | get_private_data (const block_connectivity &xconn, block< pod_index_type > &result) |
The private data for an instance with connectivity xconn. More... | |
FINIALIZE FACET | |
virtual void | finalize (poset_state_handle &xhost) |
Finialize the initialization of this crg interval in the host xhost. More... | |
FACTORY FACET | |
virtual const std::string & | class_name () const |
The name of this class; provided to satisfy factory template. More... | |
virtual bool | is_initialized () const |
True if fully initialized. More... | |
ANY FACET | |
virtual bool | is_ancestor_of (const any *other) const |
Conformance test; true if other conforms to this. More... | |
virtual zone_nodes_block_crg_interval * | clone () const |
Virtual constructor, makes a new instance of the same type as this. More... | |
virtual bool | invariant () const |
Class invariant. More... | |
Additional Inherited Members | |
Public Member Functions inherited from fiber_bundle::homogeneous_block_crg_interval | |
homogeneous_block_crg_interval () | |
Default Constructor. More... | |
virtual | ~homogeneous_block_crg_interval () |
Destructor. More... | |
bool | zones_initialized () const |
True if the zone id space has been initialized. More... | |
pod_index_type | zones_space_id () const |
The index of the zone id space. More... | |
bool | vertices_initialized () const |
True if the vertex id space has been initialized. More... | |
pod_index_type | vertices_space_id () const |
The index of the vertex id space. More... | |
pod_index_type | connectivity_space_id (pod_index_type xzone_id) const |
The index of the connectivity id space for zone with id xzone_id. More... | |
pod_index_type | adjacency_space_id (pod_index_type xvertex_id) const |
The index of the adjacency id space for vertex with id xvertex_id. More... | |
virtual pod_index_type | cells_begin () const |
The beginning of the local cells interval. More... | |
virtual pod_index_type | cells_end () const |
The end of the local cells interval. More... | |
virtual bool | is_jim (pod_index_type xmbr_index) const |
True if and only if the member with index xmbr_index is join-irreducible. More... | |
virtual pod_index_type | dof_tuple_id (pod_index_type xmbr_index) const |
The dof tuple id of the member with index xmbr_index. More... | |
pod_index_type | block_dof_tuple_id () const |
Dof tuple id for the block itself. More... | |
pod_index_type | zone_dof_tuple_id () const |
Dof tuple id for zones. More... | |
pod_index_type | vertex_dof_tuple_id () const |
Dof tuple id for vertices. More... | |
void | initialize (const namespace_poset &xnamespace) |
Sets is_initialized() == true; dummy routine provided to satisfy factory template. More... | |
Public Member Functions inherited from fiber_bundle::base_space_crg_interval | |
base_space_crg_interval () | |
Default Constructor. More... | |
virtual | ~base_space_crg_interval () |
Destructor. More... | |
void | cells_begin (scoped_index &result) const |
The beginning of the local cells interval. More... | |
void | cells_end (scoped_index &result) const |
The end of the local cells interval. More... | |
int | db (const scoped_index &xmbr_id) const |
The dimension of the member with id xmbr_id. Does not require access to dof tuple. More... | |
bool | block_vertices_initialized () const |
True if the block vertices id space has been initialized. More... | |
pod_index_type | block_vertices_space_id () const |
The id space index of the block vertices id space. More... | |
void | initialize (const namespace_poset &xnamespace) |
Sets is_initialized() == true; dummy routine provided to satisfy factory template. More... | |
Public Member Functions inherited from sheaf::implicit_crg_interval | |
bool | is_jim (const scoped_index &xmbr_index) const |
True if and only if the member with index xmbr_index is join-irreducible. More... | |
pod_index_type | dof_tuple_id (const scoped_index &xmbr_index) const |
The dof tuple id of the member with index xmbr_index. More... | |
block< pod_index_type > & | dof_tuple_ids () |
The ids of the dof tuples associated with this interval. More... | |
const block< pod_index_type > & | dof_tuple_ids () const |
The ids of the dof tuples associated with this interval; const version. More... | |
bool | dof_tuple_ids_initialized () const |
True if dof tuple ids have been initialized. More... | |
void | initialize_dof_tuple_ids (const block< pod_index_type > &xdof_tuple_ids) |
Allocates and initializes dof_tuple_ids() with xdof_tuple_ids. More... | |
size_type | private_data_size () const |
The size of the private data. More... | |
void | get_private_data (block< pod_index_type > &xdata) const |
Initializes this using private data xdata. More... | |
void | put_private_data (const block< pod_index_type > &xdata) |
Initializes this using private data xdata. More... | |
bool | private_data_initialized () const |
True if private data has been initialized. More... | |
implicit_crg_interval () | |
Default Constructor; constructs an uninitialized interval. More... | |
virtual | ~implicit_crg_interval () |
Destructor. More... | |
pod_index_type | implicit_begin () const |
The beginning of the implicit member interval (begin(), end()), excludes interval member; synonym for begin() + 1. More... | |
void | implicit_begin (scoped_index &result) const |
The beginning of the implicit member interval (begin(), end()), excludes interval member; synonym for begin() + 1. More... | |
pod_index_type | interval_member () const |
The index of the interval member itself; synonym for begin(). More... | |
void | interval_member (scoped_index &result) const |
The index of the interval member itself; synonym for begin(). More... | |
bool | is_interval_member (pod_index_type xindex) const |
True if xindex is the interval member. More... | |
bool | is_interval_member (const scoped_index &xindex) const |
True if xindex is the interval member. More... | |
void | clean_cover (bool xlower, pod_index_type xmbr_index) |
Removes members of the cover that are no longer members of the crg. More... | |
void | initialize (const namespace_poset &xnamespace) |
Sets is_initialized() == true; dummy routine provided to satisfy factory template. More... | |
Public Member Functions inherited from sheaf::crg_interval | |
bool | cover_is_explicit (bool xlower, pod_index_type xmbr_index) const |
True if and only if the lower (xlower true) or upper (xlower false) cover with index xmbr_index is explicit. More... | |
pod_index_type | force_explicit_cover (bool xlower, pod_index_type xmbr_index, bool xinitialize=true) |
The explicit lower (xlower true) or upper (xlower false) cover id space of the member with index xmbr_index; creates an explict cover id space if the cover id space is not already explicit and, if xinitialize, initializes it with the contents of the implicit cover id space, if any. Returns the space id of the explicit cover. More... | |
const index_space_family & | id_spaces () const |
The id space family for this interval. More... | |
const hub_index_space_handle & | hub_id_space () const |
The hub id space of this interval. More... | |
void | initialize_id_spaces (index_space_family &xid_spaces) |
Set the index space family to xid_spaces. More... | |
bool | id_spaces_initialized () const |
True if the index space family has been initialized. More... | |
const primary_index_space_handle & | local_id_space () const |
The local id space of this interval. More... | |
void | initialize_local_id_space (const index_space_handle &xlocal_id_space) |
Sets the local id space to xlocal_id_space and initializes local ids. More... | |
bool | local_id_space_initialized () const |
True if local id space has been initialized. More... | |
pod_index_type | cover_id_space_id (bool xlower, pod_index_type xmbr_index) const |
The id for the lower (xlower true) or upper (xlower false) cover id space with index xmbr_index. More... | |
bool | covers_initialized (bool xlower) const |
True if and only if the lower (xlower true) or upper (xlower false) covers has been initialized for this interval. More... | |
void | initialize_covers () |
Initialize the upper and lower covers for this interval. More... | |
crg_interval () | |
Default Constructor; constructs an uninitialized interval. More... | |
virtual | ~crg_interval () |
Destructor. More... | |
pod_index_type | begin () const |
The beginning of the member interval; this emulates members in the interval [begin(), end()), includes interval member. More... | |
void | begin (scoped_index &result) const |
The beginning of the member interval; this emulates members in the interval [begin(), end()), includes interval member. More... | |
pod_index_type | end () const |
The end of the member interval. More... | |
void | end (scoped_index &result) const |
The end of the member interval. More... | |
size_type | size () const |
The number of members in the member interval. More... | |
bool | contains_member (pod_index_type xindex) const |
True if and only if the index xindex is contained in this interval. More... | |
bool | contains_member (const scoped_index &xindex) const |
True if and only if the index xindex is contained in this interval. More... | |
void | initialize (const namespace_poset &xnamespace) |
Sets is_initialized() == true; dummy routine provided to satisfy factory template. More... | |
Public Member Functions inherited from sheaf::any | |
bool | is_same_type (const any *other) const |
True if other is the same type as this. More... | |
virtual | ~any () |
Destructor. More... | |
bool | invariant_check () const |
True if invariant checking is enabled. More... | |
void | enable_invariant_check () const |
Enable invariant checking. More... | |
void | disable_invariant_check () const |
Disable invariant check. Intended for preventing recursive calls to invariant and for suppressing invariant checking during multi-phase initialization. More... | |
int | disable_invariance_check_request_depth () const |
Number of times disable_invariant_check has been called without matching call to enable_invariant_check. More... | |
Static Public Member Functions inherited from sheaf::crg_interval | |
static std::string | local_id_space_name (pod_index_type xindex) |
The reserved name for the local id space of the ramge member with index xindex. More... | |
static factory< crg_interval > & | interval_factory () |
A factory for making descendants of this class. More... | |
static crg_interval * | new_interval (const std::string &xname) |
Creates a default constructed instance of the the class with name xname. More... | |
Protected Types inherited from fiber_bundle::homogeneous_block_crg_interval | |
enum | member_class_type { BLOCK, ZONE, VERTEX, MEMBER_CLASS_END } |
Memeber class identifiers. More... | |
Protected Types inherited from sheaf::crg_interval | |
typedef unordered::unordered_map< pod_index_type, pod_index_type > | explicit_cover_map_type |
The type of the explicit cover maps.. More... | |
Protected Member Functions inherited from fiber_bundle::homogeneous_block_crg_interval | |
member_class_type | member_class (pod_index_type xmbr_index) const |
The member class of the member with index xmbr_index. More... | |
Protected Member Functions inherited from fiber_bundle::base_space_crg_interval | |
std::string | block_vertices_name () const |
The name of the block vertices id space. More... | |
Protected Member Functions inherited from sheaf::implicit_crg_interval | |
Protected Member Functions inherited from sheaf::crg_interval | |
explicit_cover_map_type & | explicit_cover_map (bool xlower) |
The lower (xlower true) or upper (xlower false) map to explicit cover id spaces. More... | |
const explicit_cover_map_type & | explicit_cover_map (bool xlower) const |
The lower (xlower true) or upper (xlower false) map to explicit cover id spaces; const version. More... | |
Protected Member Functions inherited from sheaf::any | |
any () | |
default constructor More... | |
Static Protected Member Functions inherited from sheaf::implicit_crg_interval | |
static std::string | implicit_cover_name (bool xlower, const scoped_index &xmbr_index) |
Creates a name for the implicit cover id space for member with index, xmbr_index. More... | |
static std::string | implicit_cover_name (bool xlower, pod_index_type xmbr_index) |
Creates a name for the implicit cover id space for member with index, xmbr_index. More... | |
Static Protected Member Functions inherited from sheaf::crg_interval | |
static std::string | explicit_cover_name (bool xlower, const scoped_index &xmbr_index) |
Creates a name for the explicit cover id space for member with index, xmbr_index. More... | |
static std::string | explicit_cover_name (bool xlower, pod_index_type xmbr_index) |
Creates a name for the explicit cover id space for member with index, xmbr_index. More... | |
Protected Attributes inherited from fiber_bundle::homogeneous_block_crg_interval | |
bool | _zones_initialized |
True if the zone id space has been initialized. More... | |
pod_index_type | _zones_space_id |
The index of the zone id space. More... | |
bool | _vertices_initialized |
True if the vertex id space has been initialized. More... | |
pod_index_type | _vertices_space_id |
The index of the vertex id space. More... | |
pod_index_type | _connectivity_begin |
The beginning offset of the connectivity id spaces in the id space family. More... | |
pod_index_type | _adjacency_begin |
The beginning offset of the adjacency id spaces in the id space family. More... | |
Protected Attributes inherited from fiber_bundle::base_space_crg_interval | |
bool | _block_vertices_initialized |
True if the block vertices id space has been initialized. More... | |
pod_index_type | _block_vertices_space_id |
The id space index of the block vertices id space. More... | |
Protected Attributes inherited from sheaf::implicit_crg_interval | |
block< pod_index_type > | _dof_tuple_ids |
The ids of the dof tuples associated with this interval. More... | |
bool | _dof_tuple_ids_initialized |
True if dof tuple ids have been initialized. More... | |
bool | _private_data_initialized |
True if private data has been initialized. More... | |
bool | _is_finalized |
True if the initialization of this crg interval has been finalized. More... | |
Protected Attributes inherited from sheaf::crg_interval | |
explicit_cover_map_type | _explicit_upper_cover_map |
The map from ids to explicit upper cover id spaces. More... | |
explicit_cover_map_type | _explicit_lower_cover_map |
The map from ids to explicit lower cover id spaces. More... | |
index_space_family * | _id_spaces |
The id space family of this interval. More... | |
bool | _id_spaces_initialized |
True if the id space family has been initialized. More... | |
primary_index_space_handle | _local_id_space |
The id space of this interval. More... | |
bool | _local_id_space_initialized |
True if local id space has been initialized. More... | |
pod_index_type | _lower_covers_begin |
The offset into the id space family for the interval of lower covers. More... | |
bool | _lower_covers_initialized |
True if and only if the lower cover is initialized. More... | |
pod_index_type | _upper_covers_begin |
The offset into the id space family for the interval of upper covers. More... | |
bool | _upper_covers_initialized |
True if and only if the upper cover is initialized. More... | |
Emulator for a interval of implicit base space members representing an unstructured block, that is, a homogeneous collection of zones of a given type with nodal connectivity.
Definition at line 66 of file zone_nodes_block_crg_interval.h.
fiber_bundle::zone_nodes_block_crg_interval::zone_nodes_block_crg_interval | ( | ) |
Default Constructor.
Definition at line 65 of file zone_nodes_block_crg_interval.cc.
References sheaf::invalid_pod_index(), and ~zone_nodes_block_crg_interval().
|
virtual |
Destructor.
Definition at line 92 of file zone_nodes_block_crg_interval.cc.
References fiber_bundle::block_relation::element_type(), sheaf::is_valid(), and vertex_client_id_space_initialized().
Referenced by zone_nodes_block_crg_interval().
|
virtual |
The name of this class; provided to satisfy factory template.
Reimplemented from fiber_bundle::homogeneous_block_crg_interval.
Definition at line 985 of file zone_nodes_block_crg_interval.cc.
References is_initialized().
Referenced by finalize().
|
virtual |
Virtual constructor, makes a new instance of the same type as this.
Reimplemented from fiber_bundle::homogeneous_block_crg_interval.
Definition at line 1056 of file zone_nodes_block_crg_interval.cc.
References invariant().
Referenced by is_ancestor_of().
|
virtual |
The id space index for the cells of dimension xd. Returns invalid_pod_index() if there is no id space for dimension xd.
Implements fiber_bundle::base_space_crg_interval.
Definition at line 448 of file zone_nodes_block_crg_interval.cc.
References initialize_block_vertices(), and sheaf::invalid_pod_index().
Referenced by db().
|
virtual |
The dimension of the member with id xmbr_id. Does not require access to dof tuple.
Implements fiber_bundle::base_space_crg_interval.
Definition at line 427 of file zone_nodes_block_crg_interval.cc.
References d_cells_space_id().
Referenced by initialize_vertices().
|
virtual |
Finialize the initialization of this crg interval in the host xhost.
Reimplemented from sheaf::implicit_crg_interval.
Definition at line 924 of file zone_nodes_block_crg_interval.cc.
References sheaf::poset_state_handle::append_upper_cover_of_bottom(), class_name(), and sheaf::read_write_monitor_handle::state_is_read_accessible().
Referenced by put_implicit_private_data().
|
static |
The dof tuple ids for an instance created with parameter xi_size.
Definition at line 693 of file zone_nodes_block_crg_interval.cc.
References fiber_bundle::block_connectivity::element_ct(), get_private_data(), sheaf::auto_block< T, S >::reserve(), and sheaf::auto_block< T, S >::set_ct().
Referenced by initialize_upper_covers(), and fiber_bundle::zone_nodes_block::new_state().
|
protectedvirtual |
Initializes this using private data xdata.
Implements sheaf::implicit_crg_interval.
Definition at line 788 of file zone_nodes_block_crg_interval.cc.
References sheaf::auto_block< T, S >::ct(), sheaf::explicit_index_space_handle::get_id_space(), sheaf::explicit_index_space_handle::pod(), put_implicit_private_data(), and sheaf::auto_block< T, S >::set_ct().
Referenced by implicit_private_data_size().
|
static |
The private data for an instance with connectivity xconn.
Definition at line 734 of file zone_nodes_block_crg_interval.cc.
References fiber_bundle::block_connectivity::element_ct(), implicit_private_data_size(), fiber_bundle::block_connectivity::node_id_ct(), fiber_bundle::block_connectivity::node_ids(), fiber_bundle::block_connectivity::nodes_per_element(), sheaf::auto_block< T, S >::reserve(), and sheaf::auto_block< T, S >::set_ct().
Referenced by get_dof_tuple_ids(), and fiber_bundle::zone_nodes_block::new_state().
|
static |
The size of the interval for block connectivity xconn.
Definition at line 529 of file zone_nodes_block_crg_interval.cc.
References fiber_bundle::block_connectivity::element_ct(), initialize_lower_covers(), and fiber_bundle::block_connectivity::node_ct().
Referenced by initialize_block_vertices(), and fiber_bundle::zone_nodes_block::new_state().
|
protectedvirtual |
The size of the private data.
Implements sheaf::implicit_crg_interval.
Definition at line 781 of file zone_nodes_block_crg_interval.cc.
References get_implicit_private_data().
Referenced by get_private_data().
|
protected |
Initialize the block vertices id space.
Definition at line 491 of file zone_nodes_block_crg_interval.cc.
References get_size().
Referenced by d_cells_space_id().
|
protectedvirtual |
Initialize the lower covers for this interval.
Implements sheaf::crg_interval.
Definition at line 563 of file zone_nodes_block_crg_interval.cc.
References initialize_upper_covers(), and sheaf::LOWER.
Referenced by get_size().
|
protectedvirtual |
Initialize the upper cover for this interval.
Implements sheaf::crg_interval.
Definition at line 625 of file zone_nodes_block_crg_interval.cc.
References get_dof_tuple_ids(), and sheaf::UPPER.
Referenced by initialize_lower_covers().
|
protected |
Initializes the vertex client id space.
Definition at line 269 of file zone_nodes_block_crg_interval.cc.
References fiber_bundle::block_adjacency::begin(), fiber_bundle::block_adjacency::end(), sheaf::explicit_index_space_handle::index(), initialize_zones(), sheaf::scattered_insertion_index_space_handle::insert(), fiber_bundle::block_adjacency::node_ct(), and fiber_bundle::block_adjacency::zone_ct().
Referenced by vertex_client_id_space_name().
|
protected |
Initialize the vertex id space.
Definition at line 385 of file zone_nodes_block_crg_interval.cc.
References fiber_bundle::base_space_poset::d_cells(), and db().
Referenced by initialize_zones().
|
protected |
Initialize the zones id space.
Definition at line 340 of file zone_nodes_block_crg_interval.cc.
References fiber_bundle::base_space_poset::d_cells(), and initialize_vertices().
Referenced by initialize_vertex_client_id_space().
|
virtual |
Class invariant.
Reimplemented from fiber_bundle::homogeneous_block_crg_interval.
Definition at line 1076 of file zone_nodes_block_crg_interval.cc.
References sheaf::is_valid().
Referenced by clone().
|
virtual |
Conformance test; true if other conforms to this.
Reimplemented from fiber_bundle::homogeneous_block_crg_interval.
Definition at line 1036 of file zone_nodes_block_crg_interval.cc.
References clone().
Referenced by is_initialized().
|
virtual |
True if fully initialized.
Reimplemented from fiber_bundle::homogeneous_block_crg_interval.
Definition at line 993 of file zone_nodes_block_crg_interval.cc.
References is_ancestor_of().
Referenced by class_name().
|
protectedvirtual |
Initializes this using private data xdata.
Implements sheaf::implicit_crg_interval.
Definition at line 825 of file zone_nodes_block_crg_interval.cc.
References fiber_bundle::block_adjacency::begin(), fiber_bundle::block_adjacency::end(), finalize(), sheaf::explicit_index_space_handle::get_id_space(), sheaf::index_space_handle::hub_pod(), fiber_bundle::block_adjacency::node_ct(), and sheaf::gathered_insertion_index_space_handle::reserve().
Referenced by get_implicit_private_data().
bool fiber_bundle::zone_nodes_block_crg_interval::vertex_client_id_space_initialized | ( | ) | const |
True if and only if the vertex client id space has been initialized.
Definition at line 208 of file zone_nodes_block_crg_interval.cc.
References vertex_client_space_id().
Referenced by fiber_bundle::base_space_poset::contains_vertex_client_id_space(), and ~zone_nodes_block_crg_interval().
|
protected |
The reserved name for the vertex client id space of this interval.
Definition at line 250 of file zone_nodes_block_crg_interval.cc.
References initialize_vertex_client_id_space().
Referenced by vertex_client_space_id().
sheaf::pod_index_type fiber_bundle::zone_nodes_block_crg_interval::vertex_client_space_id | ( | ) | const |
The index of the vertex client id space.
Definition at line 227 of file zone_nodes_block_crg_interval.cc.
References vertex_client_id_space_name().
Referenced by fiber_bundle::base_space_poset::get_vertex_client_id_space(), fiber_bundle::base_space_poset::get_vertex_client_id_space_iterator(), and vertex_client_id_space_initialized().
|
protected |
True, if and only if the client id space has been initialized.
Definition at line 176 of file zone_nodes_block_crg_interval.h.
|
protected |
The index of the vertex client id space.
Definition at line 171 of file zone_nodes_block_crg_interval.h.
|
protected |
The dimension of a zone.
Definition at line 261 of file zone_nodes_block_crg_interval.h.