GranOO  3.0
A robust and versatile workbench to build 3D dynamic simulations based on the Discrete Element Method
Public Member Functions | Static Public Member Functions | List of all members
GranOO3::Collision::Dispatcher Struct Reference

#include <Dispatcher.hpp>

Public Member Functions

template<>
bool run (const Shape::Sphere &s1, const Shape::Sphere &s2, Data &info)
 
template<>
bool run (const Shape::Sphere &s1, const Shape::Box &s2, Data &info)
 
template<>
bool run (const Shape::Sphere &s1, const Shape::Cylinder &s2, Data &info)
 
template<>
bool run (const Shape::Sphere &s1, const Shape::Cone &s2, Data &info)
 
template<>
bool run (const Shape::Sphere &s1, const Shape::ConeTruncated &s2, Data &info)
 
template<>
bool run (const Shape::Sphere &s1, const Shape::Polyhedron &s2, Data &info)
 
template<>
bool run (const Shape::Box &s1, const Shape::Sphere &s2, Data &info)
 
template<>
bool run (const Shape::Box &s1, const Shape::Box &s2, Data &info)
 
template<>
bool run (const Shape::Box &s1, const Shape::Cylinder &s2, Data &info)
 
template<>
bool run (const Shape::Box &s1, const Shape::Cone &s2, Data &info)
 
template<>
bool run (const Shape::Box &s1, const Shape::ConeTruncated &s2, Data &info)
 
template<>
bool run (const Shape::Box &s1, const Shape::Polyhedron &s2, Data &info)
 
template<>
bool run (const Shape::Cylinder &s1, const Shape::Sphere &s2, Data &info)
 
template<>
bool run (const Shape::Cylinder &s1, const Shape::Box &s2, Data &info)
 
template<>
bool run (const Shape::Cylinder &s1, const Shape::Cylinder &s2, Data &info)
 
template<>
bool run (const Shape::Cylinder &s1, const Shape::Cone &s2, Data &info)
 
template<>
bool run (const Shape::Cylinder &s1, const Shape::ConeTruncated &s2, Data &info)
 
template<>
bool run (const Shape::Cylinder &s1, const Shape::Polyhedron &s2, Data &info)
 
template<>
bool run (const Shape::Cone &s1, const Shape::Sphere &s2, Data &info)
 
template<>
bool run (const Shape::Cone &s1, const Shape::Box &s2, Data &info)
 
template<>
bool run (const Shape::Cone &s1, const Shape::Cylinder &s2, Data &info)
 
template<>
bool run (const Shape::Cone &s1, const Shape::Cone &s2, Data &info)
 
template<>
bool run (const Shape::Cone &s1, const Shape::ConeTruncated &s2, Data &info)
 
template<>
bool run (const Shape::Cone &s1, const Shape::Polyhedron &s2, Data &info)
 
template<>
bool run (const Shape::ConeTruncated &s1, const Shape::Sphere &s2, Data &info)
 
template<>
bool run (const Shape::ConeTruncated &s1, const Shape::Box &s2, Data &info)
 
template<>
bool run (const Shape::ConeTruncated &s1, const Shape::Cylinder &s2, Data &info)
 
template<>
bool run (const Shape::ConeTruncated &s1, const Shape::Cone &s2, Data &info)
 
template<>
bool run (const Shape::ConeTruncated &s1, const Shape::ConeTruncated &s2, Data &info)
 
template<>
bool run (const Shape::ConeTruncated &s1, const Shape::Polyhedron &s2, Data &info)
 
template<>
bool run (const Shape::Polyhedron &s1, const Shape::Sphere &s2, Data &info)
 
template<>
bool run (const Shape::Polyhedron &s1, const Shape::Box &s2, Data &info)
 
template<>
bool run (const Shape::Polyhedron &s1, const Shape::Cylinder &s2, Data &info)
 
template<>
bool run (const Shape::Polyhedron &s1, const Shape::Cone &s2, Data &info)
 
template<>
bool run (const Shape::Polyhedron &s1, const Shape::ConeTruncated &s2, Data &info)
 
template<>
bool run (const Shape::Polyhedron &s1, const Shape::Polyhedron &s2, Data &info)
 

Static Public Member Functions

