Click or drag to resize

ManagedGpsReceiver Class

Implements the communication with a serial, USB or bluetooth GPS receiver. If you need only managed code, without any Windows API, you can use this class. Otherwise we recommend GpsReceiver class.
Inheritance Hierarchy
SystemObject
  SystemMarshalByRefObject
    System.ComponentModelComponent
      ZylSoft.GpsBaseGpsReceiver
        ZylSoft.GpsManagedGpsReceiver

Namespace: ZylSoft.Gps
Assembly: ZylGpsReceiver (in ZylGpsReceiver.dll) Version: 3.28.8737.22596
XMLNS for XAML: Not mapped to an xmlns.
Syntax
public class ManagedGpsReceiver : BaseGpsReceiver, 
	IGpsReceiver

The ManagedGpsReceiver type exposes the following members.

Constructors
Properties
 NameDescription
Public propertyActiveRoute The active route.
(Inherited from BaseGpsReceiver)
Public propertyBaudRate Baud rate at which the communications device operates.
Protected propertyCanRaiseEventsGets a value indicating whether the component can raise an event.
(Inherited from Component)
Public propertyConnectedTo Returns the physical port where the GPS receiver is connected to.
Public propertyContainerGets the IContainer that contains the Component.
(Inherited from Component)
Public propertyCustomBaudRate Custom baud rate value, used when BaudRate is set to Custom.
Public propertyDataWidth Number of bits in the bytes transmitted and received.
Protected propertyDesignModeGets a value that indicates whether the Component is currently in design mode.
(Inherited from Component)
Public propertyEnableDtrOnOpen Enable/disable DTR when the port is open.
Public propertyEnableRtsOnOpen Enable/disable RTS when the port is open.
Protected propertyEventsGets the list of event handlers that are attached to this Component.
(Inherited from Component)
Public propertyFlowControl Flow control of the serial port.
Public propertyForceChecksum Enable or ignore checksum checking for NMEA sentences. When this property is true, all the sentences which checksum is not correct will be ignored.
(Inherited from BaseGpsReceiver)
Public propertyLogDateTime When this property is true, a date-time stamp will be added before each logged NMEA sentence.
(Inherited from BaseGpsReceiver)
Public propertyLogFile Name and path of the NMEA log file.
(Inherited from BaseGpsReceiver)
Public propertyLogNmea Enables or disables NMEA logging. If you enable it, all the valid NMEA sentences will be logged to the LogFile.
(Inherited from BaseGpsReceiver)
Public propertyNavigationInfo Returns information about the active route.
(Inherited from BaseGpsReceiver)
Public propertyNmeaSentencePrefix NMEA sentence prefix. Default value: "$"
(Inherited from BaseGpsReceiver)
Public propertyNmeaSentences Accepted NMEA sentences.
(Inherited from BaseGpsReceiver)
Public propertyNmeaSentenceTerminator NMEA sentence terminator. Default value: ((char)13(char)10)
(Inherited from BaseGpsReceiver)
Public propertyNmeaSentenceTerminator2 Second NMEA sentence terminator. Default value: ((char)13) It is used, if NmeaSentenceTerminator is not found in the sentence.
(Inherited from BaseGpsReceiver)
Public propertyParityBits Parity scheme to be used.
Public propertyPort Physical name of the serial port where the GPS receiver is connected to.
Public propertyPosition Contains the current position data.
(Inherited from BaseGpsReceiver)
Public propertyReadIntervalTimeout Maximum time allowed to elapse between the arrival of two characters on the communications line, in milliseconds. During a ReadFile operation, the time period begins when the first character is received. If the interval between the arrival of any two characters exceeds this amount, the ReadFile operation is completed and any buffered data is returned. A value of zero indicates that interval time-outs are not used. A value of MAXDWORD, combined with zero values for both the ReadTotalTimeoutConstant and ReadTotalTimeoutMultiplier members, specifies that the read operation is to return immediately with the characters that have already been received, even if no characters have been received.
Public propertyReceiverStatus Returns status info of the GPS receiver unit.
(Inherited from BaseGpsReceiver)
Public propertySatelliteTypes Accepted satellites.
(Inherited from BaseGpsReceiver)
Public propertySiteGets or sets the ISite of the Component.
(Inherited from Component)
Public propertyStopBits Number of stop bits to be used.
Public propertyTrack The current track.
(Inherited from BaseGpsReceiver)
Public propertyWaypoints List of waypoints (List of Waypoint objects).
(Inherited from BaseGpsReceiver)
Public propertyWriteIntervalTimeout Gets or sets the number of milliseconds before a time-out occurs when a write operation does not finish.
Top
Methods
 NameDescription
