#include <outputinterface.h>
Abstraction of generic output.
Any output should inherit this class. It provides virtual methods that will be called at predefined moments: 1) At event start and event end: at_eventstart, at_eventend 2) After every fixed time period: at_intermediate_time, thermodynamics_output 3) At each interaction: at_interaction
Definition at line 88 of file outputinterface.h.
Public Member Functions | |
OutputInterface (std::string name) | |
Construct output interface. More... | |
virtual | ~OutputInterface ()=0 |
Pure virtual destructor to make class abstract and prevent its instantiation. More... | |
virtual void | at_eventstart (const Particles &, const int, const EventInfo &) |
Output launched at event start after initialization, when particles are generated but not yet propagated. More... | |
virtual void | at_eventstart (const std::vector< Particles > &, int) |
Output launched at event start after initialization, when particles are generated but not yet propagated. More... | |
virtual void | at_eventstart (const int, const ThermodynamicQuantity, const DensityType, RectangularLattice< DensityOnLattice >) |
Output launched at event start after initialization, when particles are generated but not yet propagated. More... | |
virtual void | at_eventstart (const int, const ThermodynamicQuantity, const DensityType, RectangularLattice< EnergyMomentumTensor >) |
Output launched at event start after initialization, when particles are generated but not yet propagated. More... | |
virtual void | at_eventend (const int, const ThermodynamicQuantity, const DensityType) |
Output launched at event end. More... | |
virtual void | at_eventend (const ThermodynamicQuantity) |
Output launched at event end. More... | |
virtual void | at_eventend (const Particles &, const int, const EventInfo &) |
Output launched at event end. More... | |
virtual void | at_eventend (const std::vector< Particles > &, const int) |
Output launched at event end. More... | |
virtual void | at_interaction (const Action &, const double) |
Called whenever an action modified one or more particles. More... | |
virtual void | at_intermediate_time (const Particles &, const std::unique_ptr< Clock > &, const DensityParameters &, const EventInfo &) |
Output launched after every N'th time-step. More... | |
virtual void | at_intermediate_time (const std::vector< Particles > &, const std::unique_ptr< Clock > &, const DensityParameters &) |
Output launched after every N'th timestep. More... | |
virtual void | thermodynamics_output (const ThermodynamicQuantity, const DensityType, RectangularLattice< DensityOnLattice > &) |
Output to write thermodynamics from the lattice. More... | |
virtual void | thermodynamics_output (const ThermodynamicQuantity, const DensityType, RectangularLattice< EnergyMomentumTensor > &) |
Output to write energy-momentum tensor and related quantities from the lattice. More... | |
virtual void | thermodynamics_lattice_output (RectangularLattice< DensityOnLattice > &, const double) |
Output to write thermodynamics from the lattice. More... | |
virtual void | thermodynamics_lattice_output (RectangularLattice< DensityOnLattice > &, const double, const std::vector< Particles > &, const DensityParameters &) |
Output to write thermodynamics from the lattice. More... | |
virtual void | thermodynamics_lattice_output (const ThermodynamicQuantity, RectangularLattice< EnergyMomentumTensor > &, const double) |
Output to write energy-momentum tensor and related quantities from the lattice. More... | |
virtual void | thermodynamics_output (const GrandCanThermalizer &) |
Output to write energy-momentum tensor and related quantities from the thermalizer class. More... | |
virtual void | fields_output (const std::string, const std::string, RectangularLattice< std::pair< ThreeVector, ThreeVector >> &) |
Write fields in vtk output Fields are a pair of threevectors for example electric and magnetic field. More... | |
bool | is_dilepton_output () const |
Get, whether this is the dilepton output? More... | |
bool | is_photon_output () const |
Get, whether this is the photon output? More... | |
bool | is_IC_output () const |
Get, whether this is the IC output? More... | |
const char * | to_string (const ThermodynamicQuantity tq) |
Convert thermodynamic quantities to strings. More... | |
const char * | to_string (const DensityType dens_type) |
Convert density types to strings. More... | |
Protected Attributes | |
const bool | is_dilepton_output_ |
Is this the dilepton output? More... | |
const bool | is_photon_output_ |
Is this the photon output? More... | |
const bool | is_IC_output_ |
Is this the IC output? More... | |
|
inlineexplicit |
Construct output interface.
[in] | name | (File)name of output. |
Definition at line 94 of file outputinterface.h.
|
inlinepure virtualdefault |
Pure virtual destructor to make class abstract and prevent its instantiation.
It needs a definition which is done outside the class.
|
inlinevirtual |
Output launched at event start after initialization, when particles are generated but not yet propagated.
Reimplemented in smash::VtkOutput, smash::RootOutput, smash::OscarOutput< Format, Contents >, smash::HepMcInterface, smash::BinaryOutputParticles, smash::BinaryOutputCollisions, smash::BinaryOutputInitialConditions, and smash::ICOutput.
Definition at line 108 of file outputinterface.h.
|
inlinevirtual |
Output launched at event start after initialization, when particles are generated but not yet propagated.
Reimplemented in smash::ThermodynamicOutput.
Definition at line 114 of file outputinterface.h.
|
inlinevirtual |
Output launched at event start after initialization, when particles are generated but not yet propagated.
Reimplemented in smash::ThermodynamicLatticeOutput.
Definition at line 120 of file outputinterface.h.
|
inlinevirtual |
Output launched at event start after initialization, when particles are generated but not yet propagated.
Reimplemented in smash::ThermodynamicLatticeOutput.
Definition at line 128 of file outputinterface.h.
|
inlinevirtual |
Output launched at event end.
Event end is determined by maximal time-step option.
Definition at line 136 of file outputinterface.h.
|
inlinevirtual |
Output launched at event end.
Event end is determined by maximal time-step option.
Reimplemented in smash::ThermodynamicLatticeOutput.
Definition at line 143 of file outputinterface.h.
|
inlinevirtual |
Output launched at event end.
Event end is determined by maximal time-step option.
Reimplemented in smash::VtkOutput, smash::RootOutput, smash::ICOutput, smash::BinaryOutputInitialConditions, smash::BinaryOutputParticles, and smash::OscarOutput< Format, Contents >.
Definition at line 149 of file outputinterface.h.
|
inlinevirtual |
Output launched at event end.
Event end is determined by maximal time-step option.
Reimplemented in smash::ThermodynamicOutput.
Definition at line 154 of file outputinterface.h.
|
inlinevirtual |
Called whenever an action modified one or more particles.
Reimplemented in smash::ICOutput, smash::BinaryOutputInitialConditions, smash::RootOutput, smash::OscarOutput< Format, Contents >, smash::HepMcInterface, and smash::BinaryOutputCollisions.
Definition at line 159 of file outputinterface.h.
|
inlinevirtual |
Output launched after every N'th time-step.
N is controlled by an option.
Reimplemented in smash::VtkOutput, smash::RootOutput, smash::OscarOutput< Format, Contents >, smash::BinaryOutputParticles, and smash::ICOutput.
Definition at line 164 of file outputinterface.h.
|
inlinevirtual |
Output launched after every N'th timestep.
N is controlled by an option.
Reimplemented in smash::ThermodynamicOutput.
Definition at line 171 of file outputinterface.h.
|
inlinevirtual |
Output to write thermodynamics from the lattice.
Used for vtk output.
Reimplemented in smash::VtkOutput.
Definition at line 179 of file outputinterface.h.
|
inlinevirtual |
Output to write energy-momentum tensor and related quantities from the lattice.
Used for vtk output.
Reimplemented in smash::VtkOutput.
Definition at line 187 of file outputinterface.h.
|
inlinevirtual |
Output to write thermodynamics from the lattice.
Used for thermodynamic lattice output.
Reimplemented in smash::ThermodynamicLatticeOutput.
Definition at line 195 of file outputinterface.h.
|
inlinevirtual |
Output to write thermodynamics from the lattice.
Used for thermodynamic lattice output.
Reimplemented in smash::ThermodynamicLatticeOutput.
Definition at line 202 of file outputinterface.h.
|
inlinevirtual |
Output to write energy-momentum tensor and related quantities from the lattice.
Used for thermodynamic lattice output.
Reimplemented in smash::ThermodynamicLatticeOutput.
Definition at line 210 of file outputinterface.h.
|
inlinevirtual |
Output to write energy-momentum tensor and related quantities from the thermalizer class.
Only used for vtk output. Not connected to ThermodynamicOutput.
Reimplemented in smash::VtkOutput.
Definition at line 219 of file outputinterface.h.
|
inlinevirtual |
Write fields in vtk output Fields are a pair of threevectors for example electric and magnetic field.
Reimplemented in smash::VtkOutput.
Definition at line 225 of file outputinterface.h.
|
inline |
|
inline |
|
inline |
|
inline |
Convert thermodynamic quantities to strings.
[in] | tq | Enum value of the thermodynamic quantity. |
Definition at line 243 of file outputinterface.h.
|
inline |
Convert density types to strings.
[in] | dens_type | enum value of the density type |
Definition at line 264 of file outputinterface.h.
|
protected |
Is this the dilepton output?
Definition at line 288 of file outputinterface.h.
|
protected |
Is this the photon output?
Definition at line 291 of file outputinterface.h.
|
protected |
Is this the IC output?
Definition at line 294 of file outputinterface.h.