pub trait Telescope: Device + Send + Sync {
Show 80 methods // Provided methods async fn alignment_mode(&self) -> ASCOMResult<AlignmentMode> { ... } async fn altitude(&self) -> ASCOMResult<f64> { ... } async fn aperture_area(&self) -> ASCOMResult<f64> { ... } async fn aperture_diameter(&self) -> ASCOMResult<f64> { ... } async fn at_home(&self) -> ASCOMResult<bool> { ... } async fn at_park(&self) -> ASCOMResult<bool> { ... } async fn azimuth(&self) -> ASCOMResult<f64> { ... } async fn can_find_home(&self) -> ASCOMResult<bool> { ... } async fn can_park(&self) -> ASCOMResult<bool> { ... } async fn can_pulse_guide(&self) -> ASCOMResult<bool> { ... } async fn can_set_declination_rate(&self) -> ASCOMResult<bool> { ... } async fn can_set_guide_rates(&self) -> ASCOMResult<bool> { ... } async fn can_set_park(&self) -> ASCOMResult<bool> { ... } async fn can_set_pier_side(&self) -> ASCOMResult<bool> { ... } async fn can_set_right_ascension_rate(&self) -> ASCOMResult<bool> { ... } async fn can_set_tracking(&self) -> ASCOMResult<bool> { ... } async fn can_slew(&self) -> ASCOMResult<bool> { ... } async fn can_slew_alt_az(&self) -> ASCOMResult<bool> { ... } async fn can_slew_alt_az_async(&self) -> ASCOMResult<bool> { ... } async fn can_slew_async(&self) -> ASCOMResult<bool> { ... } async fn can_sync(&self) -> ASCOMResult<bool> { ... } async fn can_sync_alt_az(&self) -> ASCOMResult<bool> { ... } async fn can_unpark(&self) -> ASCOMResult<bool> { ... } async fn declination(&self) -> ASCOMResult<f64> { ... } async fn declination_rate(&self) -> ASCOMResult<f64> { ... } async fn set_declination_rate(&self, declination_rate: f64) -> ASCOMResult { ... } async fn does_refraction(&self) -> ASCOMResult<bool> { ... } async fn set_does_refraction(&self, does_refraction: bool) -> ASCOMResult { ... } async fn equatorial_system(&self) -> ASCOMResult<EquatorialSystem> { ... } async fn focal_length(&self) -> ASCOMResult<f64> { ... } async fn guide_rate_declination(&self) -> ASCOMResult<f64> { ... } async fn set_guide_rate_declination( &self, guide_rate_declination: f64 ) -> ASCOMResult { ... } async fn guide_rate_right_ascension(&self) -> ASCOMResult<f64> { ... } async fn set_guide_rate_right_ascension( &self, guide_rate_right_ascension: f64 ) -> ASCOMResult { ... } async fn is_pulse_guiding(&self) -> ASCOMResult<bool> { ... } async fn right_ascension(&self) -> ASCOMResult<f64> { ... } async fn right_ascension_rate(&self) -> ASCOMResult<f64> { ... } async fn set_right_ascension_rate( &self, right_ascension_rate: f64 ) -> ASCOMResult { ... } async fn side_of_pier(&self) -> ASCOMResult<SideOfPier> { ... } async fn set_side_of_pier(&self, side_of_pier: SideOfPier) -> ASCOMResult { ... } async fn sidereal_time(&self) -> ASCOMResult<f64> { ... } async fn site_elevation(&self) -> ASCOMResult<f64> { ... } async fn set_site_elevation(&self, site_elevation: f64) -> ASCOMResult { ... } async fn site_latitude(&self) -> ASCOMResult<f64> { ... } async fn set_site_latitude(&self, site_latitude: f64) -> ASCOMResult { ... } async fn site_longitude(&self) -> ASCOMResult<f64> { ... } async fn set_site_longitude(&self, site_longitude: f64) -> ASCOMResult { ... } async fn slewing(&self) -> ASCOMResult<bool> { ... } async fn slew_settle_time(&self) -> ASCOMResult<i32> { ... } async fn set_slew_settle_time(&self, slew_settle_time: i32) -> ASCOMResult { ... } async fn target_declination(&self) -> ASCOMResult<f64> { ... } async fn set_target_declination( &self, target_declination: f64 ) -> ASCOMResult { ... } async fn target_right_ascension(&self) -> ASCOMResult<f64> { ... } async fn set_target_right_ascension( &self, target_right_ascension: f64 ) -> ASCOMResult { ... } async fn tracking(&self) -> ASCOMResult<bool> { ... } async fn set_tracking(&self, tracking: bool) -> ASCOMResult { ... } async fn tracking_rate(&self) -> ASCOMResult<DriveRate> { ... } async fn set_tracking_rate(&self, tracking_rate: DriveRate) -> ASCOMResult { ... } async fn tracking_rates(&self) -> ASCOMResult<Vec<DriveRate>> { ... } async fn utc_date(&self) -> ASCOMResult<SystemTime> { ... } async fn set_utc_date(&self, utc_date: SystemTime) -> ASCOMResult { ... } async fn abort_slew(&self) -> ASCOMResult { ... } async fn axis_rates(&self, axis: Axis) -> ASCOMResult<Vec<AxisRate>> { ... } async fn can_move_axis(&self, axis: Axis) -> ASCOMResult<bool> { ... } async fn destination_side_of_pier( &self, right_ascension: f64, declination: f64 ) -> ASCOMResult<SideOfPier> { ... } async fn find_home(&self) -> ASCOMResult { ... } async fn move_axis(&self, axis: Axis, rate: f64) -> ASCOMResult { ... } async fn park(&self) -> ASCOMResult { ... } async fn pulse_guide( &self, direction: PutPulseGuideDirection, duration: i32 ) -> ASCOMResult { ... } async fn set_park(&self) -> ASCOMResult { ... } async fn slew_to_alt_az(&self, azimuth: f64, altitude: f64) -> ASCOMResult { ... } async fn slew_to_alt_az_async( &self, azimuth: f64, altitude: f64 ) -> ASCOMResult { ... } async fn slew_to_coordinates( &self, right_ascension: f64, declination: f64 ) -> ASCOMResult { ... } async fn slew_to_coordinates_async( &self, right_ascension: f64, declination: f64 ) -> ASCOMResult { ... } async fn slew_to_target(&self) -> ASCOMResult { ... } async fn slew_to_target_async(&self) -> ASCOMResult { ... } async fn sync_to_alt_az(&self, azimuth: f64, altitude: f64) -> ASCOMResult { ... } async fn sync_to_coordinates( &self, right_ascension: f64, declination: f64 ) -> ASCOMResult { ... } async fn sync_to_target(&self) -> ASCOMResult { ... } async fn unpark(&self) -> ASCOMResult { ... }
}
Available on crate feature telescope only.
Expand description

