ESyS-Particle  4.0.1
ABCDampingIGP.h
1 
2 // //
3 // Copyright (c) 2003-2011 by The University of Queensland //
4 // Earth Systems Science Computational Centre (ESSCC) //
5 // http://www.uq.edu.au/esscc //
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 __ABCDAMPING_IGP_H
14 #define __ABCDAMPING_IGP_H
15 
16 // -- project includes --
17 #include "Model/DampingIGP.h"
18 #include "Foundation/vec3.h"
19 
23 class ABCDampingIGP : public CDampingIGP
24 {
25  protected:
26  Vec3 m_pos,m_normal;
27  double m_c1;
28 
29  public:
30  ABCDampingIGP(){};
31  ABCDampingIGP(const string&,const string&,double,double,int,const Vec3&,const Vec3&,const Vec3&,double);
32 
33  virtual void packInto(CVarMPIBuffer*) const;
34 
35  void setPos(const Vec3& p){m_pos=p;};
36  Vec3 getPos(){return m_pos;};
37  void setNormal(const Vec3& n){m_normal=n;};
38  Vec3 getNormal(){return m_normal;};
39  void setC1(double d){m_c1=d;};
40  double getC1(){return m_c1;};
41 };
42 
43 ABCDampingIGP* extractABCDampingIGP(AMPIBuffer*);
44 
45 #endif // __ABCDAMPING_IGP_H