Program listing for file mechanics/src/collision/native/bodies/CircularDS.hpp

Program listing for file mechanics/src/collision/native/bodies/CircularDS.hpp#

 1#ifndef CircularDS_h
 2#define CircularDS_h
 3
 4#include "MechanicsFwd.hpp"
 5#include "LagrangianDS.hpp"
 6
 7class CircularDS : public LagrangianDS
 8{
 9protected:
10  ACCEPT_SERIALIZATION(CircularDS);
11
12  double radius;
13  double massValue;
14
15  CircularDS(): LagrangianDS() {};
16
17public:
18
19  CircularDS(double, double, SP::SiconosVector, SP::SiconosVector);
20
21  virtual ~CircularDS() {};
22
23  inline double getQ(unsigned int pos)
24  {
25    assert(pos < _ndof);
26    return (*_q[0])(pos);
27  };
28  inline double getVelocity(unsigned int pos)
29  {
30    assert(pos < _ndof);
31    return (*_q[1])(pos);
32  };
33
34  inline double getMassValue() const
35  {
36    return massValue;
37  };
38
39  inline double getRadius() const
40  {
41    return radius;
42  };
43
44};
45#endif