16 #ifndef SURGSIM_COLLISION_CONTACTCALCULATION_H 17 #define SURGSIM_COLLISION_CONTACTCALCULATION_H 52 void calculateContact(std::shared_ptr<CollisionPair> pair);
57 std::list<std::shared_ptr<Contact>> calculateDcdContact(
66 std::list<std::shared_ptr<Contact>> calculateCcdContact(
72 virtual std::pair<int, int> getShapeTypes() = 0;
76 static void registerDcdContactCalculation(
const std::shared_ptr<ContactCalculation>& calculation);
80 static void registerCcdContactCalculation(
const std::shared_ptr<ContactCalculation>& calculation);
83 std::array<std::array<std::shared_ptr<ContactCalculation>,
Math::SHAPE_TYPE_COUNT>, Math::SHAPE_TYPE_COUNT>
86 static const TableType& getDcdContactTable();
87 static const TableType& getCcdContactTable();
92 virtual void doCalculateContact(std::shared_ptr<CollisionPair> pair);
99 virtual std::list<std::shared_ptr<Contact>> doCalculateDcdContact(
108 virtual std::list<std::shared_ptr<Contact>> doCalculateCcdContact(
113 static void initializeTables();
118 static void privateDcdRegister(
119 const std::shared_ptr<ContactCalculation>& calculation,
120 const std::pair<int, int>& types);
121 static void privateDcdRegister(
const std::shared_ptr<ContactCalculation>& calculation);
127 static void privateCcdRegister(
128 const std::shared_ptr<ContactCalculation>& calculation,
129 const std::pair<int, int>& types);
130 static void privateCcdRegister(
const std::shared_ptr<ContactCalculation>& calculation);
Definition: CompoundShapeToGraphics.cpp:29
PosedShape is a transformed shape with a record of the pose used to transform it. ...
Definition: Shape.h:117
PosedShapeMotion is embedding the motion of a PosedShape, providing a posed shape at 2 different inst...
Definition: Shape.h:145