ESyS-Particle  4.0.1
ABCDampingIGP.h
00001 
00002 //                                                         //
00003 // Copyright (c) 2003-2011 by The University of Queensland //
00004 // Earth Systems Science Computational Centre (ESSCC)      //
00005 // http://www.uq.edu.au/esscc                              //
00006 //                                                         //
00007 // Primary Business: Brisbane, Queensland, Australia       //
00008 // Licensed under the Open Software License version 3.0    //
00009 // http://www.opensource.org/licenses/osl-3.0.php          //
00010 //                                                         //
00012 
00013 #ifndef __ABCDAMPING_IGP_H
00014 #define __ABCDAMPING_IGP_H
00015 
00016 // -- project includes --
00017 #include "Model/DampingIGP.h"
00018 #include "Foundation/vec3.h"
00019 
00023 class ABCDampingIGP : public CDampingIGP 
00024 {
00025  protected:
00026   Vec3 m_pos,m_normal;
00027   double m_c1;
00028 
00029  public:
00030   ABCDampingIGP(){};
00031   ABCDampingIGP(const string&,const string&,double,double,int,const Vec3&,const Vec3&,const Vec3&,double);
00032 
00033   virtual void  packInto(CVarMPIBuffer*) const;
00034 
00035   void setPos(const Vec3& p){m_pos=p;};
00036   Vec3 getPos(){return m_pos;};
00037   void setNormal(const Vec3& n){m_normal=n;};
00038   Vec3 getNormal(){return m_normal;};
00039   void setC1(double d){m_c1=d;};
00040   double getC1(){return m_c1;};
00041 };
00042 
00043 ABCDampingIGP* extractABCDampingIGP(AMPIBuffer*);
00044 
00045 #endif // __ABCDAMPING_IGP_H