Telescope Specific Methods

Provided Methods§

source

async fn alignment_mode(&self) -> ASCOMResult<AlignmentMode>

Returns the alignment mode of the mount (Alt/Az, Polar, German Polar). The alignment mode is specified as an integer value from the AlignmentModes Enum.

source

async fn altitude(&self) -> ASCOMResult<f64>

The altitude above the local horizon of the mount’s current position (degrees, positive up)

source

async fn aperture_area(&self) -> ASCOMResult<f64>

The area of the telescope’s aperture, taking into account any obstructions (square meters)

source

async fn aperture_diameter(&self) -> ASCOMResult<f64>

The telescope’s effective aperture diameter (meters)

source

async fn at_home(&self) -> ASCOMResult<bool>

True if the mount is stopped in the Home position. Set only following a FindHome() operation, and reset with any slew operation. This property must be False if the telescope does not support homing.

source

async fn at_park(&self) -> ASCOMResult<bool>

True if the telescope has been put into the parked state by the seee Park() method. Set False by calling the Unpark() method.

source

async fn azimuth(&self) -> ASCOMResult<f64>

The azimuth at the local horizon of the mount’s current position (degrees, North-referenced, positive East/clockwise).

source

async fn can_find_home(&self) -> ASCOMResult<bool>

True if this telescope is capable of programmed finding its home position (FindHome() method).

