# class SS7MSU | A block of data that holds a Message Signal Unit. More...
Full name | `TelEngine::SS7MSU`
Definition | `#include <libs/ysig/yatesig.h>`
Inherits | TelEngine::DataBlock [public ]
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

#### Public Types

- enum Services { SNM = 0, MTN = 1, MTNS = 2, SCCP = 3, TUP = 4, ISUP = 5, DUP_C = 6, DUP_F = 7, MTP_T = 8, BISUP = 9, SISUP = 10, AAL2 = 12, BICC = 13, GCP = 14, }
- enum Priority { Regular = 0x00, Special = 0x10, Circuit = 0x20, Facility = 0x30 }
- enum NetIndicator { International = 0x00, SpareInternational = 0x40, National = 0x80, ReservedNational = 0xc0 }

#### Public Methods

- inline SS7MSU ()
- inline SS7MSU (const SS7MSU& value)
- inline SS7MSU (const DataBlock& value)
- inline SS7MSU (void* value, unsigned int len, bool copyData = true)
- SS7MSU (unsigned char sio, const SS7Label label, void* value = 0, unsigned int len = 0)
- SS7MSU (unsigned char sif, unsigned char ssf, const SS7Label label, void* value = 0, unsigned int len = 0)
- virtual ~SS7MSU ()
- inline SS7MSU& operator= (const SS7MSU& value)
- inline SS7MSU& operator= (const DataBlock& value)
- bool valid () const
- inline unsigned char* getData (unsigned int offs, unsigned int len = 1)
- inline const unsigned char* getData (unsigned int offs, unsigned int len = 1) const
- inline unsigned char* getData (const SS7Label& label, unsigned int len = 1)
- inline const unsigned char* getData (const SS7Label& label, unsigned int len = 1) const
- inline int getSIO () const
- inline int getSIF () const
- inline int getSSF () const
- inline int getPrio () const
- inline int getNI () const
- const char* getServiceName () const
- const char* getPriorityName () const
- const char* getIndicatorName () const

#### Public Static Methods

- static unsigned char getPriority (const char* name, unsigned char defVal = Regular)
- static unsigned char getNetIndicator (const char* name, unsigned char defVal = National)

## Detailed Description

A raw data block with a little more understanding about MSU format

enum Services { SNM = 0, MTN = 1, MTNS = 2, SCCP = 3, TUP = 4, ISUP = 5, DUP_C = 6, DUP_F = 7, MTP_T = 8, BISUP = 9, SISUP = 10, AAL2 = 12, BICC = 13, GCP = 14, } | ### Services

Service indicator values

enum Priority { Regular = 0x00, Special = 0x10, Circuit = 0x20, Facility = 0x30 } | ### Priority

Priority values

enum NetIndicator { International = 0x00, SpareInternational = 0x40, National = 0x80, ReservedNational = 0xc0 } | ### NetIndicator

Subservice types

inline SS7MSU () | ### SS7MSU

Empty MSU constructor

inline SS7MSU (const SS7MSU& value) | ### SS7MSU

Copy constructor

Parameters:

value | Original MSU

inline SS7MSU (const DataBlock& value) | ### SS7MSU

Constructor from data block

Parameters:

value | Raw data block to copy

inline SS7MSU (void* value, unsigned int len, bool copyData = true) | ### SS7MSU

Constructor of an initialized MSU

Parameters:

value | Data to assign, may be NULL to fill with zeros
len | Length of data, may be zero (then value is ignored)
copyData | True to make a copy of the data, false to use the pointer

SS7MSU (unsigned char sio, const SS7Label label, void* value = 0, unsigned int len = 0) | ### SS7MSU

Constructor from routing label and raw data

Parameters:

sio | Service Information Octet
label | Routing label
len | Length of data, may be zero (then value is ignored)
value | Data to assign, may be NULL to fill with zeros

SS7MSU (unsigned char sif, unsigned char ssf, const SS7Label label, void* value = 0, unsigned int len = 0) | ### SS7MSU

Constructor from routing label and raw data

Parameters:

sif | Service Information Field
ssf | Subservice Field
label | Routing label
len | Length of data, may be zero (then value is ignored)
value | Data to assign, may be NULL to fill with zeros

~SS7MSU () | ### ~SS7MSU

[virtual]

Destructor

inline SS7MSU& operator= (const SS7MSU& value) | ### operator=

Assignment operator

Parameters:

value | Original MSU

Returns: A reference to this MSU

Reimplemented from DataBlock.

inline SS7MSU& operator= (const DataBlock& value) | ### operator=

Assignment operator from data block

Parameters:

value | Data block to assign

Returns: A reference to this MSU

Reimplemented from DataBlock.

bool valid () | ### valid

[const]

Check if the MSU length appears valid

Returns: True if the MSU length is valid

inline unsigned char* getData (unsigned int offs, unsigned int len = 1) | ### getData

Get a pointer to raw data

Parameters:

offs | Offset in the MSU
len | Minimum length of data requested

Returns: Pointer to data or NULL if invalid offset or length

inline const unsigned char* getData (unsigned int offs, unsigned int len = 1) | ### getData

[const]

Get a const pointer to raw data

Parameters:

offs | Offset in the MSU
len | Minimum length of data requested

Returns: Pointer to data or NULL if invalid offset or length

inline unsigned char* getData (const SS7Label& label, unsigned int len = 1) | ### getData

Get a pointer to raw user part data after a routing label

Parameters:

label | Routing label of the MSU
len | Minimum length of data requested

Returns: Pointer to data or NULL if invalid offset or length

inline const unsigned char* getData (const SS7Label& label, unsigned int len = 1) | ### getData

[const]

Get a const pointer to raw user part data after a routing label

Parameters:

label | Routing label of the MSU
len | Minimum length of data requested

Returns: Pointer to data or NULL if invalid offset or length

inline int getSIO () | ### getSIO

[const]

Retrieve the Service Information Octet

Returns: Value of the SIO or -1 if the MSU is empty

inline int getSIF () | ### getSIF

[const]

Retrieve the Service Information Field

Returns: Value of the SIF or -1 if the MSU is empty

inline int getSSF () | ### getSSF

[const]

Retrieve the Subservice Field (SSF)

Returns: Value of the subservice or -1 if the MSU is empty

inline int getPrio () | ### getPrio

[const]

Retrieve the Priority Field

Returns: Value of the priority or -1 if the MSU is empty

inline int getNI () | ### getNI

[const]

Retrieve the Network Indicator (NI)

Returns: Value of the subservice or -1 if the MSU is empty

const char* getServiceName () | ### getServiceName

[const]

Retrieve the name of the Service as decoded from the SIF

Returns: Name of the service, NULL if unknown or invalid MSU

const char* getPriorityName () | ### getPriorityName

[const]

Retrieve the name of the Priority as decoded from the SIF

Returns: Name of the priority, NULL if unknown or invalid MSU

const char* getIndicatorName () | ### getIndicatorName

[const]

Retrieve the name of the Network Indicator as decoded from the SIF

Returns: Name of the network indicator, NULL if unknown or invalid MSU

unsigned char getPriority (const char* name, unsigned char defVal = Regular) | ### getPriority

[static]

Get the priority associated with a given name

Parameters:

name | Priority name to find
defVal | Default value to return if not found

Returns: The priority value or the given default one if not exists

unsigned char getNetIndicator (const char* name, unsigned char defVal = National) | ### getNetIndicator

[static]

Get the network indicator associated with a given name

Parameters:

name | Network indicator name to find
defVal | Default value to return if not found

Returns: The network indicator value or the given default one if not exists

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