Yate
Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Friends

SignallingInterface Class Reference

Abstract digital signalling interface (hardware access) More...

#include <yatesig.h>

Inheritance diagram for SignallingInterface:
SignallingComponent RefObject DebugEnabler GenObject

List of all members.

Public Types

enum  Operation {
  Specific = 0, EnableTx = 0x01, EnableRx = 0x02, Enable = 0x03,
  DisableTx = 0x04, DisableRx = 0x08, Disable = 0x0c, FlushTx = 0x10,
  FlushRx = 0x20, Flush = 0x30, QueryTx = 0x40, QueryRx = 0x80,
  Query = 0xc0
}
enum  Notification {
  LinkUp = 0, LinkDown, HardwareError, TxClockError,
  RxClockError, AlignError, CksumError, TxOversize,
  RxOversize, TxOverflow, RxOverflow, TxUnderrun,
  RxUnderrun
}
enum  PacketType {
  Unknown = 0, SS7Fisu, SS7Lssu, SS7Msu,
  Q921
}

Public Member Functions

 SignallingInterface ()
virtual ~SignallingInterface ()
virtual void attach (SignallingReceiver *receiver)
SignallingReceiverreceiver () const
virtual bool control (Operation oper, NamedList *params=0)

Static Public Attributes

static TokenDict s_notifName []

Protected Member Functions

virtual bool transmitPacket (const DataBlock &packet, bool repeat, PacketType type)=0
bool receivedPacket (const DataBlock &packet)
bool notify (Notification event)

Friends

class SignallingReceiver

Detailed Description

Abstract digital signalling interface (hardware access)

An interface to an abstraction of a Layer 1 (hardware HDLC) interface


Member Enumeration Documentation

Interface generated notifications

enum Operation

Interface control operations

enum PacketType

Packet types


Constructor & Destructor Documentation

SignallingInterface ( ) [inline]

Constructor

virtual ~SignallingInterface ( ) [virtual]

Destructor, stops and detaches the interface


Member Function Documentation

virtual void attach ( SignallingReceiver receiver) [virtual]

Attach a receiver to the interface. Detach from the old one if valid

Parameters:
receiverPointer to receiver to attach
virtual bool control ( Operation  oper,
NamedList params = 0 
) [virtual]

Execute a control operation. Operations can enable, disable or flush the transmitter, receiver or both. The status (enabled/disabled) can be queried and also interface-specific operations can be executed.

Parameters:
operOperation to execute
paramsOptional parameters for the operation
Returns:
True if the command completed successfully, for query operations also indicates the interface is enabled and operational
bool notify ( Notification  event) [protected]

Generate a notification event to the attached receiver

Parameters:
eventNotification event to be reported
Returns:
True if notification was accepted by the receiver
bool receivedPacket ( const DataBlock packet) [protected]

Push a valid received Signalling Packet up the protocol stack. The starting and ending flags and any CRC are not part of the data.

Returns:
True if packet was successfully delivered to the receiver
SignallingReceiver* receiver ( ) const [inline]

Retrive the signalling receiver attached to this interface

Returns:
Pointer to attached receiver, NULL if none
virtual bool transmitPacket ( const DataBlock packet,
bool  repeat,
PacketType  type 
) [protected, pure virtual]

Transmit a packet over the hardware interface

Parameters:
packetPacket data to send
repeatContinuously send a copy of the packet while no other data is available for transmission
typeType of the packet to send
Returns:
True if the interface accepted the packet

Member Data Documentation

TokenDict s_notifName[] [static]

Keeps the names associated with the notifications


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