Yate
Public Member Functions | Protected Member Functions | Friends

ISDNQ921 Class Reference

ISDN Q.921 implementation on top of a hardware interface. More...

#include <yatesig.h>

Inheritance diagram for ISDNQ921:
ISDNLayer2 SignallingReceiver SignallingDumpable SignallingComponent SignallingComponent RefObject DebugEnabler RefObject DebugEnabler GenObject GenObject

List of all members.

Public Member Functions

 ISDNQ921 (const NamedList &params, const char *name=0, ISDNQ921Management *mgmt=0, u_int8_t tei=0)
virtual ~ISDNQ921 ()
virtual bool initialize (const NamedList *config)
u_int64_t dataTimeout () const
virtual bool multipleFrame (u_int8_t tei, bool establish, bool force)
virtual bool sendData (const DataBlock &data, u_int8_t tei, bool ack)
bool sendSabme ()
virtual void cleanup ()
void setDebug (bool printFrames, bool extendedDebug)

Protected Member Functions

virtual void destroyed ()
virtual void timerTick (const Time &when)
virtual bool receivedPacket (const DataBlock &packet)
bool receivedFrame (ISDNFrame *frame)
virtual bool notify (SignallingInterface::Notification event)
void reset ()

Friends

class ISDNQ921Management

Detailed Description

ISDN Q.921 implementation on top of a hardware interface.

Q.921 ISDN Layer 2 implementation on top of a hardware HDLC interface


Constructor & Destructor Documentation

ISDNQ921 ( const NamedList params,
const char *  name = 0,
ISDNQ921Management mgmt = 0,
u_int8_t  tei = 0 
)

Constructor Initialize this object and the component

Parameters:
paramsLayer's and TelEngine::ISDNLayer2 parameters
nameName of this component
mgmtTEI management component
teiValue of TEI for this component
virtual ~ISDNQ921 ( ) [virtual]

Destructor


Member Function Documentation

virtual void cleanup ( ) [virtual]

Emergency release. Send 'disconnect' command. Reset all data. Set state to 'Released' This method is thread safe

Implements ISDNLayer2.

u_int64_t dataTimeout ( ) const [inline]

Get the timeout of a data frame. After that, a higher layer may retransmit data

Returns:
The timeout of a data frame
virtual void destroyed ( ) [inline, protected, virtual]
virtual bool initialize ( const NamedList config) [virtual]

Configure and initialize Q.921 and its interface

Parameters:
configOptional configuration parameters override
Returns:
True if Q.921 and the interface were initialized properly

Reimplemented from SignallingComponent.

virtual bool multipleFrame ( u_int8_t  tei,
bool  establish,
bool  force 
) [virtual]

Implements Q.921 DL-ESTABLISH and DL-RELEASE request primitives If accepted, the primitive is enqueued for further processing This method is thread safe

Parameters:
teiThis layer's TEI
establishTrue to establish. False to release
forceTrue to establish even if we already are in this mode. This parameter is ignored if establish is false
Returns:
True if the request was accepted

Reimplemented from ISDNLayer2.

virtual bool notify ( SignallingInterface::Notification  event) [protected, virtual]

Process a notification generated by the attached interface This method is thread safe

Parameters:
eventNotification event reported by the interface
Returns:
True if notification was processed

Reimplemented from SignallingReceiver.

bool receivedFrame ( ISDNFrame frame) [protected]

Process the frame received

Parameters:
framePointer to frame to process
Returns:
True if the frame was processed
virtual bool receivedPacket ( const DataBlock packet) [protected, virtual]

Process a packet received by the receiver's interface This method is thread safe

Parameters:
packetThe received packet
Returns:
True if message was successfully processed

Implements SignallingReceiver.

void reset ( ) [protected]

Reset object if not in Released state. Drop all frames This method is thread safe

virtual bool sendData ( const DataBlock data,
u_int8_t  tei,
bool  ack 
) [virtual]

Implements Q.921 DL-DATA and DL-UNIT DATA request primitives Send data through the HDLC interface This method is thread safe

Parameters:
dataData to send
teiThe TEI to send with the data frane
ackTrue to send an acknowledged frame, false to send an unacknowledged one
Returns:
False if the request was not accepted or send operation failed

Reimplemented from ISDNLayer2.

bool sendSabme ( ) [inline]

Send a SABME frame to reset the layer

Returns:
True if a SABME frame was sent
void setDebug ( bool  printFrames,
bool  extendedDebug 
) [inline]

Set debug data of this layer

Parameters:
printFramesEnable/disable frame printing on output
extendedDebugEnable/disable hex data dump if print frames is enabled
virtual void timerTick ( const Time when) [protected, virtual]

Method called periodically to check timeouts This method is thread safe

Parameters:
whenTime to use as computing base for events and timeouts

Reimplemented from SignallingComponent.


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