ESyS-Particle  2.3
ParticleFieldMaster.h
Go to the documentation of this file.
1 // //
3 // Copyright (c) 2003-2014 by The University of Queensland //
4 // Centre for Geoscience Computing //
5 // http://earth.uq.edu.au/centre-geoscience-computing //
6 // //
7 // Primary Business: Brisbane, Queensland, Australia //
8 // Licensed under the Open Software License version 3.0 //
9 // http://www.opensource.org/licenses/osl-3.0.php //
10 // //
12 
13 #ifndef __PARTICLEFIELDMASTER_H
14 #define __PARTICLEFIELDMASTER_H
15 
16 //--- project includes ---
17 #include "FieldMaster.h"
18 #include "vec3.h"
19 
20 //--- STL includes ---
21 #include <map>
22 
23 using std::map;
24 
25 class TML_Comm;
26 
36 {
37  protected:
38  map<int,double> m_save_map;
39  map<int,double> m_rad_map;
40  map<int,Vec3> m_pos_map;
41  virtual void writeAsDX();
42  virtual void writeAsPOV();
43  virtual void writeAsSILO();
44  virtual void writeAsSUM();
45  virtual void writeAsMAX();
46  virtual void writeAsRAW_SERIES();
47  virtual void writeAsRawWithPosID();
48 
49  void collectFull();
50  void collectSum();
51 
52  public:
53  ScalarParticleFieldMaster(TML_Comm*,const string&,const string&,const string&,int,int,int);
54  ScalarParticleFieldMaster(TML_Comm*,const string&,const string&,const string&,int,int,int,int,int);
56 
57  virtual void collect();
58  };
59 
69 {
70  protected:
71  map<int,Vec3> m_save_map;
72  map<int,Vec3> m_pos_map;
73  virtual void writeAsDX();
74  virtual void writeAsPOV();
75  virtual void writeAsSILO();
76  virtual void writeAsSUM();
77  virtual void writeAsMAX();
78  virtual void writeAsRAW_SERIES();
79  virtual void writeAsRAW2();
80  virtual void writeAsRawWithID();
81 
82  public:
83  VectorParticleFieldMaster(TML_Comm*,const string&,const string&,const string&,int,int,int);
84  VectorParticleFieldMaster(TML_Comm*,const string&,const string&,const string&,int,int,int,int,int);
86 
87  void collect();
88 };
89 
90 #endif //__PARTICLEFIELDMASTER_H
virtual void writeAsRAW_SERIES()
Definition: ParticleFieldMaster.cpp:342
ScalarParticleFieldMaster(TML_Comm *, const string &, const string &, const string &, int, int, int)
Definition: ParticleFieldMaster.cpp:47
map< int, double > m_save_map
Definition: ParticleFieldMaster.h:38
Class for master part of a vector field which is defined on all particles.
Definition: ParticleFieldMaster.h:68
Class for master part of a scalar field which is defined on all particles.
Definition: ParticleFieldMaster.h:35
virtual void writeAsMAX()
Definition: ParticleFieldMaster.cpp:317
virtual void writeAsRAW2()
Definition: ParticleFieldMaster.cpp:627
virtual void writeAsRawWithID()
Definition: ParticleFieldMaster.cpp:653
map< int, Vec3 > m_pos_map
Definition: ParticleFieldMaster.h:40
virtual ~VectorParticleFieldMaster()
Definition: ParticleFieldMaster.h:85
virtual void writeAsSILO()
Definition: ParticleFieldMaster.cpp:237
virtual void writeAsRAW_SERIES()
Definition: ParticleFieldMaster.cpp:607
virtual void writeAsSUM()
Definition: ParticleFieldMaster.cpp:293
virtual void writeAsPOV()
Definition: ParticleFieldMaster.cpp:192
Abstract base class for master part of field.
Definition: FieldMaster.h:39
void collectFull()
Definition: ParticleFieldMaster.cpp:97
VectorParticleFieldMaster(TML_Comm *, const string &, const string &, const string &, int, int, int)
Definition: ParticleFieldMaster.cpp:400
abstract base class for communicator
Definition: comm.h:46
virtual void writeAsMAX()
Definition: ParticleFieldMaster.cpp:585
virtual void writeAsRawWithPosID()
Definition: ParticleFieldMaster.cpp:363
void collectSum()
Definition: ParticleFieldMaster.cpp:134
void collect()
Definition: ParticleFieldMaster.cpp:433
map< int, double > m_rad_map
Definition: ParticleFieldMaster.h:39
virtual void writeAsSUM()
Definition: ParticleFieldMaster.cpp:561
virtual ~ScalarParticleFieldMaster()
Definition: ParticleFieldMaster.h:55
virtual void writeAsDX()
Definition: ParticleFieldMaster.cpp:158
virtual void writeAsSILO()
Definition: ParticleFieldMaster.cpp:505
virtual void collect()
Definition: ParticleFieldMaster.cpp:81
map< int, Vec3 > m_save_map
Definition: ParticleFieldMaster.h:71
virtual void writeAsDX()
Definition: ParticleFieldMaster.cpp:464
map< int, Vec3 > m_pos_map
Definition: ParticleFieldMaster.h:72
virtual void writeAsPOV()
Definition: ParticleFieldMaster.cpp:498