Panda3D
physxForceFieldShapeDesc.h
1 // Filename: physxForceFieldShapeDesc.h
2 // Created by: enn0x (06Nov09)
3 //
4 ////////////////////////////////////////////////////////////////////
5 //
6 // PANDA 3D SOFTWARE
7 // Copyright (c) Carnegie Mellon University. All rights reserved.
8 //
9 // All use of this software is subject to the terms of the revised BSD
10 // license. You should have received a copy of this license along
11 // with this source code in a file named "LICENSE."
12 //
13 ////////////////////////////////////////////////////////////////////
14 
15 #ifndef PHYSXFORCEFIELDSHAPEDESC_H
16 #define PHYSXFORCEFIELDSHAPEDESC_H
17 
18 #include "pandabase.h"
19 #include "luse.h"
20 
21 #include "physx_includes.h"
22 
23 ////////////////////////////////////////////////////////////////////
24 // Class : PhysxForceFieldShapeDesc
25 // Description : Abstract base class for descriptors for force
26 // field shapes descriptors.
27 ////////////////////////////////////////////////////////////////////
28 class EXPCL_PANDAPHYSX PhysxForceFieldShapeDesc {
29 
30 PUBLISHED:
31  virtual void set_to_default() = 0;
32  virtual bool is_valid() const = 0;
33 
34  void set_name(const char *name);
35  void set_pos(const LPoint3f &pos);
36  void set_mat(const LMatrix4f &mat);
37  void set_hpr(float h, float p, float r);
38 
39  const char *get_name() const;
40  LPoint3f get_pos() const;
41  LMatrix4f get_mat() const;
42 
43 public:
44  virtual NxForceFieldShapeDesc *ptr() const = 0;
45 
46 private:
47  string _name;
48 
49 protected:
50  INLINE PhysxForceFieldShapeDesc();
51  INLINE ~PhysxForceFieldShapeDesc();
52 };
53 
54 #include "physxForceFieldShapeDesc.I"
55 
56 #endif // PHYSXFORCEFIELDSHAPEDESC_H
Abstract base class for descriptors for force field shapes descriptors.
This is a three-component point in space (as opposed to a three-component vector, which represents a ...
Definition: lpoint3.h:99
This is a 4-by-4 transform matrix.
Definition: lmatrix.h:451