A.1 IDL specification (file name "TraceIRPConstDefs.idl")

32.4433GPPTelecommunication managementTrace Management (Trace) Integration Reference Point (IRP): Common Object Request Broker Architecture (CORBA) Solution Set (SS)TS

//File: TraceIRPConstDefs.idl

#ifndef _Trace_IRP_CONST_DEFS_IDL_

#define _Trace_IRP_CONST_DEFS_IDL_

// This statement must appear after all include statements

#pragma prefix "3gppsa5.org"

/* ## Module: TraceIRPConstDefs

This module contains commonly used definitions for Trace IRP

===============================================================

*/

module TraceIRPConstDefs

{

enum Result Enum {OK, FAILURE, PARTIAL_SUCCESS};

typedef struct TraceReference

{ short mcc;

short mnc;

unsigned long traceId;

};

typedef sequence<TraceReference> TraceReferenceList;

typedef unsigned long TraceRecordingSessionReference;

typedef string TraceCollectionEntityAddress;

/* the values of the InterfaceBitmap is coming from the ListOfInterfaces trace parameter definition in 3GPP TS 32.422. The InterfaceBitmap shall carry the decimal value that is calculated from the bitmap, defined in TS 32.422.*/

typedef struct Interfaces

{ NeType NetworkElement;

Integer InterfaceBitmap;

};

typedef sequence <Interfaces> ListofInterfaces;

/*

ListOfInterfacesOptional is a type carrying a conditional parameter.

The boolean shall be TRUE, if the operation request uses this parameter. In this case the value is present. Otherwise the value is absent.

*/

union ListOfInterfacesOptional switch (boolean)

{

case TRUE: ListOfInterfaces value;

};

enum NeType {MSC_SERVER,MGW,RNC,SGSN,GGSN,BM_SC,eNB,MME,SGW,PGW };

typedef sequence<NeType> ListOfNeTypes;

enum TraceDepth {MINIMUM, MEDIUM, MAXIMUM, VENDORMINIMUM, VENDORMEDIUM, VENDORMAXIMUM};

enum TraceTarget {IMSI, IMEI, IMEISV, PUBLIC_ID, PRIVATE_ID, UTRAN_CELL, E-UTRAN_CELL };

/* the values of the EventBitmap is coming from the TriggeringEvent trace parameter definition in 3GPP TS 32.422. The EventBitmap shall carry the decimal value that is calculated from the triggereing event bitmap as defined in TS 32.422.*/

typedef struct Events

{ NeType NetworkElement;

Integer EventBitmap;

};

typedef sequence <Interfaces> TriggeringEvent;

/*

TriggeringEventConditional is a type carrying a conditional parameter.

The boolean shall be TRUE, if the operation the condition is fulfilled and the request uses this parameter. In this case the value is present. Otherwise the value is absent.

*/

union TriggeringEventConditional switch (boolean)

{

case TRUE: TriggeringEvent value;

};

enum UnsupportedItem {MANAGED_ENTITY, TRACE_DEPTH, LIST_OF_INTERFACES, TRACE_TARGET, REASON};

typedef sequence<UnsupportedItem> UnsupportedList;

/**

* This block identifies attributes which are included as part of the

* notifications defined within TraceIRP. These attribute values should not

* clash with those defined for the attributes of notification

* header (see IDL of Notification IRP).

*/

interface AttributeNameValue

{

const string TRACE_RECORDING_SESSION_REFERENCE = "TRACE_RECORDING_SESSION_REFERENCE";

const string TRACE_REFERENCE = "TRACE_REFERENCE";

const string TRACE_TARGET = "TRACE_TARGET";

const string MO_INSTANCE = "MO_INSTANCE";

const string REASON = "REASON";

};

};