public EyeXPrecisionPointer()
 {
     mode           = PrecisionPointerMode.ROTATION;
     samples        = new Vector3[5];
     headPoseStream = Program.EyeXHost.Streams.CreateHeadPoseStream();
     if (headPoseStream != null)
     {
         headPoseStream.IsEnabled = true;
         headPoseStream.Next     += OnNextHeadPose;
         started = true;
     }
 }
        public TrackIRPrecisionPointer(PrecisionPointerMode mode, int sensitivity)
        {
            this.mode        = mode;
            trackIRclient    = new TrackIRUnity.TrackIRClient(); // Create an instance of the TrackerIR Client to get data from.
            this.sensitivity = sensitivity;
            if (trackIRclient != null)
            {
                string status = trackIRclient.TrackIR_Enhanced_Init();
                if (status != null)
                {
                    started = true;

                    aTimer           = new System.Timers.Timer(33);
                    aTimer.Elapsed  += Update;
                    aTimer.AutoReset = false;
                    aTimer.Enabled   = true;
                }
            }
        }