13 #ifndef __PARALLEL_INTERACTION_STORAGE_H
14 #define __PARALLEL_INTERACTION_STORAGE_H
57 virtual bool isIn(
const vector<int>&)=0;
68 throw std::runtime_error(
"saveCheckPointData not implemented in subclass.");
73 throw std::runtime_error(
"loadCheckPointData not implemented in subclass.");
78 throw std::runtime_error(
" saveSnapShotData not implemented in subclass.");
116 bool isInner(
const Iterator &it);
151 #endif //__PARALLEL_INTERACTION_STORAGE_H
vector< pair< DataWithPosID, P > > forAllInnerInteractionsGetDataWithPosID(P(I::*rdf)() const)
virtual AFieldSlave * generateNewVectorFieldSlave(TML_Comm *, const string &, int, int, int, int)
Definition: pi_storage.hpp:316
virtual void calcForces()=0
AParallelParticleArray * m_ppa
Definition: pi_storage.h:47
InteractionIterator(Iterator begin, Iterator end, AParallelParticleArray *ppa)
Definition: pi_storage.hpp:29
InteractionIterator getInnerInteractionIterator()
types
Definition: pi_storage.hpp:76
I interaction_type
Definition: pi_storage.h:93
int getNumRemaining()
Definition: pi_storage.hpp:69
list< I > m_interactions
Definition: pi_storage.h:96
vector< pair< DataWithID, P > > forAllInnerInteractionsGetDataWithID(P(I::*rdf)() const)
vector< pair< Vec3, P > > forAllInnerInteractionsGetWithPos(P(I::*rdf)() const)
Definition: pi_storage.hpp:91
templated abstract base class for parallel interaction storage array. Adds the vector of interactions...
Definition: CheckedScalarInteractionFieldSlave.h:19
virtual void setTimeStepSize(double dt)=0
vector< pair< Vec3, P > > forAllTaggedInnerInteractionsGetWithPos(P(I::*rdf)() const, int, int)
Definition: pi_storage.hpp:231
list< I >::iterator Iterator
Definition: pi_storage.h:105
TParallelInteractionStorage(AParallelParticleArray *ppa)
Definition: pi_storage.h:99
Iterator m_it
Definition: pi_storage.h:120
int m_numRemaining
Definition: pi_storage.h:119
virtual void addExIG(AParallelInteractionStorage *)
Definition: pi_storage.h:62
virtual void calcHeatFrict()
Definition: pi_storage.h:59
void forAllTaggedInnerInteractionsGet(P &, typename P::value_type(I::*rdf)() const, int, int)
generate FieldSlave of correct type
Definition: pi_storage.hpp:258
virtual AFieldSlave * generateNewVectorFieldSlave(TML_Comm *, const string &, int, int, int, int)=0
I Interaction
Definition: pi_storage.h:104
Definition: pi_storage.h:102
esys::lsm::quintuple< int, int, Vec3, Vec3, Vec3 > DataWithPosID
access functions
Definition: pi_storage.h:130
bool isInner(const Iterator &it)
Definition: pi_storage.hpp:23
virtual ~AParallelInteractionStorage()
Definition: pi_storage.h:51
esys::lsm::triplet< int, int, Vec3 > DataWithID
Definition: pi_storage.h:129
AParallelInteractionStorage(AParallelParticleArray *ppa)
Definition: pi_storage.h:50
abstract base class for parallel interaction storage array
Definition: pi_storage.h:44
virtual void calcHeatTrans()
Definition: pi_storage.h:60
bool hasNext()
Definition: pi_storage.hpp:50
abstract base class for communicator
Definition: comm.h:46
vector< pair< Raw2Data, P > > forAllInnerInteractionsGetRaw2(P(I::*rdf)() const)
virtual void saveCheckPointData(std::ostream &)
Definition: pi_storage.h:66
virtual bool isIn(const vector< int > &)=0
virtual void loadCheckPointData(std::istream &)
Definition: pi_storage.h:71
Definition: quintuple.h:24
abstract base class for parallel particle storage array
Definition: pp_array.h:41
Definition: CheckPointable.h:26
virtual void saveSnapShotData(std::ostream &)
Definition: pi_storage.h:76
esys::lsm::quintuple< Vec3, double, Vec3, double, Vec3 > Raw2Data
Definition: pi_storage.h:128
Interaction & next()
Definition: pi_storage.hpp:57
Abstract base class for slave part of field.
Definition: FieldSlave.h:22
void forAllInnerInteractionsGet(P &, typename P::value_type(I::*rdf)() const)
access functions with tags
Definition: pi_storage.hpp:209
virtual AFieldSlave * generateNewScalarFieldSlave(TML_Comm *, const string &, int, int, int, int)=0
virtual AFieldSlave * generateNewScalarFieldSlave(TML_Comm *, const string &, int, int, int, int)
Definition: pi_storage.hpp:281
virtual bool willSave()
Definition: pi_storage.h:81
virtual ~TParallelInteractionStorage()
Definition: pi_storage.h:100
AParallelParticleArray * m_ppa
Definition: pi_storage.h:122
Iterator m_end
Definition: pi_storage.h:121
virtual void exchange()=0