source

async fn can_park(&self) -> ASCOMResult<bool>

True if this telescope is capable of programmed parking (Park() method)

source

async fn can_pulse_guide(&self) -> ASCOMResult<bool>

True if this telescope is capable of software-pulsed guiding (via the PulseGuide(GuideDirections, Int32) method)

source

async fn can_set_declination_rate(&self) -> ASCOMResult<bool>

True if the DeclinationRate property can be changed to provide offset tracking in the declination axis.

source

async fn can_set_guide_rates(&self) -> ASCOMResult<bool>

True if the guide rate properties used for PulseGuide(GuideDirections, Int32) can ba adjusted.

source

async fn can_set_park(&self) -> ASCOMResult<bool>

True if this telescope is capable of programmed setting of its park position (SetPark() method)

source

async fn can_set_pier_side(&self) -> ASCOMResult<bool>

True if the SideOfPier property can be set, meaning that the mount can be forced to flip.

source

async fn can_set_right_ascension_rate(&self) -> ASCOMResult<bool>

True if the RightAscensionRate property can be changed to provide offset tracking in the right ascension axis. .

source

async fn can_set_tracking(&self) -> ASCOMResult<bool>

True if the Tracking property can be changed, turning telescope sidereal tracking on and off.

source

async fn can_slew(&self) -> ASCOMResult<bool>

True if this telescope is capable of programmed slewing (synchronous or asynchronous) to equatorial coordinates

source

async fn can_slew_alt_az(&self) -> ASCOMResult<bool>

True if this telescope is capable of programmed slewing (synchronous or asynchronous) to local horizontal coordinates

source

async fn can_slew_alt_az_async(&self) -> ASCOMResult<bool>

True if this telescope is capable of programmed asynchronous slewing to local horizontal coordinates

source

async fn can_slew_async(&self) -> ASCOMResult<bool>

True if this telescope is capable of programmed asynchronous slewing to equatorial coordinates.

source

async fn can_sync(&self) -> ASCOMResult<bool>

True if this telescope is capable of programmed synching to equatorial coordinates.

source

async fn can_sync_alt_az(&self) -> ASCOMResult<bool>

True if this telescope is capable of programmed synching to local horizontal coordinates

source

async fn can_unpark(&self) -> ASCOMResult<bool>

True if this telescope is capable of programmed unparking (UnPark() method)

source

async fn declination(&self) -> ASCOMResult<f64>

The declination (degrees) of the mount’s current equatorial coordinates, in the coordinate system given by the EquatorialSystem property. Reading the property will raise an error if the value is unavailable.

source

async fn declination_rate(&self) -> ASCOMResult<f64>

The declination tracking rate (arcseconds per second, default = 0.0)

source

async fn set_declination_rate(&self, declination_rate: f64) -> ASCOMResult

Sets the declination tracking rate (arcseconds per second)

source

async fn does_refraction(&self) -> ASCOMResult<bool>

True if the telescope or driver applies atmospheric refraction to coordinates.

source

async fn set_does_refraction(&self, does_refraction: bool) -> ASCOMResult

Causes the rotator to move Position degrees relative to the current Position value.

source

async fn equatorial_system(&self) -> ASCOMResult<EquatorialSystem>

Returns the current equatorial coordinate system used by this telescope (e.g. Topocentric or J2000).

source

async fn focal_length(&self) -> ASCOMResult<f64>

The telescope’s focal length in meters

source

async fn guide_rate_declination(&self) -> ASCOMResult<f64>

The current Declination movement rate offset for telescope guiding (degrees/sec)

source

async fn set_guide_rate_declination( &self, guide_rate_declination: f64 ) -> ASCOMResult

Sets the current Declination movement rate offset for telescope guiding (degrees/sec).

source

async fn guide_rate_right_ascension(&self) -> ASCOMResult<f64>

