Yate
Public Member Functions | Protected Member Functions

ISDNLayer3 Class Reference

Abstract ISDN layer 3 (Q.931) message transport. More...

#include <yatesig.h>

Inheritance diagram for ISDNLayer3:
SignallingComponent RefObject DebugEnabler GenObject ISDNQ921Management ISDNQ931 ISDNQ931Monitor

List of all members.

Public Member Functions

virtual void multipleFrameEstablished (u_int8_t tei, bool confirm, bool timeout, ISDNLayer2 *layer2)
virtual void multipleFrameReleased (u_int8_t tei, bool confirm, bool timeout, ISDNLayer2 *layer2)
virtual void dataLinkState (u_int8_t tei, bool cmd, bool value, ISDNLayer2 *layer2)
virtual void idleTimeout (ISDNLayer2 *layer2)
virtual void receiveData (const DataBlock &data, u_int8_t tei, ISDNLayer2 *layer2)=0
virtual ISDNLayer2attach (ISDNLayer2 *layer2)

Protected Member Functions

 ISDNLayer3 (const char *name=0)
Mutexl3Mutex ()

Detailed Description

Abstract ISDN layer 3 (Q.931) message transport.

An interface to a Layer 3 (Q.931) ISDN message transport


Constructor & Destructor Documentation

ISDNLayer3 ( const char *  name = 0) [inline, protected]

Constructor Initialize the component

Parameters:
nameName of this component

Member Function Documentation

virtual ISDNLayer2* attach ( ISDNLayer2 layer2) [inline, virtual]

Attach an ISDN Q.921 Layer 2

Parameters:
layer2Pointer to the Q.921 Layer 2 to attach
Returns:
Pointer to the detached Layer 2 or NULL

Reimplemented in ISDNQ931.

virtual void dataLinkState ( u_int8_t  tei,
bool  cmd,
bool  value,
ISDNLayer2 layer2 
) [inline, virtual]

Notification from layer 2 of data link set/release command or response Used for stateless layer 2

Parameters:
teiThe TEI of the command or response
cmdTrue if received a command, false if received a response
valueThe value of the notification If 'cmd' is true (command), the value is true if a request to establish data link was received or false if received a request to release data link If 'cmd' is false (response), the value is the response
layer2Pointer to the notifier

Reimplemented in ISDNQ921Management, and ISDNQ931Monitor.

virtual void idleTimeout ( ISDNLayer2 layer2) [inline, virtual]

Notification from layer 2 of data link idle timeout Used for stateless layer 2

Parameters:
layer2Pointer to the notifier

Reimplemented in ISDNQ931Monitor.

Mutex& l3Mutex ( ) [inline, protected]

Retrieve the layer's mutex

Returns:
Reference to the Layer 3 mutex
virtual void multipleFrameEstablished ( u_int8_t  tei,
bool  confirm,
bool  timeout,
ISDNLayer2 layer2 
) [inline, virtual]

Implements Q.921 DL-ESTABLISH indication/confirmation primitive: 'multiple frame acknowledged' mode established

Parameters:
teiThe TEI of the frame
confirmTrue if this is a confirmation of a previous request. False if it is an indication of state change on remote request
timeoutTrue if the reason is a timeout
layer2Pointer to the notifier

Reimplemented in ISDNQ921Management, and ISDNQ931.

virtual void multipleFrameReleased ( u_int8_t  tei,
bool  confirm,
bool  timeout,
ISDNLayer2 layer2 
) [inline, virtual]

Implements Q.921 DL-RELEASE indication/confirmation primitive: 'multiple frame acknowledged' mode released

Parameters:
teiThe TEI of the frame
confirmTrue if this is a confirmation of a previous request. False if it is an indication of state change on remote request
timeoutTrue if the reason is a timeout.
layer2Pointer to the notifier

Reimplemented in ISDNQ921Management, and ISDNQ931.

virtual void receiveData ( const DataBlock data,
u_int8_t  tei,
ISDNLayer2 layer2 
) [pure virtual]

Implements Q.921 DL-DATA and DL-UNIT DATA indication primitives Receive data from remote peer

Parameters:
dataReceived data
teiThe TEI of the received frame
layer2Pointer to the sender

Implemented in ISDNQ921Management, ISDNQ931, and ISDNQ931Monitor.


The documentation for this class was generated from the following file: