ESyS-Particle  2.3.2
BondedInteractionCpData.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 __BONDEDINTERACTIONCPDATA_H
14 #define __BONDEDINTERACTIONCPDATA_H
15 
17 
18 class CBondedInteraction;
21 
26 {
27 public:
28  typedef int ParticleId;
29  typedef int InteractionTag;
30 
32 
34  {
35  }
36 
37  BondedInteractionCpData(const CBondedInteraction &bondedInteraction);
38 
39  BondedInteractionCpData(const CRotBondedInteraction &bondedInteraction);
40 
41  BondedInteractionCpData(const CRotThermBondedInteraction &bondedInteraction);
42 
44  ParticleId particle1Id,
45  ParticleId particle2Id,
46  InteractionTag interactionTag
47  );
48 
49  void set(const CBondedInteraction &bondedInteraction);
50 
51  void set(ParticleId particle1Id, ParticleId particle2Id, InteractionTag interactionTag);
52 
53  ParticleId getP1Id() const;
54 
55  ParticleId getP2Id() const;
56 
57  InteractionTag getTag() const;
58 
59  virtual void saveCheckPointData(std::ostream &oStream);
60 
61  virtual void loadCheckPointData(std::istream &iStream);
62 
63 private:
67 };
68 
69 #endif //__BONDEDINTERACTIONCPDATA_H