U
    
W[Å  ã                   @   sb   d Z ddlmZmZ ddlmZmZ G dd„ deƒZG dd„ deƒZG dd	„ d	eƒZ	ddd	gZ
d
S )z'
Positioning interfaces.

@since: 14.0
é    )Úabsolute_importÚdivision)Ú	AttributeÚ	Interfacec                   @   sP   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zd
d„ Zdd„ Z	dd„ Z
dd„ ZdS )ÚIPositioningReceiverz1
    An interface for positioning providers.
    c                 C   s   dS )a>  
        Method called when a position is received.

        @param latitude: The latitude of the received position.
        @type latitude: L{twisted.positioning.base.Coordinate}
        @param longitude: The longitude of the received position.
        @type longitude: L{twisted.positioning.base.Coordinate}
        N© )ZlatitudeZ	longituder   r   úB/usr/lib/python3/dist-packages/twisted/positioning/ipositioning.pyÚpositionReceived   s    z%IPositioningReceiver.positionReceivedc                 C   s   dS )zÀ
        Method called when position error is received.

        @param positioningError: The position error.
        @type positioningError: L{twisted.positioning.base.PositionError}
        Nr   )ZpositionErrorr   r   r   ÚpositionErrorReceived   s    z*IPositioningReceiver.positionErrorReceivedc                 C   s   dS )zÓ
        Method called when time and date information arrives.

        @param time: The date and time (expressed in UTC unless otherwise
            specified).
        @type time: L{datetime.datetime}
        Nr   )Útimer   r   r   ÚtimeReceived%   s    z!IPositioningReceiver.timeReceivedc                 C   s   dS )z¡
        Method called when a true heading is received.

        @param heading: The heading.
        @type heading: L{twisted.positioning.base.Heading}
        Nr   )Zheadingr   r   r   ÚheadingReceived/   s    z$IPositioningReceiver.headingReceivedc                 C   s   dS )z¢
        Method called when an altitude is received.

        @param altitude: The altitude.
        @type altitude: L{twisted.positioning.base.Altitude}
        Nr   )Zaltituder   r   r   ÚaltitudeReceived8   s    z%IPositioningReceiver.altitudeReceivedc                 C   s   dS )z§
        Method called when the speed is received.

        @param speed: The speed of a mobile object.
        @type speed: L{twisted.positioning.base.Speed}
        Nr   )Zspeedr   r   r   ÚspeedReceivedA   s    z"IPositioningReceiver.speedReceivedc                 C   s   dS )z©
        Method called when the climb is received.

        @param climb: The climb of the mobile object.
        @type climb: L{twisted.positioning.base.Climb}
        Nr   )Zclimbr   r   r   ÚclimbReceivedJ   s    z"IPositioningReceiver.climbReceivedc                 C   s   dS )zÚ
        Method called when positioning beacon information is received.

        @param beaconInformation: The beacon information.
        @type beaconInformation: L{twisted.positioning.base.BeaconInformation}
        Nr   )ZbeaconInformationr   r   r   ÚbeaconInformationReceivedR   s    z.IPositioningReceiver.beaconInformationReceivedN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r	   r
   r   r   r   r   r   r   r   r   r   r   r      s   
			r   c                   @   s   e Zd ZdZedƒZdS )ÚIPositioningBeaconz
    A positioning beacon.
    z‚
        A unique identifier for this beacon. The type is dependent on the
        implementation, but must be immutable.
        N)r   r   r   r   r   Z
identifierr   r   r   r   r   \   s   ÿr   c                   @   s   e Zd ZdZdd„ ZdS )ÚINMEAReceiverz/
    An object that can receive NMEA data.
    c                 C   s   dS )z©
        Method called when a sentence is received.

        @param sentence: The received NMEA sentence.
        @type L{twisted.positioning.nmea.NMEASentence}
        Nr   )Zsentencer   r   r   ÚsentenceReceivedl   s    zINMEAReceiver.sentenceReceivedN)r   r   r   r   r   r   r   r   r   r   h   s   r   N)r   Z
__future__r   r   Zzope.interfacer   r   r   r   r   Ú__all__r   r   r   r   Ú<module>   s   Ný