RigsofRods
Soft-body Physics Simulation
Flexable.h
Go to the documentation of this file.
1 /*
2  This source file is part of Rigs of Rods
3  Copyright 2005-2012 Pierre-Michel Ricordel
4  Copyright 2007-2012 Thomas Fischer
5 
6  For more information, see http://www.rigsofrods.org/
7 
8  Rigs of Rods is free software: you can redistribute it and/or modify
9  it under the terms of the GNU General Public License version 3, as
10  published by the Free Software Foundation.
11 
12  Rigs of Rods is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with Rigs of Rods. If not, see <http://www.gnu.org/licenses/>.
19 */
20 
21 #pragma once
22 
23 #include <OgreVector3.h>
24 
25 namespace RoR {
26 
29 
32 
33 // NOTE: class FlexBody no longer uses this interface ~ only_a_ptr, 05/2018
34 class Flexable
35 {
36 public:
37  virtual ~Flexable() {}
38 
39  virtual bool flexitPrepare() = 0;
40  virtual void flexitCompute() = 0;
41  virtual Ogre::Vector3 flexitFinal() = 0;
42 
43  virtual void setVisible(bool visible) = 0;
44 };
45 
48 
49 } // namespace RoR
RoR::Flexable
Definition: Flexable.h:34
RoR::Flexable::flexitPrepare
virtual bool flexitPrepare()=0
RoR::Flexable::setVisible
virtual void setVisible(bool visible)=0
RoR::Flexable::flexitFinal
virtual Ogre::Vector3 flexitFinal()=0
RoR::Flexable::flexitCompute
virtual void flexitCompute()=0
RoR::Flexable::~Flexable
virtual ~Flexable()
Definition: Flexable.h:37
RoR
Definition: AppContext.h:36