00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef EGGOPTCHARUSERDATA_H
00016 #define EGGOPTCHARUSERDATA_H
00017
00018 #include "pandatoolbase.h"
00019 #include "eggUserData.h"
00020 #include "luse.h"
00021
00022
00023
00024
00025
00026
00027
00028 class EggOptcharUserData : public EggUserData {
00029 public:
00030 INLINE EggOptcharUserData();
00031 INLINE EggOptcharUserData(const EggOptcharUserData ©);
00032 INLINE void operator = (const EggOptcharUserData ©);
00033
00034 INLINE bool is_static() const;
00035 INLINE bool is_identity() const;
00036 INLINE bool is_empty() const;
00037 INLINE bool is_top() const;
00038
00039 enum Flags {
00040 F_static = 0x0001,
00041 F_identity = 0x0002,
00042 F_empty = 0x0004,
00043 F_top = 0x0008,
00044 F_remove = 0x0010,
00045 F_expose = 0x0020,
00046 F_suppress = 0x0040,
00047 };
00048 int _flags;
00049 LMatrix4d _static_mat;
00050 double _static_value;
00051
00052 public:
00053 static TypeHandle get_class_type() {
00054 return _type_handle;
00055 }
00056 static void init_type() {
00057 EggUserData::init_type();
00058 register_type(_type_handle, "EggOptcharUserData",
00059 EggUserData::get_class_type());
00060 }
00061 virtual TypeHandle get_type() const {
00062 return get_class_type();
00063 }
00064 virtual TypeHandle force_init_type() {init_type(); return get_class_type();}
00065
00066 private:
00067 static TypeHandle _type_handle;
00068 };
00069
00070 #include "eggOptcharUserData.I"
00071
00072 #endif