# class SS7Label | SS7 Routing Label. More...
Full name | `TelEngine::SS7Label`
Definition | `#include <libs/ysig/yatesig.h>`
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

#### Public Methods

- SS7Label ()
- SS7Label (const SS7Label& original)
- SS7Label (const SS7Label& original, unsigned char sls, unsigned char spare = 0)
- SS7Label (SS7PointCode::Type type, const SS7PointCode& dpc, const SS7PointCode& opc, unsigned char sls, unsigned char spare = 0)
- SS7Label (SS7PointCode::Type type, unsigned int dpc, unsigned int opc, unsigned char sls, unsigned char spare = 0)
- SS7Label (SS7PointCode::Type type, const SS7MSU& msu)
- void assign (SS7PointCode::Type type, const SS7PointCode& dpc, const SS7PointCode& opc, unsigned char sls, unsigned char spare = 0)
- void assign (SS7PointCode::Type type, unsigned int dpc, unsigned int opc, unsigned char sls, unsigned char spare = 0)
- bool assign (SS7PointCode::Type type, const SS7MSU& msu)
- bool assign (SS7PointCode::Type type, const unsigned char* src, int len = -1)
- bool store (unsigned char* dest) const
- bool compatible (SS7PointCode::Type type) const
- inline SS7PointCode::Type type () const
- inline const SS7PointCode& dpc () const
- inline SS7PointCode& dpc ()
- inline const SS7PointCode& opc () const
- inline SS7PointCode& opc ()
- inline unsigned char sls () const
- inline void setSls (unsigned char sls)
- inline unsigned char spare () const
- inline void setSpare (unsigned char spare)
- inline unsigned int length () const
- inline unsigned char size () const

#### Public Static Methods

- static unsigned int length (SS7PointCode::Type type)
- static unsigned char size (SS7PointCode::Type type)

## Detailed Description

A SS7 Layer 3 routing label, both ANSI and ITU capable

SS7Label () | ### SS7Label

Constructor of an empty, invalid label

SS7Label (const SS7Label& original) | ### SS7Label

Copy constructor

Parameters:

original | Label to copy

SS7Label (const SS7Label& original, unsigned char sls, unsigned char spare = 0) | ### SS7Label

Swapping constructor, puts SPC into DPC and the other way around

Parameters:

original | Label to swap
sls | Signalling Link Selection
spare | Spare bits

SS7Label (SS7PointCode::Type type, const SS7PointCode& dpc, const SS7PointCode& opc, unsigned char sls, unsigned char spare = 0) | ### SS7Label

Constructor from label components

Parameters:

type | Type of point code used to pack the label
dpc | Destination Point Code
opc | Originating Point Code
sls | Signalling Link Selection
spare | Spare bits

SS7Label (SS7PointCode::Type type, unsigned int dpc, unsigned int opc, unsigned char sls, unsigned char spare = 0) | ### SS7Label

Constructor from packed label components

Parameters:

type | Type of point code used to pack the label
dpc | Destination Point Code
opc | Originating Point Code
sls | Signalling Link Selection
spare | Spare bits

SS7Label (SS7PointCode::Type type, const SS7MSU& msu) | ### SS7Label

Constructor from type and received MSU

Parameters:

type | Type of point code to use to decode the MSU
msu | A received MSU to be parsed

void assign (SS7PointCode::Type type, const SS7PointCode& dpc, const SS7PointCode& opc, unsigned char sls, unsigned char spare = 0) | ### assign

Assignment from label components

Parameters:

type | Type of point code used to pack the label
dpc | Destination Point Code
opc | Originating Point Code
sls | Signalling Link Selection
spare | Spare bits

void assign (SS7PointCode::Type type, unsigned int dpc, unsigned int opc, unsigned char sls, unsigned char spare = 0) | ### assign

Assignment from packed label components

Parameters:

type | Type of point code used to pack the label
dpc | Destination Point Code
opc | Originating Point Code
sls | Signalling Link Selection
spare | Spare bits

bool assign (SS7PointCode::Type type, const SS7MSU& msu) | ### assign

Assignment from type and received MSU

Parameters:

type | Type of point code to use to decode the MSU
msu | A received MSU to be parsed

Returns: True if the assignment succeeded

bool assign (SS7PointCode::Type type, const unsigned char* src, int len = -1) | ### assign

Assignment from a packed memory block

Parameters:

type | Type of the point codes in memory block
src | Pointer to packed label in memory
len | Length of data, negative to not check validity

Returns: True if success, false if invalid type or memory area

bool store (unsigned char* dest) | ### store

[const]

Pack and store the label in a memory location

Parameters:

dest | Location to store the label info, must be at least length() long

Returns: True on success, false if type is invalid

bool compatible (SS7PointCode::Type type) | ### compatible

[const]

Check if the label is compatible with another packing type

Returns: True if the DLC, SLC and SLS fit in the new packing format

inline SS7PointCode::Type type () | ### type

[const]

Get the type (SS7 dialect) of the routing label

Returns: Dialect of the routing label as enumeration

inline const SS7PointCode& dpc () | ### dpc

[const]

Get the Destination Code Point inside the label

Returns: Reference of the destination code point

inline SS7PointCode& dpc () | ### dpc

Get a writable reference to the Destination Code Point inside the label

Returns: Reference of the destination code point

inline const SS7PointCode& opc () | ### opc

[const]

Get the Originating Code Point inside the label

Returns: Reference of the source code point

inline SS7PointCode& opc () | ### opc

Get a writable reference to the Originating Code Point inside the label

Returns: Reference of the originating code point

inline unsigned char sls () | ### sls

[const]

Get the Signalling Link Selection inside the label

Returns: Value of the SLS field

inline void setSls (unsigned char sls) | ### setSls

Set the Signalling Link Selection inside the label

Parameters:

sls | New value of the SLS/SLC field

inline unsigned char spare () | ### spare

[const]

Get the spare bits inside the label

Returns: Value of the bits not included in DPC, OPC, or SLS

inline void setSpare (unsigned char spare) | ### setSpare

Set the spare bits inside the label

Parameters:

spare | New value of the spare bits

inline unsigned int length () | ### length

[const]

Get the length (in bytes) of this routing label

Returns: Number of bytes required to represent the label, zero if unknown

unsigned int length (SS7PointCode::Type type) | ### length

[static]

Get the length (in bytes) of a packed routing label according to its type

Parameters:

type | Type of the packing

Returns: Number of bytes required to represent the label, zero if unknown

inline unsigned char size () | ### size

[const]

Get the size (in bits) of this routing label except the spare bits

Returns: Number of bits required to represent this label, zero if unknown

unsigned char size (SS7PointCode::Type type) | ### size

[static]

Get the size (in bits) of a packed routing label according to its type

Parameters:

type | Type of the packing

Returns: Number of bits required to represent the label, zero if unknown

Generated by: paulc on bussard on Mon Feb 10 13:15:47 2014, using kdoc 2.0a54.