''' <summary>
''' Interface des implémentations des recepteurs
''' </summary>
''' <remarks></remarks>
Public Interface IRecepteur

    ''' <summary>
    ''' Enumération des états de la connexion
    ''' </summary>
    ''' <remarks></remarks>
    <Flags()> Enum eState
        ''' <summary>
        ''' Inconnu
        ''' </summary>
        ''' <remarks></remarks>
        Unknow = 0
        ''' <summary>
        ''' Connexion fermée
        ''' </summary>
        ''' <remarks></remarks>
        Closed = 1
        ''' <summary>
        ''' Connexion à l'écoute / connectée
        ''' </summary>
        ''' <remarks></remarks>
        Listening = 2
        ''' <summary>
        ''' Un ou plus clients connectés
        ''' </summary>
        ''' <remarks></remarks>
        OneOrMoreClientConnected = 4
    End Enum


    ''' <summary>
    ''' Delegate de l'evenement FrameRecept
    ''' </summary>
    ''' <param name="pSender">Emmeteur de l'event</param>
    ''' <param name="pFrameReceived">Trame reçue</param>
    ''' <param name="pFrameSend">Trame à répondre</param>
    ''' <remarks></remarks>
    Delegate Sub DlgRecept(ByVal pSender As IRecepteur, ByVal pFrameReceived As Frame.ClsFrameModbusBase, ByRef pFrameSend As Frame.ClsFrameModbusBase)

    ''' <summary>
    ''' Evenement géréré lors de la réception d'un trame
    ''' </summary>
    ''' <remarks></remarks>
    Event FrameRececpt As DlgRecept


    ReadOnly Property ConnexionType() As IAnimCom.EConnexType

    ReadOnly Property State() As eState

    ReadOnly Property StringParam() As String


    Function Open() As Boolean

    Sub Close()


End Interface
