ESyS-Particle  2.3.2
ScalarParticleFieldSlave.h
Go to the documentation of this file.
1 
2 // //
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 __SCALAR_PARTICLE_FIELD_SLAVE_H
14 #define __SCALAR_PARTICLE_FIELD_SLAVE_H
15 
16 // -- project includes --
17 #include "FieldSlave.h"
18 
19 template <class T> class ParallelParticleArray;
20 class TML_Comm;
21 
30 template <typename T>
32 {
33  private:
34  virtual void SendDataFull();
35  virtual void SendDataSum();
36  virtual void SendDataMax();
37 
38  protected:
39  typename T::ScalarFieldFunction m_rdf;
41 
42  public:
43  ScalarParticleFieldSlave(TML_Comm*,ParallelParticleArray<T>*,typename T::ScalarFieldFunction);
44 
45  virtual void sendData();
46 };
47 
49 
50 #endif //__SCALAR_PARTICLE_FIELD_SLAVE_H