class documentation

class NMEAProtocol(LineReceiver, _sentence._PositioningSentenceProducerMixin): (source)

View In Hierarchy

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
receiverA receiver for NMEAProtocol sentence objects.
sentenceCallbackA 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 lineReceived Parses the data from the sentence and validates the checksum.
Class Variable _SENTENCE_CONTENTS Has the field names in an NMEA sentence for each sentence type (in order, obviously).
Instance Variable _receiver Undocumented
Instance Variable _sentenceCallback Undocumented

Inherited from LineReceiver:

Method clearLineBuffer Clear buffered data.
Method dataReceived Protocol.dataReceived. Translates bytes into lines, and calls lineReceived (or rawDataReceived, depending on mode.)
Method lineLengthExceeded Called when the maximum line length has been reached. Override if it needs to be dealt with in some special way.
Method rawDataReceived Override this for when raw data is received.
Method sendLine Sends a line to the other end of the connection.
Method setLineMode Sets the line-mode of this receiver.
Method setRawMode Sets the raw mode of this receiver. Further data received will be sent to rawDataReceived rather than lineReceived.
Class Variable delimiter The line-ending delimiter to use. By default this is b'\r\n'.
Class Variable MAX_LENGTH The maximum length of a line to allow (If a sent line is longer than this, the connection is dropped). Default is 16384.
Instance Variable line_mode Undocumented
Instance Variable _buffer Undocumented
Instance Variable _busyReceiving Undocumented

Inherited from Protocol (via LineReceiver):

Method connectionLost Called when the connection is shut down.
Method logPrefix 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 connectionMade Called when a connection is made.
Method makeConnection Make a connection to a transport and a server.
Instance Variable connected Undocumented
Instance Variable transport Undocumented

Inherited from _PauseableMixin (via LineReceiver):

Method pauseProducing Undocumented
Method resumeProducing Undocumented
Method stopProducing Undocumented
Instance Variable paused Undocumented

Inherited from _PositioningSentenceProducerMixin:

Class Method getSentenceAttributes Returns a set of all attributes that might be found in the sentences produced by this protocol.
def __init__(self, receiver, sentenceCallback=None): (source)
Initializes an NMEAProtocol.
Parameters
receiver:INMEAReceiverA receiver for NMEAProtocol sentence objects.
sentenceCallback:unary callableA function that will be called with a new NMEASentence when it is created. Useful for massaging data from particularly misbehaving NMEA receivers.
def lineReceived(self, rawSentence): (source)
Parses the data from the sentence and validates the checksum.
Parameters
rawSentence:bytesThe NMEA positioning sentence.
_SENTENCE_CONTENTS: dict of bytestrings to lists of str = (source)
Has the field names in an NMEA sentence for each sentence type (in order, obviously).
_receiver = (source)

Undocumented

_sentenceCallback = (source)

Undocumented