Go to the documentation of this file.
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.");
151 #endif //__PARALLEL_INTERACTION_STORAGE_H
InteractionIterator getInnerInteractionIterator()
types
TParallelInteractionStorage(AParallelParticleArray *ppa)
Definition: pi_storage.h:99
list< I > m_interactions
Definition: pi_storage.h:96
vector< pair< Vec3, P > > forAllTaggedInnerInteractionsGetWithPos(P(I::*rdf)() const, int, int)
virtual AFieldSlave * generateNewVectorFieldSlave(TML_Comm *, const string &, int, int, int, int)=0
virtual void saveSnapShotData(std::ostream &)
Definition: pi_storage.h:76
virtual void calcHeatTrans()
Definition: pi_storage.h:60
vector< pair< DataWithPosID, P > > forAllInnerInteractionsGetDataWithPosID(P(I::*rdf)() const)
virtual bool willSave()
Definition: pi_storage.h:81
Iterator m_it
Definition: pi_storage.h:120
vector< pair< Raw2Data, P > > forAllInnerInteractionsGetRaw2(P(I::*rdf)() const)
virtual void exchange()=0
int m_numRemaining
Definition: pi_storage.h:119
virtual ~AParallelInteractionStorage()
Definition: pi_storage.h:51
virtual AFieldSlave * generateNewVectorFieldSlave(TML_Comm *, const string &, int, int, int, int)
virtual void calcForces()=0
list< I >::iterator Iterator
Definition: pi_storage.h:105
void forAllTaggedInnerInteractionsGet(P &, typename P::value_type(I::*rdf)() const, int, int)
generate FieldSlave of correct type
esys::lsm::quintuple< int, int, Vec3, Vec3, Vec3 > DataWithPosID
access functions
Definition: pi_storage.h:130
abstract base class for parallel interaction storage array
Definition: pi_storage.h:44
void forAllInnerInteractionsGet(P &, typename P::value_type(I::*rdf)() const)
access functions with tags
I interaction_type
Definition: pi_storage.h:93
esys::lsm::triplet< int, int, Vec3 > DataWithID
Definition: pi_storage.h:129
Abstract base class for slave part of field.
Definition: FieldSlave.h:22
#define NULL
Definition: t_list.h:17
abstract base class for parallel particle storage array
Definition: pp_array.h:41
virtual AFieldSlave * generateNewScalarHistoryFieldSlave(TML_Comm *, const string &, int, int, int)
Definition: pi_storage.cpp:29
virtual void calcHeatFrict()
Definition: pi_storage.h:59
vector< pair< Vec3, P > > forAllInnerInteractionsGetWithPos(P(I::*rdf)() const)
esys::lsm::quintuple< Vec3, double, Vec3, double, Vec3 > Raw2Data
Definition: pi_storage.h:128
virtual void addExIG(AParallelInteractionStorage *)
Definition: pi_storage.h:62
bool isInner(const Iterator &it)
AParallelParticleArray * m_ppa
Definition: pi_storage.h:122
templated abstract base class for parallel interaction storage array. Adds the vector of interactions...
Definition: CheckedScalarInteractionFieldSlave.h:19
virtual bool isIn(const vector< int > &)=0
virtual AFieldSlave * generateNewScalarFieldSlave(TML_Comm *, const string &, int, int, int, int)=0
abstract base class for communicator
Definition: comm.h:46
virtual AFieldSlave * generateNewScalarFieldSlave(TML_Comm *, const string &, int, int, int, int)
vector< pair< DataWithID, P > > forAllInnerInteractionsGetDataWithID(P(I::*rdf)() const)
virtual void saveCheckPointData(std::ostream &)
Definition: pi_storage.h:66
virtual void setTimeStepSize(double dt)=0
I Interaction
Definition: pi_storage.h:104
Iterator m_end
Definition: pi_storage.h:121
virtual ~TParallelInteractionStorage()
Definition: pi_storage.h:100
InteractionIterator(Iterator begin, Iterator end, AParallelParticleArray *ppa)
Definition: pi_storage.h:102
AParallelParticleArray * m_ppa
Definition: pi_storage.h:47
Definition: CheckPointable.h:26
Definition: quintuple.h:24
virtual void loadCheckPointData(std::istream &)
Definition: pi_storage.h:71
AParallelInteractionStorage(AParallelParticleArray *ppa)
Definition: pi_storage.h:50