DefaultContactCalculation.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_COLLISION_DEFAULTCONTACTCALCULATION_H
17 #define SURGSIM_COLLISION_DEFAULTCONTACTCALCULATION_H
18 
19 #include <memory>
20 
22 
23 namespace SurgSim
24 {
25 namespace Collision
26 {
27 
28 class CollisionPair;
29 
32 {
33 public:
34 
39  explicit DefaultContactCalculation(bool doAssert = false);
40 
43 
46  virtual std::pair<int,int> getShapeTypes() override;
47 
48 private:
49  bool m_doAssert;
50 
53  virtual void doCalculateContact(std::shared_ptr<CollisionPair> pair) override;
54 };
55 
56 }; // namespace Collision
57 }; // namespace SurgSim
58 
59 #endif
Definition: DriveElementFromInputBehavior.cpp:27
virtual void doCalculateContact(std::shared_ptr< CollisionPair > pair) override
Calculate the actual contact between two shapes of the given CollisionPair.
Definition: DefaultContactCalculation.cpp:42
Base class responsible for calculating contact data between two given shapes, calculateContact needs ...
Definition: ContactCalculation.h:35
A default calculation, it does nothing and can be used as a placeholder.
Definition: DefaultContactCalculation.h:31
virtual std::pair< int, int > getShapeTypes() override
Function that returns the shapes between which this class performs collision detection.
Definition: DefaultContactCalculation.cpp:37
virtual ~DefaultContactCalculation()
Destructor.
Definition: DefaultContactCalculation.cpp:33
bool m_doAssert
Definition: DefaultContactCalculation.h:49
DefaultContactCalculation(bool doAssert=false)
Constructor.
Definition: DefaultContactCalculation.cpp:28