The current RightAscension movement rate offset for telescope guiding (degrees/sec)

source

async fn set_guide_rate_right_ascension( &self, guide_rate_right_ascension: f64 ) -> ASCOMResult

Sets the current RightAscension movement rate offset for telescope guiding (degrees/sec).

source

async fn is_pulse_guiding(&self) -> ASCOMResult<bool>

True if a PulseGuide(GuideDirections, Int32) command is in progress, False otherwise

source

async fn right_ascension(&self) -> ASCOMResult<f64>

The right ascension (hours) of the mount’s current equatorial coordinates, in the coordinate system given by the EquatorialSystem property

source

async fn right_ascension_rate(&self) -> ASCOMResult<f64>

The right ascension tracking rate (arcseconds per second, default = 0.0)

source

async fn set_right_ascension_rate( &self, right_ascension_rate: f64 ) -> ASCOMResult

Sets the right ascension tracking rate (arcseconds per second)

source

async fn side_of_pier(&self) -> ASCOMResult<SideOfPier>

Indicates the pointing state of the mount.

source

async fn set_side_of_pier(&self, side_of_pier: SideOfPier) -> ASCOMResult

Sets the pointing state of the mount.

source

async fn sidereal_time(&self) -> ASCOMResult<f64>

The local apparent sidereal time from the telescope’s internal clock (hours, sidereal).

source

async fn site_elevation(&self) -> ASCOMResult<f64>

The elevation above mean sea level (meters) of the site at which the telescope is located.

source

async fn set_site_elevation(&self, site_elevation: f64) -> ASCOMResult

Sets the elevation above mean sea level (metres) of the site at which the telescope is located.

source

async fn site_latitude(&self) -> ASCOMResult<f64>

The geodetic(map) latitude (degrees, positive North, WGS84) of the site at which the telescope is located.

source

async fn set_site_latitude(&self, site_latitude: f64) -> ASCOMResult

Sets the observing site’s latitude (degrees).

source

async fn site_longitude(&self) -> ASCOMResult<f64>

The longitude (degrees, positive East, WGS84) of the site at which the telescope is located.

source

async fn set_site_longitude(&self, site_longitude: f64) -> ASCOMResult

Sets the observing site’s longitude (degrees, positive East, WGS84).

source

async fn slewing(&self) -> ASCOMResult<bool>

True if telescope is currently moving in response to one of the Slew methods or the MoveAxis(TelescopeAxes, Double) method, False at all other times.

source

async fn slew_settle_time(&self) -> ASCOMResult<i32>

Returns the post-slew settling time (sec.).

source

async fn set_slew_settle_time(&self, slew_settle_time: i32) -> ASCOMResult

Sets the post-slew settling time (integer sec.).

source

async fn target_declination(&self) -> ASCOMResult<f64>

The declination (degrees, positive North) for the target of an equatorial slew or sync operation

source

async fn set_target_declination(&self, target_declination: f64) -> ASCOMResult

Sets the declination (degrees, positive North) for the target of an equatorial slew or sync operation

source

async fn target_right_ascension(&self) -> ASCOMResult<f64>

The right ascension (hours) for the target of an equatorial slew or sync operation

source

async fn set_target_right_ascension( &self, target_right_ascension: f64 ) -> ASCOMResult

Sets the right ascension (hours) for the target of an equatorial slew or sync operation

source

async fn tracking(&self) -> ASCOMResult<bool>

Returns the state of the telescope’s sidereal tracking drive.

source

async fn set_tracking(&self, tracking: bool) -> ASCOMResult

Sets the state of the telescope’s sidereal tracking drive.

source

async fn tracking_rate(&self) -> ASCOMResult<DriveRate>

The current tracking rate of the telescope’s sidereal drive.

source

async fn set_tracking_rate(&self, tracking_rate: DriveRate) -> ASCOMResult

Sets the tracking rate of the telescope’s sidereal drive.

source

async fn tracking_rates(&self) -> ASCOMResult<Vec<DriveRate>>