Public methodAddChecksumToNmea Adds checksum to a NMEA sentence (including asterix).
(Inherited from BaseGpsReceiver)
Public methodAddSentenceTerminatorToNmea Adds sentence terminator (usually CR-LF) to an NMEA sentence.
(Inherited from BaseGpsReceiver)
Public methodChecksumOk Checks if the checksum of the sentence is valid.
(Inherited from BaseGpsReceiver)
Public methodClose Closes the communication with the GPS receiver.
Public methodCreateObjRefCreates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.
(Inherited from MarshalByRefObject)
Public methodDetectGps(SerialCommPort, SerialBaudRate) Detects the GPS receiver connected to the system and returns as output parameters the communication port and baud rate.
Public methodDetectGps(SerialBaudRate, SerialBaudRate, SerialCommPort, SerialBaudRate) Detects the GPS receiver connected to the system and returns as output parameters the communication port and baud rate. Only baud rate values between startBaudRate and endBaudRate are checked.
Public methodDisposeReleases all resources used by the Component.
(Inherited from Component)
Protected methodDispose(Boolean) Clean up any resources being used.
(Overrides BaseGpsReceiverDispose(Boolean))
Public methodCode exampleDrawCompass Draws a compass.
(Inherited from BaseGpsReceiver)
Public methodDrawCompassToBitmap Draws a compass to a bitmap.
(Inherited from BaseGpsReceiver)
Public methodCode exampleDrawCompassWithSkin(Graphics, Int32) Draws a compass, using an embedded skin.
(Inherited from BaseGpsReceiver)
Public methodCode exampleDrawCompassWithSkin(Graphics, Image, Int32) Draws a compass, using a custom skin.
(Inherited from BaseGpsReceiver)
Public methodCode exampleDrawCompassWithSkin(Graphics, String, Int32) Draws a compass, using a custom skin.
(Inherited from BaseGpsReceiver)
Public methodDrawCompassWithSkinToBitmap Draws a compass with skin to a bitmap.
(Inherited from BaseGpsReceiver)
Public methodCode exampleDrawSatellites Draws the satellites in view. Red brush satellite - very low signal Orange brush satellite - low signal Yellow brush satellite - medium signal Light green brush satellite - good signal Green brush satellite - very good signal White pen satellite - GPS Orange red pen satellite - GLONASS Yellow pen satellite - BeiDou Blue pen satellite - Galileo Green pen satellite - QZSS Black pen satellite - Unknown
(Inherited from BaseGpsReceiver)
Public methodDrawSatellitesSignal(Graphics, Int32, Int32, Color) Draw the signals of satellites in view. Red brush satellite - very low signal Orange brush satellite - low signal Yellow brush satellite - medium signal Light green brush satellite - good signal Green brush satellite - very good signal
(Inherited from BaseGpsReceiver)
Public methodDrawSatellitesSignal(Graphics, Int32, Int32, Color, Color, Color, Int32) Draw the signals of satellites in view. Red brush satellite - very low signal Orange brush satellite - low signal Yellow brush satellite - medium signal Light green brush satellite - good signal Green brush satellite - very good signal
(Inherited from BaseGpsReceiver)
Public methodDrawSatellitesSignalToBitmap Draw the signals of satellites in view to a bitmap. Red brush satellite - very low signal Orange brush satellite - low signal Yellow brush satellite - medium signal Light green brush satellite - good signal Green brush satellite - very good signal
(Inherited from BaseGpsReceiver)
Public methodDrawSatellitesToBitmap Draws the satellites in view to a bitmap. Red brush satellite - very low signal Orange brush satellite - low signal Yellow brush satellite - medium signal Light green brush satellite - good signal Green brush satellite - very good signal White pen satellite - GPS Orange red pen satellite - GLONASS Yellow pen satellite - BeiDou Blue pen satellite - Galileo Green pen satellite - QZSS Black pen satellite - Unknown
(Inherited from BaseGpsReceiver)
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Public methodFastDetectGps Detects the GPS receiver connected to the system and returns as output parameters the communication port and baud rate. Only baud rate values between 4800 and 460800 are checked.
Protected methodFeedGpsReceiver Use this method to feed the GPS receiver with NMEA data from the source you wish for classes derived from BaseGpsReceiver.
(Inherited from BaseGpsReceiver)
Protected methodFinalizeReleases unmanaged resources and performs other cleanup operations before the Component is reclaimed by garbage collection.
(Inherited from Component)
Public methodGetAverageSatelliteSnr Returns the average SignalToNoiseRatio of satellites using the highest 4 values.
(Inherited from BaseGpsReceiver)
Public methodStatic memberGetExistingCommPortNames Returns the existing serial port names of the system.
Public methodStatic memberGetExistingCommPorts Returns the existing serial ports of the system.
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodGetLifetimeServiceRetrieves the current lifetime service object that controls the lifetime policy for this instance.
(Inherited from MarshalByRefObject)
Public methodGetNmeaChecksum Returns the checksum of a sentence.
(Inherited from BaseGpsReceiver)
Protected methodGetServiceReturns an object that represents a service provided by the Component or by its Container.
(Inherited from Component)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Public methodInitializeLifetimeServiceObtains a lifetime service object to control the lifetime policy for this instance.
(Inherited from MarshalByRefObject)
Public methodStatic memberIsExistingCommPort Checks if a serial port exists.
Protected methodMemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
Protected methodMemberwiseClone(Boolean)Creates a shallow copy of the current MarshalByRefObject object.
(Inherited from MarshalByRefObject)
Protected methodOnActiveRouteReceived Raises the ActiveRouteReceived event.
(Inherited from BaseGpsReceiver)
Protected methodOnAltitudeChanged Raises the AltitudeChanged event.
(Inherited from BaseGpsReceiver)
Protected methodOnArrival Raises the Arrival event.
(Inherited from BaseGpsReceiver)
Protected methodOnConnected Raises the Connected event.
Protected methodOnCourseChanged Raises the CourseChanged event.
(Inherited from BaseGpsReceiver)
Protected methodOnDetecting Raises the Detecting event.
Protected methodOnDisconnected Raises the Disconnected event.
Protected methodOnHeadingChanged Raises the HeadingChanged event.
(Inherited from BaseGpsReceiver)
Protected methodOnLatitudeChanged Raises the LatitudeChanged event.
(Inherited from BaseGpsReceiver)
Protected methodOnLongitudeChanged Raises the LongitudeChanged event.
(Inherited from BaseGpsReceiver)
Protected methodOnNewSentenceReceived Raises the NewSentenceReceived event.
(Inherited from BaseGpsReceiver)
Protected methodOnPosition2DChanged Raises the Position2DChanged event.
(Inherited from BaseGpsReceiver)
Protected methodOnPosition3DChanged Raises the Position3DChanged event.
(Inherited from BaseGpsReceiver)
Protected methodOnReceived Raises the Received event.
(Inherited from BaseGpsReceiver)
Protected methodOnSatelliteReceived Raises the SatelliteReceived event.
(Inherited from BaseGpsReceiver)
Protected methodOnSatellitesReceived Raises the SatellitesReceived event.
(Inherited from BaseGpsReceiver)
Protected methodOnSent Raises the Sent event.
(Inherited from BaseGpsReceiver)
Protected methodOnSpeedChanged Raises the SpeedChanged event.
(Inherited from BaseGpsReceiver)
Protected methodOnUnknownSentenceReceived Raises the UnknownSentenceReceived event.
(Inherited from BaseGpsReceiver)
Protected methodOnWaypointReceived Raises the WaypointReceived event.
(Inherited from BaseGpsReceiver)
Public methodOpen Opens the communication with the GPS receiver.
Public methodReset Resets all GPS data to a default value: Position, ReceiverStatus, NavigationInfo, WayPoints, ActiveRoute, Track.
(Inherited from BaseGpsReceiver)
Protected methodRouteToNmea(Route) Converts a route to NMEA.
(Inherited from BaseGpsReceiver)
Protected methodRouteToNmea(String) Converts a route to NMEA.
(Inherited from BaseGpsReceiver)
Public methodSendAsciiString Sends an ASCII string to the GPS receiver.
Public methodSendByteArray Sends a byte array to the GPS receiver.
Public methodShowOnGoogleMaps(Int32) Displays the current position on Google maps in the default browser.
(Inherited from BaseGpsReceiver)
Public methodToStringReturns a String containing the name of the Component, if any. This method should not be overridden.
(Inherited from Component)
Public methodUploadRoute(Route) It uploads a route.
Public methodUploadRoute(String) It uploads a route.
Public methodUploadWaypoint Uploads a waypoint.
Protected methodWaypointToNmea Converts a waypoint to NMEA.
(Inherited from BaseGpsReceiver)
Top
Events
 NameDescription
