@@ -356,6 +356,7 @@ public void Move(float Position)
356356 {
357357 { SharedConstants . POSITION_PARAMETER_NAME , Position . ToString ( CultureInfo . InvariantCulture ) }
358358 } ;
359+ RemoteClientDriver . SetClientTimeout ( client , longServerResponseTimeout ) ;
359360 RemoteClientDriver . SendToRemoteDriver < NoReturnValue > ( clientNumber , client , URIBase , TL , "Move" , Parameters , Method . PUT ) ;
360361 TL . LogMessage ( clientNumber , "Move" , string . Format ( "Rotator moved to relative position {0} OK" , Position ) ) ;
361362 }
@@ -366,11 +367,47 @@ public void MoveAbsolute(float Position)
366367 {
367368 { SharedConstants . POSITION_PARAMETER_NAME , Position . ToString ( CultureInfo . InvariantCulture ) }
368369 } ;
370+ RemoteClientDriver . SetClientTimeout ( client , longServerResponseTimeout ) ;
369371 RemoteClientDriver . SendToRemoteDriver < NoReturnValue > ( clientNumber , client , URIBase , TL , "MoveAbsolute" , Parameters , Method . PUT ) ;
370372 TL . LogMessage ( clientNumber , "MoveAbsolute" , string . Format ( "Rotator moved to absolute position {0} OK" , Position ) ) ;
371373 }
372374
373375 #endregion
374376
377+ #region IRotatorV3 Properties and Methods
378+
379+ public float MechanicalPosition
380+ {
381+ get
382+ {
383+ RemoteClientDriver . SetClientTimeout ( client , standardServerResponseTimeout ) ;
384+ return RemoteClientDriver . GetValue < float > ( clientNumber , client , URIBase , TL , "MechanicalPosition" ) ;
385+ }
386+ }
387+
388+ public void Sync ( float Position )
389+ {
390+ Dictionary < string , string > Parameters = new Dictionary < string , string >
391+ {
392+ { SharedConstants . POSITION_PARAMETER_NAME , Position . ToString ( CultureInfo . InvariantCulture ) }
393+ } ;
394+ RemoteClientDriver . SetClientTimeout ( client , longServerResponseTimeout ) ;
395+ RemoteClientDriver . SendToRemoteDriver < NoReturnValue > ( clientNumber , client , URIBase , TL , "Sync" , Parameters , Method . PUT ) ;
396+ TL . LogMessage ( clientNumber , "Sync" , string . Format ( "Rotator synced to sky position {0} OK" , Position ) ) ;
397+ }
398+
399+ public void MoveMechanical ( float Position )
400+ {
401+ Dictionary < string , string > Parameters = new Dictionary < string , string >
402+ {
403+ { SharedConstants . POSITION_PARAMETER_NAME , Position . ToString ( CultureInfo . InvariantCulture ) }
404+ } ;
405+ RemoteClientDriver . SetClientTimeout ( client , longServerResponseTimeout ) ;
406+ RemoteClientDriver . SendToRemoteDriver < NoReturnValue > ( clientNumber , client , URIBase , TL , "MoveMechanical" , Parameters , Method . PUT ) ;
407+ TL . LogMessage ( clientNumber , "MoveMechanical" , string . Format ( "Rotator moved to mechanical position {0} OK" , Position ) ) ;
408+ }
409+
410+ #endregion
411+
375412 }
376413}
0 commit comments