Abstract base class for managers of CCE worldtube data that is provided in large time-series chunks, especially the type provided by input h5 files. BoundaryTags
is a tmpl::list
of tags on the worldtube boundary.
More...
template<typename BoundaryTags>
class Cce::WorldtubeDataManager< BoundaryTags >
Abstract base class for managers of CCE worldtube data that is provided in large time-series chunks, especially the type provided by input h5 files. BoundaryTags
is a tmpl::list
of tags on the worldtube boundary.
Details
The methods that are required to be overridden in the derived classes are:
WorldtubeDataManager::populate_hypersurface_boundary_data()
: updates the Variables passed by pointer to contain correct boundary data for the time value passed in. This function should update all of the tags in Tags::characteristic_worldtube_boundary_tags<Tags::BoundaryValue>
.
WorldtubeDataManager::get_clone()
: clone function to obtain a std::unique_ptr
of the base WorldtubeDataManager
, needed to pass around the factory-created object.
WorldtubeDataManager::get_l_max()
: The override should return the l_max
that it computes for the collocation data calculated during WorldtubeDataManager::populate_hypersurface_boundary_data()
.
WorldtubeBufferUpdater::get_time_span()
: The override should return the std::pair
of indices that represent the start and end point of the underlying data source. This is primarily used for monitoring the frequency and size of the buffer updates.