Utopia 2
Framework for studying models of complex & adaptive systems.
|
High-level interface for data writing. More...
Modules | |
Defaults | |
Provides default implementations for the datamanager's requirements. | |
Utilities | |
Provides a number of helper functions for the datamanager class. | |
Factories | |
Provides a Functor for producing writetasks and a function for producing a datamanager using that functor. Exists for simplifying creation of default datamanagers for model builders. | |
WriteTask | |
Provides a class which encapsulates the process of acquiring resources to write data to, writing data to that resource, and handling meta information. | |
Classes | |
struct | Utopia::DataIO::DataManagerTraits< TaskType, DeciderType, TriggerType, ExecutionProcessType > |
Type traits for the DataManager This allows to specify custom types for the DataManager. Usually, you only need to touch this if you do not want to use the defaults or if you want to need to explicitly specify a common base class because it cannot be deduced automatically. More... | |
class | Utopia::DataIO::DataManager< Traits > |
Manage different tasks of writing out data from a source in a uniform yet flexible way. This is a class which, when being supplied with appropriate callables, manages their execution. More... | |
High-level interface for data writing.
The data management high-level interface has as its central piece the ::DataManager class, which acts as a manager for abstract 'writetasks' which contain the relevant functionality.
The datamanager is implemented as a class which orchestrates so called write tasks, which consist of functionality for creating resources to write to, extracting data for writing and actual data writing, and for handling meta data. It is flanked by functions which decide when to write and when to change the associated resource. A datamanager is not bound to a specific data format or library, hence does not know anything about the actual process of writing out data. It merely organizes the writing process.