Yate
|
SS7 Code Point. More...
#include <yatesig.h>
Public Types | |
enum | Type { Other = 0, ITU = 1, ANSI = 2, ANSI8 = 3, China = 4, Japan = 5, Japan5 = 6, DefinedTypes } |
Public Member Functions | |
SS7PointCode (unsigned char network=0, unsigned char cluster=0, unsigned char member=0) | |
SS7PointCode (Type type, unsigned int packed) | |
SS7PointCode (const SS7PointCode &original) | |
~SS7PointCode () | |
unsigned char | network () const |
unsigned char | cluster () const |
unsigned char | member () const |
void | assign (unsigned char network, unsigned char cluster, unsigned char member) |
bool | assign (const String &src, Type type=Other) |
bool | assign (Type type, const unsigned char *src, int len=-1, unsigned char *spare=0) |
SS7PointCode & | operator= (const SS7PointCode &original) |
bool | operator== (const SS7PointCode &original) const |
bool | operator!= (const SS7PointCode &original) const |
bool | compatible (Type type) const |
unsigned int | pack (Type type) const |
bool | unpack (Type type, unsigned int packed) |
bool | store (Type type, unsigned char *dest, unsigned char spare=0) const |
Static Public Member Functions | |
static unsigned char | size (Type type) |
static unsigned char | length (Type type) |
static Type | lookup (const char *text) |
static const char * | lookup (Type type) |
SS7 Code Point.
An universal SS7 Layer 3 routing Code Point
enum Type |
Different incompatible types of points codes
SS7PointCode | ( | unsigned char | network = 0 , |
unsigned char | cluster = 0 , |
||
unsigned char | member = 0 |
||
) | [inline] |
Constructor from components
network | ANSI Network Identifier / ITU-T Zone Identification |
cluster | ANSI Network Cluster / ITU-T Area/Network Identification |
member | ANSI Cluster Member / ITU-T Signalling Point Identification |
SS7PointCode | ( | Type | type, |
unsigned int | packed | ||
) | [inline] |
Constructor from unpacked format
type | Type of the unpacking desired |
packed | Packed format of the point code |
SS7PointCode | ( | const SS7PointCode & | original | ) | [inline] |
Copy constructor
original | Code point to be copied |
~SS7PointCode | ( | ) | [inline] |
Destructor
void assign | ( | unsigned char | network, |
unsigned char | cluster, | ||
unsigned char | member | ||
) | [inline] |
Assignment from components
network | ANSI Network Identifier / ITU-T Zone Identification |
cluster | ANSI Network Cluster / ITU-T Area/Network Identification |
member | ANSI Cluster Member / ITU-T Signalling Point Identification |
Assign data members from a given string of form 'network-cluster-member'
src | Source string |
type | Type of the point code if numeric (packed) representation is used |
Assign data members from a packed memory block
type | Type of the point code in memory |
src | Pointer to packed point code in memory |
len | Length of data, negative to not check validity |
spare | Pointer to variable to save spare bits, NULL to ignore them |
unsigned char cluster | ( | ) | const [inline] |
Retrieve the Cluster / Area component of the Code Point
Referenced by SS7PointCode::operator!=(), SS7PointCode::operator=(), and SS7PointCode::operator==().
bool compatible | ( | Type | type | ) | const |
Check if the point code is compatible with a packing type
Get the length (in octets) of a packed code point according to its type
type | Type of the packing |
Get a point type associated to a given text
text | Text to find |
References TelEngine::lookup().
Get the text associated to a point type
type | Type to find |
References TelEngine::lookup().
unsigned char member | ( | ) | const [inline] |
Retrieve the Cluster / Point component of the Code Point
Referenced by SS7PointCode::operator!=(), SS7PointCode::operator=(), and SS7PointCode::operator==().
unsigned char network | ( | ) | const [inline] |
Retrieve the Network / Zone component of the Code Point
Referenced by SS7PointCode::operator!=(), SS7PointCode::operator=(), and SS7PointCode::operator==().
bool operator!= | ( | const SS7PointCode & | original | ) | const [inline] |
Inequality operator
original | Code point to be compared with |
References SS7PointCode::cluster(), SS7PointCode::member(), and SS7PointCode::network().
SS7PointCode& operator= | ( | const SS7PointCode & | original | ) | [inline] |
Assignment operator
original | Code point to be copied |
References SS7PointCode::cluster(), SS7PointCode::member(), and SS7PointCode::network().
bool operator== | ( | const SS7PointCode & | original | ) | const [inline] |
Equality operator
original | Code point to be compared with |
References SS7PointCode::cluster(), SS7PointCode::member(), and SS7PointCode::network().
Pack the code point into a single integer number.
type | Type of the packing desired |
Referenced by SccpRemote::getPackedPointcode(), SS7SCCP::getPackedPointCode(), SS7Layer3::getRoutePriority(), SS7Layer3::getRouteState(), and SS7Router::setRouteState().
Get the size (in bits) of a packed code point according to its type
type | Type of the packing |
Store the point code in a memory area
type | Type of the packing desired |
dest | Location to store the label info, must be at least length() long |
spare | Spare bits to store after the point code if applicable (ITU) |
Unpack an integer number into a point code
type | Type of the unpacking desired |
packed | Packed format of the point code |