using System;
namespace GeoFramework.Gps
{
///
/// Represents information about the method used to obtain a fix when a fix-related event is raised.
///
/// This object is used primarily by the FixMethodChanged
/// event of the Receiver class to provide notification when
/// updated fix method information has been received from the GPS device.
/// This example demonstrates how to use this class when raising an event.
///
/// ' Declare a new event
/// Dim MyFixMethodEvent As EventHandler
/// ' Create a FixMethod signifying a 3-D fix (both position and altitude)
/// Dim MyFixMethod As FixMethod = FixMethod.Fix3D
///
/// Sub Main()
/// ' Raise our custom event
/// RaiseEvent MyFixMethodEvent(Me, New FixMethodEventArgs(MyFixMethod))
/// End Sub
///
///
/// // Declare a new event
/// EventHandler MyFixMethodEvent;
/// // Create a FixMethod signifying a 3-D fix (both position and altitude)
/// FixMethod MyFixMethod = FixMethod.Fix3D;
///
/// void Main()
/// {
/// // Raise our custom event
/// MyFixMethodEvent(this, New FixMethodEventArgs(MyFixMethod));
/// }
///
///
/// FixMethod Property (Receiver Class)
/// Receiver Class
public sealed class FixMethodEventArgs : EventArgs
{
private FixMethod _FixMethod;
///
/// Creates a new instance with the specified fix method.
///
/// A value from the FixMethod enumeration.
///
public FixMethodEventArgs(FixMethod fixMethod)
{
_FixMethod = fixMethod;
}
///
/// Indicates if the GPS device has no fix, a 2-D fix, or a 3-D fix.
///
/// A value from the FixMethod enumeration.
/// A device is considered to have a "2-D" fix if there are three satellites
/// involved in the fix. A 2-D fix means that position information is available, but not
/// altitude. If at least four satellites are fixed, both position and altitude are known,
/// and the fix is considered 3-D.
/// FixMethod Property (Receiver Class)
public FixMethod FixMethod
{
get
{
return _FixMethod;
}
}
}
///
/// Represents information about the likelihood that a fix will be sustained (or obtained) when a when a fix-related event is raised.
///
/// This object is used primarily by the FixLikelihoodChanged
/// event of the Receiver class to provide notification when
/// combined satellite radio signal strength has changed.
/// This example demonstrates how to use this class when raising an event.
///
/// ' Declare a new event
/// Dim MyFixLikelihoodEvent As FixLikelihoodEventHandler
/// ' Create a FixLikelihood signifying a 3-D fix (both position and altitude)
/// Dim MyFixLikelihood As FixLikelihood = FixLikelihood.Fix3D
///
/// Sub Main()
/// ' Raise our custom event
/// RaiseEvent MyFixLikelihoodEvent(Me, New FixLikelihoodEventArgs(MyFixLikelihood))
/// End Sub
///
///
/// // Declare a new event
/// FixLikelihoodEventHandler MyFixLikelihoodEvent;
/// // Create a FixLikelihood signifying a 3-D fix (both position and altitude)
/// FixLikelihood MyFixLikelihood = FixLikelihood.Fix3D;
///
/// void Main()
/// {
/// // Raise our custom event
/// MyFixLikelihoodEvent(this, New FixLikelihoodEventArgs(MyFixLikelihood));
/// }
///
///
/// FixLikelihood Property (Receiver Class)
/// Receiver Class
public sealed class FixLikelihoodEventArgs : EventArgs
{
private FixLikelihood _FixLikelihood;
///
/// Creates a new instance with the specified fix Likelihood.
///
/// A value from the FixLikelihood enumeration.
///
public FixLikelihoodEventArgs(FixLikelihood fixLikelihood)
{
_FixLikelihood = fixLikelihood;
}
///
/// Indicates if the GPS device has no fix, a 2-D fix, or a 3-D fix.
///
/// A value from the FixLikelihood enumeration.
/// A device is considered to have a "2-D" fix if there are three satellites
/// involved in the fix. A 2-D fix means that position information is available, but not
/// altitude. If at least four satellites are fixed, both position and altitude are known,
/// and the fix is considered 3-D.
/// FixLikelihood Property (Receiver Class)
public FixLikelihood FixLikelihood
{
get
{
return _FixLikelihood;
}
}
}
///
/// Represents information about whether the fix method is chosen automatically when a fix-related event is raised.
///
/// This object is used primarily by the FixModeChanged
/// event of the Receiver class to provide notification when
/// the receiver switches fix modes from Automatic to Manual or vice-versa.
/// This example demonstrates how to use this class when raising an event.
///
/// ' Declare a new event
/// Dim MyFixModeEvent As EventHandler
/// ' Create a FixMode signifying that the fix method is being chosen automatically
/// Dim MyFixMode As FixMode = FixMode.Automatic
///
/// Sub Main()
/// ' Raise our custom event
/// RaiseEvent MyFixModeEvent(Me, New FixModeEventArgs(MyFixMode))
/// End Sub
///
///
/// // Declare a new event
/// EventHandler MyFixModeEvent;
/// // Create a FixMode signifying that the fix method is being chosen automatically
/// FixMode MyFixMode = FixMode.Automatic;
///
/// void Main()
/// {
/// // Raise our custom event
/// MyFixModeEvent(this, New FixModeEventArgs(MyFixMode));
/// }
///
///
/// FixMethod Property (Receiver Class)
/// Receiver Class
public sealed class FixModeEventArgs : EventArgs
{
private FixMode _FixMode;
///
/// Creates a new instance with the specified fix method.
///
/// A value from the FixMode enumeration.
///
public FixModeEventArgs(FixMode fixMode)
{
_FixMode = fixMode;
}
///
/// Indicates if the GPS device is choosing the fix method automatically.
///
/// A value from the FixMode enumeration.
/// A vast majority of GPS devices calculate the fix mode automatically. This is because
/// the process of determining the fix mode is a simple process: if there are three fixed satellites,
/// a 2-D fix is obtained; if there are four or more fixed satellites, a 3-D fix is in progress. Any
/// less than three satellites means that no fix is possible.
///
/// FixMode Property (Receiver Class)
public FixMode FixMode
{
get
{
return _FixMode;
}
}
}
///
/// Represents information about the type of fix obtained when fix-related event is raised.
///
/// This object is used primarily by the FixQualityChanged
/// event of the Receiver class to provide notification when
/// the receiver switches fix modes from Automatic to Manual or vice-versa.
/// This example demonstrates how to use this class when raising an event.
///
/// ' Declare a new event
/// Dim MyFixQualityEvent As EventHandler
/// ' Create a FixQuality signifying that a differential GPS fix is obtained
/// Dim MyFixQuality As FixQuality = FixQuality.DifferentialGpsFix
///
/// Sub Main()
/// ' Raise our custom event
/// RaiseEvent MyFixQualityEvent(Me, New FixQualityEventArgs(MyFixQuality))
/// End Sub
///
///
/// // Declare a new event
/// EventHandler MyFixQualityEvent;
/// // Create a FixQuality signifying that a differential GPS fix is obtained
/// FixQuality MyFixQuality = FixQuality.DifferentialGpsFix;
///
/// void Main()
/// {
/// // Raise our custom event
/// MyFixQualityEvent(this, New FixQualityEventArgs(MyFixQuality));
/// }
///
///
/// FixMethod Property (Receiver Class)
/// Receiver Class
public sealed class FixQualityEventArgs : EventArgs
{
private FixQuality _FixQuality;
///
/// Creates a new instance with the specified fix quality measurement.
///
/// A value from the FixQuality enumeration.
///
public FixQualityEventArgs(FixQuality fixQuality)
{
_FixQuality = fixQuality;
}
///
/// Indicates whether the current fix involves satellites and/or DGPS/WAAS ground stations.
///
/// A value from the FixQuality enumeration.
///
public FixQuality FixQuality
{
get
{
return _FixQuality;
}
}
}
}