@@ -50,7 +50,9 @@ namespace picongpu
5050 /* * Tmp (at the moment: scalar) field for analysers and tmp data like
5151 * "gridded" particle data (charge density, energy density, ...)
5252 */
53- class FieldTmp : public SimulationFieldHelper <MappingDesc>, public ISimulationData
53+ class FieldTmp :
54+ public SimulationFieldHelper<MappingDesc>,
55+ public ISimulationData
5456 {
5557 public:
5658 typedef float1_X ValueType;
@@ -64,13 +66,16 @@ namespace picongpu
6466 return this ->cellDescription ;
6567 }
6668
67- FieldTmp ( MappingDesc cellDescription );
69+ FieldTmp (
70+ MappingDesc cellDescription,
71+ uint32_t slotId
72+ );
6873
6974 virtual ~FieldTmp ( );
7075
7176 virtual void reset ( uint32_t currentStep );
7277
73- template <class FrameSolver >
78+ template < class FrameSolver >
7479 HDINLINE static UnitValueType getUnit ();
7580
7681 /* * powers of the 7 base measures
@@ -84,7 +89,7 @@ namespace picongpu
8489
8590 static std::string getName ();
8691
87- static uint32_t getCommTag ();
92+ uint32_t getCommTag ();
8893
8994 virtual EventTask asyncCommunication ( EventTask serialEvent );
9095
@@ -101,6 +106,8 @@ namespace picongpu
101106 template <uint32_t AREA, class FrameSolver , class ParticlesClass >
102107 void computeValue (ParticlesClass& parClass, uint32_t currentStep);
103108
109+ static SimulationDataId getUniqueId ( uint32_t slotId );
110+
104111 SimulationDataId getUniqueId ();
105112
106113 void synchronize ( );
@@ -117,8 +124,12 @@ namespace picongpu
117124 void insertField ( uint32_t exchangeType );
118125
119126 private:
127+
120128 GridBuffer<ValueType, simDim> *fieldTmp;
121129
130+ uint32_t m_slotId;
131+
132+ uint32_t m_commTag;
122133 };
123134
124135
0 commit comments