group_particles
Loading...
Searching...
No Matches
group_particles.hpp
Go to the documentation of this file.
1
7#ifndef HALO_PARTICLES_HPP
8#define HALO_PARTICLES_HPP
9
10#include "fields.hpp"
11#include "common_fields.hpp"
12#include "callback.hpp"
13#include "callback_utils.hpp"
14#include "hdf5_utils.hpp"
15#include "workspace.hpp"
16#include "workspace_memory.hpp"
17#include "workspace_sorting.hpp"
18#include "workspace_meta_init.hpp"
19#include "grp_loop.hpp"
20#include "prt_loop.hpp"
21
130template<typename AFields>
131void
133{
134 #ifndef NDEBUG
135 AFields::print_field_info();
136 #endif // NDEBUG
137
138 grp_prt_detail::Workspace<AFields> ws { callback };
139
140 ws.meta_init();
141
142 ws.grp_loop();
143
144 ws.prt_loop();
145}
146
147#endif // HALO_PARTICLES_HPP
Contains the abstract base class that the user should subclass from in order to define the desired fu...
Collects some pre-implemented functionality that makes it easier to construct a subclass of the Callb...
Contains some common field types that can be used as template arguments for the GrpFields and PrtFiel...
Templates to construct types that tell the code which data fields are to to be read from the group an...
void group_particles(Callback< AFields > &callback)
Runs the code.
Definition group_particles.hpp:132
some utility functions to read attributes from hdf5 files
The abstract base class the user should inherit from.
Definition callback.hpp:32