class NMEAProtocol(LineReceiver, _sentence._PositioningSentenceProducerMixin): (source)
Constructor: NMEAProtocol(receiver, sentenceCallback)
A protocol that parses and verifies the checksum of an NMEA sentence (in string form, not NMEASentence
), and delegates to a receiver.
It receives lines and verifies these lines are NMEA sentences. If they are, verifies their checksum and unpacks them into their components. It then wraps them in NMEASentence
objects and calls the appropriate receiver method with them.
Parameters | |
receiver | A receiver for NMEAProtocol sentence objects. |
sentence | A function that will be called with a new NMEASentence when it is created. Useful for massaging data from particularly misbehaving NMEA receivers. |
Method | __init__ |
Initializes an NMEAProtocol. |
Method | line |
Parses the data from the sentence and validates the checksum. |
Constant | _SENTENCE |
Has the field names in an NMEA sentence for each sentence type (in order, obviously). |
Instance Variable | _receiver |
Undocumented |
Instance Variable | _sentence |
Undocumented |
Inherited from LineReceiver
:
Method | clear |
Clear buffered data. |
Method | data |
Protocol.dataReceived. Translates bytes into lines, and calls lineReceived (or rawDataReceived, depending on mode.) |
Method | line |
Called when the maximum line length has been reached. Override if it needs to be dealt with in some special way. |
Method | raw |
Override this for when raw data is received. |
Method | send |
Sends a line to the other end of the connection. |
Method | set |
Sets the line-mode of this receiver. |
Method | set |
Sets the raw mode of this receiver. Further data received will be sent to rawDataReceived rather than lineReceived. |
Constant | MAX |
The maximum length of a line to allow (If a sent line is longer than this, the connection is dropped). Default is 16384. |
Class Variable | delimiter |
The line-ending delimiter to use. By default this is b'\r\n'. |
Instance Variable | line |
Undocumented |
Instance Variable | _buffer |
Undocumented |
Instance Variable | _busy |
Undocumented |
Inherited from Protocol
(via LineReceiver
):
Method | connection |
Called when the connection is shut down. |
Method | log |
Return a prefix matching the class name, to identify log messages related to this protocol instance. |
Class Variable | factory |
Undocumented |
Inherited from BaseProtocol
(via LineReceiver
, Protocol
):
Method | connection |
Called when a connection is made. |
Method | make |
Make a connection to a transport and a server. |
Instance Variable | connected |
Undocumented |
Instance Variable | transport |
Undocumented |
Inherited from _PauseableMixin
(via LineReceiver
, Protocol
, BaseProtocol
):
Method | pause |
Undocumented |
Method | resume |
Undocumented |
Method | stop |
Undocumented |
Instance Variable | paused |
Undocumented |
Inherited from _PositioningSentenceProducerMixin
(via LineReceiver
, Protocol
, BaseProtocol
, _PauseableMixin
):
Class Method | get |
Returns a set of all attributes that might be found in the sentences produced by this protocol. |
Initializes an NMEAProtocol.
Parameters | |
receiver:INMEAReceiver | A receiver for NMEAProtocol sentence objects. |
sentence | A function that will be called with a new NMEASentence when it is created. Useful for massaging data from particularly misbehaving NMEA receivers. |
Parses the data from the sentence and validates the checksum.
Parameters | |
raw | The NMEA positioning sentence. |