Panda3D
eggOptcharUserData.h
1 // Filename: eggOptcharUserData.h
2 // Created by: drose (18Jul03)
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 EGGOPTCHARUSERDATA_H
16 #define EGGOPTCHARUSERDATA_H
17 
18 #include "pandatoolbase.h"
19 #include "eggUserData.h"
20 #include "luse.h"
21 
22 ////////////////////////////////////////////////////////////////////
23 // Class : EggOptcharUserData
24 // Description : This class contains extra user data which is
25 // piggybacked onto EggGroup objects for the purpose of
26 // the maya converter.
27 ////////////////////////////////////////////////////////////////////
29 public:
30  INLINE EggOptcharUserData();
31  INLINE EggOptcharUserData(const EggOptcharUserData &copy);
32  INLINE void operator = (const EggOptcharUserData &copy);
33 
34  INLINE bool is_static() const;
35  INLINE bool is_identity() const;
36  INLINE bool is_empty() const;
37  INLINE bool is_top() const;
38 
39  enum Flags {
40  F_static = 0x0001,
41  F_identity = 0x0002,
42  F_empty = 0x0004,
43  F_top = 0x0008,
44  F_remove = 0x0010,
45  F_expose = 0x0020,
46  F_suppress = 0x0040,
47  };
48  int _flags;
49  LMatrix4d _static_mat;
50  double _static_value;
51 
52 public:
53  static TypeHandle get_class_type() {
54  return _type_handle;
55  }
56  static void init_type() {
57  EggUserData::init_type();
58  register_type(_type_handle, "EggOptcharUserData",
59  EggUserData::get_class_type());
60  }
61  virtual TypeHandle get_type() const {
62  return get_class_type();
63  }
64  virtual TypeHandle force_init_type() {init_type(); return get_class_type();}
65 
66 private:
67  static TypeHandle _type_handle;
68 };
69 
70 #include "eggOptcharUserData.I"
71 
72 #endif
This is a 4-by-4 transform matrix.
Definition: lmatrix.h:4716
This class contains extra user data which is piggybacked onto EggGroup objects for the purpose of the...
TypeHandle is the identifier used to differentiate C++ class types.
Definition: typeHandle.h:85
This is a base class for a user-defined data type to extend egg structures in processing code...
Definition: eggUserData.h:34