SurgSim
Physics
FreeMotion.h
Go to the documentation of this file.
1
// This file is a part of the OpenSurgSim project.
2
// Copyright 2013, SimQuest Solutions Inc.
3
//
4
// Licensed under the Apache License, Version 2.0 (the "License");
5
// you may not use this file except in compliance with the License.
6
// You may obtain a copy of the License at
7
//
8
// http://www.apache.org/licenses/LICENSE-2.0
9
//
10
// Unless required by applicable law or agreed to in writing, software
11
// distributed under the License is distributed on an "AS IS" BASIS,
12
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
// See the License for the specific language governing permissions and
14
// limitations under the License.
15
16
#ifndef SURGSIM_PHYSICS_FREEMOTION_H
17
#define SURGSIM_PHYSICS_FREEMOTION_H
18
19
#include <memory>
20
#include <vector>
21
22
#include "
SurgSim/Framework/Macros.h
"
23
#include "
SurgSim/Physics/Computation.h
"
24
25
namespace
SurgSim
26
{
27
namespace
Physics
28
{
29
30
class
Representation;
31
33
class
FreeMotion
:
public
Computation
34
{
35
public
:
36
39
explicit
FreeMotion
(
bool
doCopyState =
false
);
40
41
SURGSIM_CLASSNAME
(
SurgSim::Physics::FreeMotion
);
42
44
~FreeMotion
();
45
46
protected
:
48
std::shared_ptr<PhysicsManagerState>
doUpdate
(
const
double
& dt,
const
std::shared_ptr<PhysicsManagerState>& state)
49
override
;
50
};
51
52
};
// Physics
53
};
// SurgSim
54
55
#endif
Computation.h
Macros.h
SurgSim
Definition:
CompoundShapeToGraphics.cpp:30
SurgSim::Physics::FreeMotion::~FreeMotion
~FreeMotion()
Destructor.
Definition:
FreeMotion.cpp:41
SurgSim::Physics::FreeMotion::doUpdate
std::shared_ptr< PhysicsManagerState > doUpdate(const double &dt, const std::shared_ptr< PhysicsManagerState > &state) override
Override doUpdate from superclass.
Definition:
FreeMotion.cpp:46
SurgSim::Physics::FreeMotion::FreeMotion
FreeMotion(bool doCopyState=false)
Constructor.
Definition:
FreeMotion.cpp:35
SurgSim::Physics::Computation
Encapsulates a calculation over a selection of objects, needs to be subclassed to be used.
Definition:
Computation.h:33
SurgSim::Physics::FreeMotion
Apply the FreeMotion calculation to all physics representations.
Definition:
FreeMotion.h:34
SurgSim::Physics::FreeMotion::SURGSIM_CLASSNAME
SURGSIM_CLASSNAME(SurgSim::Physics::FreeMotion)
Generated on Sat Dec 12 2020 12:09:52 for OpenSurgSim by
1.8.20