00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef TRACKERDATA_H
00020 #define TRACKERDATA_H
00021
00022 #include <pandabase.h>
00023 #include <luse.h>
00024
00025
00026
00027
00028
00029 class EXPCL_PANDA TrackerData {
00030 public:
00031 INLINE TrackerData();
00032 INLINE TrackerData(const TrackerData ©);
00033 void operator = (const TrackerData ©);
00034
00035 INLINE void clear();
00036
00037 INLINE void set_time(double time);
00038 INLINE bool has_time() const;
00039 INLINE double get_time() const;
00040
00041 INLINE void set_pos(const LPoint3f &pos);
00042 INLINE bool has_pos() const;
00043 INLINE const LPoint3f &get_pos() const;
00044
00045 INLINE void set_orient(const LOrientationf &orient);
00046 INLINE bool has_orient() const;
00047 INLINE const LOrientationf &get_orient() const;
00048
00049 INLINE void set_dt(double dt);
00050 INLINE bool has_dt() const;
00051 INLINE double get_dt() const;
00052
00053 private:
00054 enum Flags {
00055 F_has_time = 0x0001,
00056 F_has_pos = 0x0002,
00057 F_has_orient = 0x0004,
00058 F_has_dt = 0x0008,
00059 };
00060
00061 int _flags;
00062
00063 double _time;
00064 LPoint3f _pos;
00065 LOrientationf _orient;
00066 double _dt;
00067 };
00068
00069 #include "trackerData.I"
00070
00071 #endif