|
|
An interface to an abstraction of a Layer 1 (hardware HDLC) interface
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 } | Operation |
Interface control operations
enum Notification { LinkUp = 0, LinkDown, HardwareError, TxClockError, RxClockError, AlignError, CksumError, TxOversize, RxOversize, TxOverflow, RxOverflow, TxUnderrun, RxUnderrun, } | Notification |
Interface generated notifications
enum PacketType { Unknown = 0, SS7Fisu, SS7Lssu, SS7Msu, Q921 } | PacketType |
Packet types
inline SignallingInterface ()
| SignallingInterface |
Constructor
~SignallingInterface ()
| ~SignallingInterface |
[virtual]
Destructor, stops and detaches the interface
void attach (SignallingReceiver* receiver)
| attach |
[virtual]
Attach a receiver to the interface. Detach from the old one if valid
Parameters:
receiver | Pointer to receiver to attach |
inline SignallingReceiver* receiver ()
| receiver |
[const]
Retrieve the signalling receiver attached to this interface
Returns: Pointer to attached receiver, NULL if none
bool control (Operation oper, NamedList* params = 0)
| control |
[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:
oper | Operation to execute |
params | Optional parameters for the operation |
Returns: True if the command completed successfully, for query operations also indicates the interface is enabled and operational
Reimplemented from SignallingComponent.
static const TokenDict s_notifName[] | s_notifName[] |
bool transmitPacket (const DataBlock& packet, bool repeat, PacketType type)
| transmitPacket |
[protected pure virtual]
Transmit a packet over the hardware interface
Parameters:
packet | Packet data to send |
repeat | Continuously send a copy of the packet while no other data is available for transmission |
type | Type of the packet to send |
Returns: True if the interface accepted the packet
bool receivedPacket (const DataBlock& packet)
| receivedPacket |
[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
bool notify (Notification event)
| notify |
[protected]
Generate a notification event to the attached receiver
Parameters:
event | Notification event to be reported |
Returns: True if notification was accepted by the receiver
Generated by: paulc on bussard on Mon Feb 10 13:15:47 2014, using kdoc 2.0a54. |