Ejemplo n.º 1
0
 public void ProcessFrame(VideoFrameWrapper frame, LastTrackedPosition locatedGuidingStar)
 {
     if (m_RunAutoFocusNow && locatedGuidingStar != null && locatedGuidingStar.IsLocated && m_ObservatoryController.IsConnectedToTelescope())
     {
         // TODO: Start the auto focusing and monitor it. Do we want to use a state machine for this??
     }
     else if (m_IsAutoFocusing && m_ObservatoryController.IsConnectedToTelescope())
     {
         // TODO: Check the effect of the last focuser movement and issue a correction or end the focusing
         // TODO: Use a state machine to manage this.
     }
 }
Ejemplo n.º 2
0
        internal override void ProcessFrame(VideoFrameWrapper frame, LastTrackedPosition locatedGuidingStar)
        {
            if (!m_FirstFrameReceived)
            {
                // TODO: Record the starting position
                m_FirstFrameReceived = true;

                m_StateMachine.ObservatoryController.TelescopePulseGuide(GuideDirections.guideEast, PulseRate.Fast, CallType.Async, m_ObservatoryControlLock, ObservatoryController_SlewCompleted);
                m_PulseIssued = true;
            }
            else if (m_PulseFinished)
            {
                // TODO: Recod last position
            }
        }
Ejemplo n.º 3
0
 internal abstract void ProcessFrame(VideoFrameWrapper frame, LastTrackedPosition locatedGuidingStar);
Ejemplo n.º 4
0
 internal override void ProcessFrame(VideoFrameWrapper frame, LastTrackedPosition locatedGuidingStar)
 {
     // This is the idle state. Nothing to do.
 }
Ejemplo n.º 5
0
 public void ProcessFrame(VideoFrameWrapper frame, LastTrackedPosition locatedGuidingStar)
 {
     m_CurrentState.ProcessFrame(frame, locatedGuidingStar);
 }
Ejemplo n.º 6
0
 public void Reset()
 {
     LastTrackedFrameNo = -1;
     GuidingStar = null;
     TargetStar = null;
     IsTracking = false;
     TrackedObjectId = -1;
     GuidingObjectId = -1;
 }