1 #ifndef MBTB_TSCOMBINEDPROJ_H
2 #define MBTB_TSCOMBINEDPROJ_H
3 #include "SiconosKernel.hpp"
4 /**
5  * \brief This class implements the time stepping with projection of a multi-bodies system.
6  * It inherits from Siconos::TimeSteppingDirectProjection.
7  * It consists in update the CAD word during the simulation.
8  */
9 class MBTB_TimeSteppingCombinedProj : public TimeSteppingCombinedProjection
10 {
11 public:
12   /** Constructor with the time-discretisation.
13    *  \param td pointer to a timeDiscretisation used in the integration
14    *  (linked to the model that owns this simulation)
15    *  \param osi one step integrator (default none)
16    *  \param osnspb_velo one step non smooth problem (default none)
17    *  \param osnspb_pos one step non smooth problem (default none)
18    *  \param level
19    */
MBTB_TimeSteppingCombinedProj(SP::NonSmoothDynamicalSystem nsds,SP::TimeDiscretisation td,SP::OneStepIntegrator osi,SP::OneStepNSProblem osnspb_velo,SP::OneStepNSProblem osnspb_pos,unsigned int level)20   MBTB_TimeSteppingCombinedProj(
21     SP::NonSmoothDynamicalSystem nsds,
22     SP::TimeDiscretisation td,
23     SP::OneStepIntegrator osi,
24     SP::OneStepNSProblem osnspb_velo,
25     SP::OneStepNSProblem osnspb_pos,
26     unsigned int level)
27     :TimeSteppingCombinedProjection(nsds,td,osi,osnspb_velo,osnspb_pos,level) {} ;
28 
29   //! Overloading of updateWorldFromDS.
30   /*!
31     It consists in updating the cad model from siconos.
32   */
33   virtual void updateWorldFromDS();
34 
35 };
36 TYPEDEF_SPTR(MBTB_TimeSteppingCombinedProj);
37 #endif
38