template<class shape1 , class shape2 >
static bool run (const shape1 &, const shape2 &, Data &)
 
static bool run_gjk_epa_algorithm (const Shape::Volume &, const Shape::Volume &, Data &)
 

Member Function Documentation

◆ run() [1/37]

template<class shape1 , class shape2 >
static bool GranOO3::Collision::Dispatcher::run ( const shape1 &  ,
const shape2 &  ,
Data  
)
static

◆ run() [2/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Box s1,
const Shape::Box s2,
Data info 
)

◆ run() [3/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Box s1,
const Shape::Cone s2,
Data info 
)

◆ run() [4/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Box s1,
const Shape::ConeTruncated s2,
Data info 
)

◆ run() [5/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Box s1,
const Shape::Cylinder s2,
Data info 
)

◆ run() [6/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Box s1,
const Shape::Polyhedron s2,
Data info 
)

◆ run() [7/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Box s1,
const Shape::Sphere s2,
Data info 
)

◆ run() [8/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Cone s1,
const Shape::Box s2,
Data info 
)

◆ run() [9/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Cone s1,
const Shape::Cone s2,
Data info 
)

◆ run() [10/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Cone s1,
const Shape::ConeTruncated s2,
Data info 
)

◆ run() [11/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Cone s1,
const Shape::Cylinder s2,
Data info 
)

◆ run() [12/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Cone s1,
const Shape::Polyhedron s2,
Data info 
)

◆ run() [13/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Cone s1,
const Shape::Sphere s2,
Data info 
)

◆ run() [14/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::ConeTruncated s1,
const Shape::Box s2,
Data info 
)

◆ run() [15/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::ConeTruncated s1,
const Shape::Cone s2,
Data info 
)

◆ run() [16/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::ConeTruncated s1,
const Shape::ConeTruncated s2,
Data info 
)

◆ run() [17/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::ConeTruncated s1,
const Shape::Cylinder s2,
Data info 
)

◆ run() [18/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::ConeTruncated s1,
const Shape::Polyhedron s2,
Data info 
)

◆ run() [19/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::ConeTruncated s1,
const Shape::Sphere s2,
Data info 
)

◆ run() [20/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Cylinder s1,
const Shape::Box s2,
Data info 
)

◆ run() [21/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Cylinder s1,
const Shape::Cone s2,
Data info 
)

◆ run() [22/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Cylinder s1,
const Shape::ConeTruncated s2,
Data info 
)

◆ run() [23/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Cylinder s1,
const Shape::Cylinder s2,
Data info 
)

◆ run() [24/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Cylinder s1,
const Shape::Polyhedron s2,
Data info 
)

◆ run() [25/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Cylinder s1,
const Shape::Sphere s2,
Data info 
)

◆ run() [26/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Polyhedron s1,
const Shape::Box s2,
Data info 
)

◆ run() [27/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Polyhedron s1,
const Shape::Cone s2,
Data info 
)

◆ run() [28/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Polyhedron s1,
const Shape::ConeTruncated s2,
Data info 
)

◆ run() [29/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Polyhedron s1,
const Shape::Cylinder s2,
Data info 
)

◆ run() [30/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Polyhedron s1,
const Shape::Polyhedron s2,
Data info 
)

◆ run() [31/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Polyhedron s1,
const Shape::Sphere s2,
Data info 
)

◆ run() [32/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Sphere s1,
const Shape::Box s2,
Data info 
)

◆ run() [33/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Sphere s1,
const Shape::Cone s2,
Data info 
)

◆ run() [34/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Sphere s1,
const Shape::ConeTruncated s2,
Data info 
)

◆ run() [35/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Sphere s1,
const Shape::Cylinder s2,
Data info 
)

◆ run() [36/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Sphere s1,
const Shape::Polyhedron s2,
Data info 
)

◆ run() [37/37]

template<>
bool GranOO3::Collision::Dispatcher::run ( const Shape::Sphere s1,
const Shape::Sphere s2,
Data info 
)

◆ run_gjk_epa_algorithm()

bool GranOO3::Collision::Dispatcher::run_gjk_epa_algorithm ( const Shape::Volume s1,
const Shape::Volume s2,
Data info 
)
static

The documentation for this struct was generated from the following files: