1#ifndef UTOPIA_DATAIO_DATA_MANAGER_WRITE_TASK_HH
2#define UTOPIA_DATAIO_DATA_MANAGER_WRITE_TASK_HH
5#include "../../core/metaprogramming.hh"
6#include "../../core/type_traits.hh"
9#include "../hdfdataset.hh"
10#include "../hdfgroup.hh"
48template <
class BGB,
class DW,
class DB,
class AWG,
class AWD >
150 other.write_attribute_active_dataset);
238template <
class BGB,
class DW,
class DB,
class AWG,
class AWD >
257 ->
WriteTask< std::decay_t< Basegroupbuilder >,
258 std::decay_t< Writertype >,
259 std::decay_t< Buildertype >,
260 std::decay_t< AWritertypeG >,
261 std::decay_t< AWritertypeD > >;
void swap(WriteTask< BGB, DW, DB, AWG, AWD > &lhs, WriteTask< BGB, DW, DB, AWG, AWD > &rhs)
Swaps the state of lhs and rhs.
Definition write_task.hh:240
Container select_entities(const Manager &mngr, const DataIO::Config &sel_cfg)
Select entities according to parameters specified in a configuration.
Definition select.hh:213
Encapsulate a task for writing data to a destination. Containes a callable 'writer' responisible for ...
Definition write_task.hh:50
WriteTask(const WriteTask &other)=default
Writer write_data
Callable to write data.
Definition write_task.hh:75
WriteTask & operator=(WriteTask &&other)=default
Move assign from 'other'.
WriteTask & operator=(const WriteTask &other)=default
Copy assign caller from 'other'.
WriteTask()=default
Construct a new writer Task object.
std::shared_ptr< HDFDataset > active_dataset
pointer to the dataset which is currently active
Definition write_task.hh:70
std::string get_base_path()
Get the path to the base group object.
Definition write_task.hh:117
AWD AttributeWriterDataset
Definition write_task.hh:55
BasegroupBuilder build_basegroup
Function building a base group.
Definition write_task.hh:60
WriteTask(WriteTask &&other)=default
Construct a new writer Task object.
AWG AttributeWriterGroup
Definition write_task.hh:54
WriteTask(Basegroupbuilder &&bgb, Writertype &&w, Buildertype &&b, AWritertypeG &&ag, AWritertypeD &&ad)
Construct a new Write Task object.
Definition write_task.hh:174
Builder build_dataset
Callable to build new dataset.
Definition write_task.hh:80
std::string get_active_path()
Get the path of active dataset relative to the base_group.
Definition write_task.hh:99
void swap(WriteTask &other)
Swap the state of the caller with 'other'.
Definition write_task.hh:135
BGB BasegroupBuilder
Definition write_task.hh:51
std::shared_ptr< HDFGroup > base_group
pointer to the hdfgroup in which all produced datasets live.
Definition write_task.hh:65
AttributeWriterDataset write_attribute_active_dataset
Callable to write attributes to dataset; invoked after task write.
Definition write_task.hh:85
~WriteTask()=default
Destroy the writer Task object.
DB Builder
Definition write_task.hh:53
DW Writer
Definition write_task.hh:52
AttributeWriterGroup write_attribute_basegroup
Callabel to write attributes to base group, invoked after task build.
Definition write_task.hh:91