Public eventActiveRouteReceived Occurs when the active route is received.
(Inherited from BaseGpsReceiver)
Public eventAltitudeChanged Occurs when the altitude has changed.
(Inherited from BaseGpsReceiver)
Public eventArrival Occurs at the arrival to the destination waypoint.
(Inherited from BaseGpsReceiver)
Public eventConnected Occurs after the GPS receiver is connected.
Public eventCourseChanged Occurs when the course has changed.
(Inherited from BaseGpsReceiver)
Public eventDetecting Occurs when the GPS receiver detection is in progress and there are new values of port or baud rate in view.
Public eventDisconnected Occurs when the GPS receiver is disconnected.
Public eventDisposedOccurs when the component is disposed by a call to the Dispose method.
(Inherited from Component)
Public eventHeadingChanged Occurs when the heading has changed.
(Inherited from BaseGpsReceiver)
Public eventLatitudeChanged Occurs when the latitude has changed.
(Inherited from BaseGpsReceiver)
Public eventLongitudeChanged Occurs when the longitude has changed.
(Inherited from BaseGpsReceiver)
Public eventNewSentenceReceived Occurs when a new valid NMEA sentence is received. The sentence parameter contains the sentence.
(Inherited from BaseGpsReceiver)
Public eventPosition2DChanged Occurs when latitude or longitude has changed.
(Inherited from BaseGpsReceiver)
Public eventPosition3DChanged Occurs when latitude or longitude or altitude has changed.
(Inherited from BaseGpsReceiver)
Public eventReceived Occurs when data was received.
(Inherited from BaseGpsReceiver)
Public eventSatelliteReceived Occurs when a satellite is received.
(Inherited from BaseGpsReceiver)
Public eventSatellitesReceived Occurs when a list of all satellites in view is received.
(Inherited from BaseGpsReceiver)
Public eventSent Occurs when data was sent.
(Inherited from BaseGpsReceiver)
Public eventSpeedChanged Occurs when the speed has changed.
(Inherited from BaseGpsReceiver)
Public eventUnknownSentenceReceived Occurs when a valid, but unknown NMEA sentence is received. The sentence parameter contains the unknown sentence. This event is fired only if you set NmeaSentences property to All and there is an unknown sentence received. In this case you can write your own processing code inside this event handler.
(Inherited from BaseGpsReceiver)
Public eventWaypointReceived Occurs when a waypoint is received.
(Inherited from BaseGpsReceiver)
Top
Extension Methods
 NameDescription
