Utopia  2
Framework for studying models of complex & adaptive systems.
Classes | Namespaces | Enumerations
factory.hh File Reference
#include <algorithm>
#include <memory>
#include <unordered_map>
#include <vector>
#include <boost/graph/adjacency_list.hpp>
#include <boost/graph/adjacency_matrix.hpp>
#include <boost/graph/graph_traits.hpp>
#include <boost/graph/properties.hpp>
#include <boost/hana/ext/std/tuple.hpp>
#include <boost/hana/integral_constant.hpp>
#include <boost/hana/remove_at.hpp>
#include <boost/hana/transform.hpp>
#include "../../core/logging.hh"
#include "../../core/type_traits.hh"
#include "../cfg_utils.hh"
#include "data_manager.hh"
#include "defaults.hh"
#include "utils.hh"
Include dependency graph for factory.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Utopia::DataIO::DatasetDescriptor
 Descriptor for a dataset. Contains: path: string giving the path of the dataset in its group or file with_time_postfix: whether the current model time is appended to the dataset path dataset_capacity: vector giving capacity of the dataset per dimension dataset_chunksize: vector giving chunksize per dimension of the dataset dataset_compression: integer giving compression strength (0 to 10) More...
 
class  Utopia::DataIO::TaskFactory< Model, typetag >
 Functor for building a writetask from arguments. More...
 
class  Utopia::DataIO::DataManagerFactory< Model >
 Factory function which produces a Datamanager of type Default::DefaultDataManager<Model> from a config and argumets from which to construct writetasks. More...
 

Namespaces

 Utopia
 
 Utopia::DataIO
 

Enumerations

enum class  Utopia::DataIO::TypeTag {
  Utopia::DataIO::plain , Utopia::DataIO::vertex_property , Utopia::DataIO::edge_property , Utopia::DataIO::vertex_descriptor ,
  Utopia::DataIO::edge_descriptor
}
 TypeTag enumerates the kind of access which is used to write data. It became necessary after integrating graphs. Has 5 values: plain : use for everything that is not a graph vertex_property : for writing graphs using boost::vertex_property edge_property : for writing graphs using boost::edge_property vertex_descriptor : for writing graphs using boost::vertex_descriptor edge_descriptor : for writing graphs using boost::edge_descriptor. More...