Returns an array of supported DriveRates values that describe the permissible values of the TrackingRate property for this telescope type.

source

async fn utc_date(&self) -> ASCOMResult<SystemTime>

Returns the UTC date/time of the telescope’s internal clock.

source

async fn set_utc_date(&self, utc_date: SystemTime) -> ASCOMResult

Sets the UTC date/time of the telescope’s internal clock.

source

async fn abort_slew(&self) -> ASCOMResult

Immediately Stops a slew in progress.

source

async fn axis_rates(&self, axis: Axis) -> ASCOMResult<Vec<AxisRate>>

The rates at which the telescope may be moved about the specified axis by the MoveAxis(TelescopeAxes, Double) method.

source

async fn can_move_axis(&self, axis: Axis) -> ASCOMResult<bool>

True if this telescope can move the requested axis.

source

async fn destination_side_of_pier( &self, right_ascension: f64, declination: f64 ) -> ASCOMResult<SideOfPier>

Predicts the pointing state that a German equatorial mount will be in if it slews to the given coordinates.

source

async fn find_home(&self) -> ASCOMResult

Locates the telescope’s “home” position (synchronous)

source

async fn move_axis(&self, axis: Axis, rate: f64) -> ASCOMResult

Move the telescope in one axis at the given rate.

source

async fn park(&self) -> ASCOMResult

Move the telescope to its park position, stop all motion (or restrict to a small safe range), and set AtPark to True. )

source

async fn pulse_guide( &self, direction: PutPulseGuideDirection, duration: i32 ) -> ASCOMResult

Moves the scope in the given direction for the given interval or time at the rate given by the corresponding guide rate property

source

async fn set_park(&self) -> ASCOMResult

Sets the telescope’s park position to be its current position.

source

async fn slew_to_alt_az(&self, azimuth: f64, altitude: f64) -> ASCOMResult

Move the telescope to the given local horizontal coordinates, return when slew is complete

source

async fn slew_to_alt_az_async(&self, azimuth: f64, altitude: f64) -> ASCOMResult

Move the telescope to the given local horizontal coordinates, return immediatley after the slew starts. The client can poll the Slewing method to determine when the mount reaches the intended coordinates.

source

async fn slew_to_coordinates( &self, right_ascension: f64, declination: f64 ) -> ASCOMResult

Move the telescope to the given equatorial coordinates, return when slew is complete

source

async fn slew_to_coordinates_async( &self, right_ascension: f64, declination: f64 ) -> ASCOMResult

Move the telescope to the given equatorial coordinates, return immediatley after the slew starts. The client can poll the Slewing method to determine when the mount reaches the intended coordinates.

source

async fn slew_to_target(&self) -> ASCOMResult

Move the telescope to the TargetRightAscension and TargetDeclination equatorial coordinates, return when slew is complete

source

async fn slew_to_target_async(&self) -> ASCOMResult

Move the telescope to the TargetRightAscension and TargetDeclination equatorial coordinates, return immediatley after the slew starts. The client can poll the Slewing method to determine when the mount reaches the intended coordinates.

source

async fn sync_to_alt_az(&self, azimuth: f64, altitude: f64) -> ASCOMResult

Matches the scope’s local horizontal coordinates to the given local horizontal coordinates.

source

async fn sync_to_coordinates( &self, right_ascension: f64, declination: f64 ) -> ASCOMResult

Matches the scope’s equatorial coordinates to the given equatorial coordinates.

source

async fn sync_to_target(&self) -> ASCOMResult

Matches the scope’s equatorial coordinates to the TargetRightAscension and TargetDeclination equatorial coordinates.

source

async fn unpark(&self) -> ASCOMResult

Takes telescope out of the Parked state. )

Trait Implementations§

source§

impl Hash for dyn Telescope

source§

fn hash<H: Hasher>(&self, state: &mut H)

Feeds this value into the given Hasher. Read more
source§

impl PartialEq<dyn Telescope + 'static> for dyn Telescope

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Eq for dyn Telescope

Implementors§