Public Extension MethodCode exampleDrawCompassToWpfCanvas Draws a compass to WPF canvas.
(Defined by BaseGpsReceiverWpfExtensions)
Public Extension MethodCode exampleDrawCompassWithSkinToWpfCanvas Draws a compass, using an embedded skin to WPF canvas.
(Defined by BaseGpsReceiverWpfExtensions)
Public Extension MethodCode exampleDrawCompassWithSkinToWpfCanvas Draws a compass, using a custom skin to WPF canvas.
(Defined by BaseGpsReceiverWpfExtensions)
Public Extension MethodDrawSatellitesSignalToWpfCanvas Draw the signals of satellites in view to WPF canvas. Red brush satellite - very low signal Orange brush satellite - low signal Yellow brush satellite - medium signal Light green brush satellite - good signal Green brush satellite - very good signal
(Defined by BaseGpsReceiverWpfExtensions)
Public Extension MethodDrawSatellitesSignalToWpfCanvas Draw the signals of satellites in view to WPF canvas. Red brush satellite - very low signal Orange brush satellite - low signal Yellow brush satellite - medium signal Light green brush satellite - good signal Green brush satellite - very good signal
(Defined by BaseGpsReceiverWpfExtensions)
Public Extension MethodCode exampleDrawSatellitesToWpfCanvas Draws the satellites in view to WPF canvas. Red brush satellite - very low signal Orange brush satellite - low signal Yellow brush satellite - medium signal Light green brush satellite - good signal Green brush satellite - very good signal White pen satellite - GPS Orange red pen satellite - GLONASS Yellow pen satellite - BeiDou Blue pen satellite - Galileo Green pen satellite - QZSS Black pen satellite - Unknown
(Defined by BaseGpsReceiverWpfExtensions)
Top
Remarks
Events are raised on a secondary thread when data is received. Because these events are raised on a secondary thread, and not the main thread, attempting to modify some elements in the main thread, such as UI elements, could raise a threading exception. If it is necessary to modify elements in the main Form or Control, post change requests back using Invoke (or BeginInvoke to avoid deadlock), which will do the work on the proper thread.
See Also