|
Yate
|
Abstract SS7 layer 2 (data link) message transfer part. More...
#include <yatesig.h>
Public Types | |
| enum | LinkStatus { OutOfAlignment = 0 , NormalAlignment = 1 , EmergencyAlignment = 2 , OutOfService = 3 , ProcessorOutage = 4 , Busy = 5 , O = OutOfAlignment , N = NormalAlignment , E = EmergencyAlignment , OS = OutOfService , PO = ProcessorOutage , B = Busy } |
| enum | Operation { Pause = 0x100 , Resume = 0x200 , Align = 0x300 , Status = 0x400 } |
| enum | Inhibitions { Unchecked = 0x01 , Inactive = 0x02 , Local = 0x04 , Remote = 0x08 } |
Public Member Functions | |
| virtual bool | transmitMSU (const SS7MSU &msu)=0 |
| virtual void | recoverMSU (int sequence) |
| virtual unsigned int | status () const |
| virtual const char * | statusName (unsigned int status, bool brief) const |
| const char * | statusName (bool brief=false) const |
| virtual bool | operational () const =0 |
| unsigned int | upTime () const |
| void | attach (SS7L2User *l2user) |
| SS7L2User * | user () const |
| int | sls () const |
| void | sls (int linkSel) |
| int | inhibited () const |
| bool | inhibited (int flags) const |
| virtual unsigned int | congestion () |
| virtual int | getSequence () |
| virtual bool | control (Operation oper, NamedList *params=0) |
| virtual bool | control (NamedList ¶ms) |
Public Member Functions inherited from SignallingComponent | |
| virtual | ~SignallingComponent () |
| virtual const String & | toString () const |
| virtual bool | initialize (const NamedList *config) |
| virtual NamedList * | controlCreate (const char *oper=0) |
| virtual bool | controlExecute (NamedList *params) |
| virtual void | engine (SignallingEngine *eng) |
| SignallingEngine * | engine () const |
| int | debugLevel (int level) |
| const String & | componentType () const |
Public Member Functions inherited from RefObject | |
| RefObject () | |
| virtual | ~RefObject () |
| virtual void * | getObject (const String &name) const |
| virtual bool | alive () const |
| bool | ref () |
| bool | deref () |
| int | refcount () const |
| virtual void | destruct () |
Public Member Functions inherited from GenObject | |
| GenObject () | |
| virtual | ~GenObject () |
| virtual const String & | traceId () const |
| NamedCounter * | getObjCounter () const |
| NamedCounter * | setObjCounter (NamedCounter *counter) |
Public Member Functions inherited from DebugEnabler | |
| DebugEnabler (int level=TelEngine::debugLevel(), bool enabled=true) | |
| int | debugLevel () const |
| int | debugLevel (int level) |
| bool | debugEnabled () const |
| void | debugEnabled (bool enable) |
| const char * | debugName () const |
| bool | debugAt (int level) const |
| bool | debugChained () const |
| void | debugChain (const DebugEnabler *chain=0) |
| void | debugCopy (const DebugEnabler *original=0) |
Protected Member Functions | |
| SS7Layer2 () | |
| virtual void | timerTick (const Time &when) |
| bool | receivedMSU (const SS7MSU &msu) |
| bool | recoveredMSU (const SS7MSU &msu) |
| void | notify () |
| bool | inhibit (int setFlags, int clrFlags=0) |
| bool | getEmergency (NamedList *params=0, bool emg=false) const |
Protected Member Functions inherited from SignallingComponent | |
| SignallingComponent (const char *name=0, const NamedList *params=0, const char *type="unknown") | |
| virtual void | destroyed () |
| void | insert (SignallingComponent *component) |
| virtual void | detach () |
| void | setName (const char *name) |
| void | setCompType (const char *type) |
| unsigned long | tickSleep (unsigned long usec=1000000) const |
Protected Member Functions inherited from RefObject | |
| virtual void | zeroRefs () |
| bool | resurrect () |
Protected Member Functions inherited from DebugEnabler | |
| void | debugName (const char *name) |
Protected Attributes | |
| bool | m_autoEmergency |
| int | m_lastSeqRx |
| unsigned int | m_congestion |
Friends | |
| class | SS7MTP3 |
Additional Inherited Members | |
Static Public Member Functions inherited from SignallingComponent | |
| static bool | resolveConfig (const String &cmpName, NamedList ¶ms, const NamedList *config) |
Static Public Member Functions inherited from RefObject | |
| static bool | alive (const RefObject *obj) |
| static bool | efficientIncDec () |
Static Public Member Functions inherited from GenObject | |
| static void * | getObject (const String &name, const GenObject *obj) |
| static bool | getObjCounting () |
| static void | setObjCounting (bool enable) |
| static NamedCounter * | getObjCounter (const String &name, bool create=true) |
| static ObjList & | getObjCounters () |
Abstract SS7 layer 2 (data link) message transfer part.
An interface to a Layer 2 (data link) SS7 message transfer part
| enum Inhibitions |
Link inhibition reason bits
| enum LinkStatus |
LSSU Status Indications
| enum Operation |
Control primitives
|
inlineprotected |
Constructor
References m_autoEmergency, m_congestion, and m_lastSeqRx.
| void attach | ( | SS7L2User * | l2user | ) |
Attach a Layer 2 user component to the data link. Detach from the old one if valid
| l2user | Pointer to Layer 2 user component to attach |
Referenced by SS7MTP2::destroyed().
|
inlinevirtual |
Get the current congestion level of the link
References m_congestion.
|
virtual |
Query or modify layer's settings or operational parameters
| params | The list of parameters to query or change |
Reimplemented from SignallingComponent.
Reimplemented in SS7M2PA.
Execute a control operation. Operations can change the link status or can query the aligned status.
| oper | Operation to execute |
| params | Optional parameters for the operation |
|
protected |
Get a best guess of the emergency alignment requirement
| params | Optional parameters whose "emergency" is used |
| emg | Default emergency state |
|
inlinevirtual |
Get the sequence number of the last MSU received
Reimplemented in SS7M2UA.
References m_lastSeqRx.
|
protected |
Set and clear inhibition flags, method used by MTP3
| setFlags | Flag bits to set ORed together |
| clrFlags | Flag bits to clear ORed together (optional) |
|
inline |
Retrieve the inhibition flags set by MTP3 Management
|
inline |
Check some of the inhibition flags set by MTP3 Management
| flags | Flags to check for, ORed together |
|
protected |
Set the notify flag. The user part will be notified on timer tick about status change
|
pure virtual |
|
inlineprotected |
Push a received Message Signal Unit up the protocol stack
| msu | Message data, starting with Service Indicator Octet |
|
inlineprotected |
Push a recovered Message Signal Unit back up the protocol stack
| msu | Message data, starting with Service Indicator Octet |
|
inlinevirtual |
|
inline |
Get the Signalling Link Selection number allocated to this link
|
inline |
Assign a new Signalling Link Selection number
| linkSel | New SLS to assign to this link |
|
virtual |
Retrieve the current link status indications
Reimplemented in SS7M2PA, SS7M2UA, and SS7MTP2.
Referenced by statusName(), and statusName().
|
inline |
Get the name of the current local Layer 2 status
| brief | Request to return the short status name |
References status(), and statusName().
|
virtual |
Get the name of a Layer 2 status
| status | Status indication value |
| brief | Request to return the short status name |
References status().
Referenced by statusName().
|
protectedvirtual |
Method called periodically by the engine to keep everything alive
| when | Time to use as computing base for events and timeouts |
Reimplemented from SignallingComponent.
|
pure virtual |
|
inline |
|
inline |
Get the Layer 2 user component that works with this data link
|
protected |
Flag to automatically perform emergency alignment when linkset is down
Referenced by SS7Layer2().
|
protected |
Current congestion level
Referenced by congestion(), and SS7Layer2().
|
protected |
Last received MSU sequence number, -1 if unknown, bit 24 set if long FSN
Referenced by getSequence(), and SS7Layer2().