~siretart/ubuntu/utopic/blender/libav10

« back to all changes in this revision

Viewing changes to extern/bullet/Bullet/BroadphaseCollision/BroadphaseInterface.h

Tags: upstream-2.40
ImportĀ upstreamĀ versionĀ 2.40

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Copyright (c) 2005 Erwin Coumans http://continuousphysics.com/Bullet/
 
3
 *
 
4
 * Permission to use, copy, modify, distribute and sell this software
 
5
 * and its documentation for any purpose is hereby granted without fee,
 
6
 * provided that the above copyright notice appear in all copies.
 
7
 * Erwin Coumans makes no representations about the suitability 
 
8
 * of this software for any purpose.  
 
9
 * It is provided "as is" without express or implied warranty.
 
10
*/
 
11
#ifndef         BROADPHASE_INTERFACE_H
 
12
#define         BROADPHASE_INTERFACE_H
 
13
 
 
14
 
 
15
struct  DispatcherInfo;
 
16
class Dispatcher;
 
17
struct BroadphaseProxy;
 
18
#include "SimdVector3.h"
 
19
 
 
20
///BroadphaseInterface for aabb-overlapping object pairs
 
21
class BroadphaseInterface
 
22
{
 
23
public:
 
24
        virtual BroadphaseProxy*        CreateProxy(  void *object,int type, const SimdVector3& min,  const SimdVector3& max) =0;
 
25
        virtual void    DestroyProxy(BroadphaseProxy* proxy)=0;
 
26
        virtual void    SetAabb(BroadphaseProxy* proxy,const SimdVector3& aabbMin,const SimdVector3& aabbMax)=0;
 
27
        virtual void    CleanProxyFromPairs(BroadphaseProxy* proxy)=0;
 
28
        virtual void    DispatchAllCollisionPairs(Dispatcher&   dispatcher,DispatcherInfo& dispatchInfo)=0;
 
29
 
 
30
};
 
31
 
 
32
#endif //BROADPHASE_INTERFACE_H