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:
name Name of this component

Member Function Documentation

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

Attach an ISDN Q.921 Layer 2

Parameters:
layer2 Pointer 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:
tei The TEI of the command or response
cmd True if received a command, false if received a response
value The 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
layer2 Pointer 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:
layer2 Pointer 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:
tei The TEI of the frame
confirm True if this is a confirmation of a previous request. False if it is an indication of state change on remote request
timeout True if the reason is a timeout
layer2 Pointer 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:
tei The TEI of the frame
confirm True if this is a confirmation of a previous request. False if it is an indication of state change on remote request
timeout True if the reason is a timeout.
layer2 Pointer 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:
data Received data
tei The TEI of the received frame
layer2 Pointer to the sender

Implemented in ISDNQ921Management, ISDNQ931, and ISDNQ931Monitor.


The documentation for this class was generated from the following file:
Generated on Thu Apr 8 18:22:42 2010 for Yate by  doxygen 1.6.3