HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SIM_ColliderInfo.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  */
7 
8 #ifndef __SIM_ColliderInfo_h__
9 #define __SIM_ColliderInfo_h__
10 
11 #include "SIM_API.h"
12 #include <UT/UT_Array.h>
13 #include "SIM_Collider.h"
14 
15 /// This class holds all the information needed by a solver to do collision
16 /// detection for an object.
18 {
19 public:
22  SIM_ColliderInfo(SIM_Object *affector,
23  const SIM_Collider *collider,
25  int priority);
27 
28  SIM_Object *getAffector() const;
29  const SIM_Collider *getCollider(SIM_Object *obj, const char *defaultlabel=0) const;
30  SIM_Collider::SIM_ImpactApplyType getImpactApplyType() const;
31  int getPriority() const;
32 
33  const SIM_ColliderInfo &operator=(const SIM_ColliderInfo &src);
34 
35 private:
36  SIM_Object *myAffector;
37  const SIM_Collider *myCollider;
38  SIM_Collider::SIM_ImpactApplyType myImpactApplyType;
39  int myPriority;
40 };
41 
43 
44 #endif
45 
SIM_ImpactApplyType
Defines the possible affector types when doing collision detection.
Definition: SIM_Collider.h:56
#define SIM_API
Definition: SIM_API.h:12
type
Definition: core.h:1059
UT_Array< SIM_ColliderInfo > SIM_ColliderInfoArray
GLenum src
Definition: glcorearb.h:1793