00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef SPACEBALLTRACKER_H
00024 #define SPACEBALLTRACKER_H
00025
00026 #include "P_Tracker.h"
00027 #if defined(VMDLIBSBALL)
00028 #include "sball.h"
00029 #endif
00030 class VMDApp;
00031
00033 class SpaceballTracker : public VMDTracker {
00034 private:
00035 VMDApp *app;
00036 int uselocal;
00037 #if defined(VMDLIBSBALL)
00038 SBallHandle sball;
00039 #endif
00040 float transInc, rotInc, scaleInc;
00041
00042 protected:
00043 virtual int do_start(const SensorConfig *);
00044
00045 public:
00046 SpaceballTracker(VMDApp *);
00047 ~SpaceballTracker();
00048 virtual const char *device_name() const { return "sballtracker"; }
00049 virtual VMDTracker *clone() { return new SpaceballTracker(app); }
00050
00051 virtual void update();
00052 inline virtual int alive() { return 1; }
00053 };
00054
00055 #endif