networkcontrol/ipscpr/src/ip_subconparams.cpp
author hgs
Tue, 29 Jun 2010 19:20:22 +0530
changeset 37 052078dda061
permissions -rw-r--r--
201025_01
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
37
052078dda061 201025_01
hgs
parents:
diff changeset
     1
// Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
052078dda061 201025_01
hgs
parents:
diff changeset
     2
// All rights reserved.
052078dda061 201025_01
hgs
parents:
diff changeset
     3
// This component and the accompanying materials are made available
052078dda061 201025_01
hgs
parents:
diff changeset
     4
// under the terms of "Eclipse Public License v1.0"
052078dda061 201025_01
hgs
parents:
diff changeset
     5
// which accompanies this distribution, and is available
052078dda061 201025_01
hgs
parents:
diff changeset
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
052078dda061 201025_01
hgs
parents:
diff changeset
     7
//
052078dda061 201025_01
hgs
parents:
diff changeset
     8
// Initial Contributors:
052078dda061 201025_01
hgs
parents:
diff changeset
     9
// Nokia Corporation - initial contribution.
052078dda061 201025_01
hgs
parents:
diff changeset
    10
//
052078dda061 201025_01
hgs
parents:
diff changeset
    11
// Contributors:
052078dda061 201025_01
hgs
parents:
diff changeset
    12
//
052078dda061 201025_01
hgs
parents:
diff changeset
    13
// Description:
052078dda061 201025_01
hgs
parents:
diff changeset
    14
// Implementation file for the IP SubConnection Parameters
052078dda061 201025_01
hgs
parents:
diff changeset
    15
// 
052078dda061 201025_01
hgs
parents:
diff changeset
    16
//
052078dda061 201025_01
hgs
parents:
diff changeset
    17
052078dda061 201025_01
hgs
parents:
diff changeset
    18
/**
052078dda061 201025_01
hgs
parents:
diff changeset
    19
 @file ip_subconparams.h
052078dda061 201025_01
hgs
parents:
diff changeset
    20
*/
052078dda061 201025_01
hgs
parents:
diff changeset
    21
052078dda061 201025_01
hgs
parents:
diff changeset
    22
052078dda061 201025_01
hgs
parents:
diff changeset
    23
#include <e32std.h>
052078dda061 201025_01
hgs
parents:
diff changeset
    24
#include <e32test.h>
052078dda061 201025_01
hgs
parents:
diff changeset
    25
#include <ecom/ecom.h>
052078dda061 201025_01
hgs
parents:
diff changeset
    26
#include <implementationproxy.h>
052078dda061 201025_01
hgs
parents:
diff changeset
    27
#include <ip_subconparams.h>
052078dda061 201025_01
hgs
parents:
diff changeset
    28
#include <comms-infras/metatypearray.h>
052078dda061 201025_01
hgs
parents:
diff changeset
    29
052078dda061 201025_01
hgs
parents:
diff changeset
    30
#ifndef SYMBIAN_NETWORKING_3GPPDEFAULTQOS
052078dda061 201025_01
hgs
parents:
diff changeset
    31
// need to ensure the original class name and TUid of the factory class
052078dda061 201025_01
hgs
parents:
diff changeset
    32
// is used for implementions in this component
052078dda061 201025_01
hgs
parents:
diff changeset
    33
#undef KSubConIPParamsUid
052078dda061 201025_01
hgs
parents:
diff changeset
    34
#undef KSubConQosIPLinkR99ParamsType
052078dda061 201025_01
hgs
parents:
diff changeset
    35
#undef CSubConQosIPLinkR99ParamSet
052078dda061 201025_01
hgs
parents:
diff changeset
    36
#endif
052078dda061 201025_01
hgs
parents:
diff changeset
    37
052078dda061 201025_01
hgs
parents:
diff changeset
    38
START_ATTRIBUTE_TABLE( CSubConQosIPLinkR99ParamSet, KSubConIPParamsUid, KSubConQosIPLinkR99ParamsType )
052078dda061 201025_01
hgs
parents:
diff changeset
    39
	REGISTER_ATTRIBUTE( CSubConQosIPLinkR99ParamSet, iTrafficClass, TMetaNumber )
052078dda061 201025_01
hgs
parents:
diff changeset
    40
	REGISTER_ATTRIBUTE( CSubConQosIPLinkR99ParamSet, iDeliveryOrder, TMetaNumber )
052078dda061 201025_01
hgs
parents:
diff changeset
    41
	REGISTER_ATTRIBUTE( CSubConQosIPLinkR99ParamSet, iDeliveryOfErroneusSdu, TMetaNumber )
052078dda061 201025_01
hgs
parents:
diff changeset
    42
	REGISTER_ATTRIBUTE( CSubConQosIPLinkR99ParamSet, iResidualBer, TMetaNumber )
052078dda061 201025_01
hgs
parents:
diff changeset
    43
	REGISTER_ATTRIBUTE( CSubConQosIPLinkR99ParamSet, iErrorRatio, TMetaNumber )
052078dda061 201025_01
hgs
parents:
diff changeset
    44
	REGISTER_ATTRIBUTE( CSubConQosIPLinkR99ParamSet, iPriority, TMetaNumber )
052078dda061 201025_01
hgs
parents:
diff changeset
    45
	REGISTER_ATTRIBUTE( CSubConQosIPLinkR99ParamSet, iTransferDelay, TMetaNumber )
052078dda061 201025_01
hgs
parents:
diff changeset
    46
	REGISTER_ATTRIBUTE( CSubConQosIPLinkR99ParamSet, iMaxSduSize, TMetaNumber )
052078dda061 201025_01
hgs
parents:
diff changeset
    47
	REGISTER_ATTRIBUTE( CSubConQosIPLinkR99ParamSet, iMaxBitrateUplink, TMetaNumber )
052078dda061 201025_01
hgs
parents:
diff changeset
    48
	REGISTER_ATTRIBUTE( CSubConQosIPLinkR99ParamSet, iMaxBitrateDownlink, TMetaNumber )
052078dda061 201025_01
hgs
parents:
diff changeset
    49
	REGISTER_ATTRIBUTE( CSubConQosIPLinkR99ParamSet, iGuaBitrateUplink, TMetaNumber )
052078dda061 201025_01
hgs
parents:
diff changeset
    50
	REGISTER_ATTRIBUTE( CSubConQosIPLinkR99ParamSet, iGuaBitrateDownlink, TMetaNumber )
052078dda061 201025_01
hgs
parents:
diff changeset
    51
END_ATTRIBUTE_TABLE()
052078dda061 201025_01
hgs
parents:
diff changeset
    52
052078dda061 201025_01
hgs
parents:
diff changeset
    53
START_ATTRIBUTE_TABLE( CSubConSBLPR5ExtensionParamSet, KSubConIPParamsUid, KSubConnSBLPR5ExtensionParamsType )
052078dda061 201025_01
hgs
parents:
diff changeset
    54
	REGISTER_ATTRIBUTE( CSubConSBLPR5ExtensionParamSet, iAuthToken, TMeta<TAuthToken>)
052078dda061 201025_01
hgs
parents:
diff changeset
    55
	REGISTER_ATTRIBUTE( CSubConSBLPR5ExtensionParamSet, iFlowIds, TMetaArray<RFlowIdentifiers>)
052078dda061 201025_01
hgs
parents:
diff changeset
    56
END_ATTRIBUTE_TABLE()
052078dda061 201025_01
hgs
parents:
diff changeset
    57
052078dda061 201025_01
hgs
parents:
diff changeset
    58
CSubConExtensionParameterSet* CSubConIPExtensionParamsFactory::NewL(TAny* aConstructionParameters)
052078dda061 201025_01
hgs
parents:
diff changeset
    59
	{
052078dda061 201025_01
hgs
parents:
diff changeset
    60
	TInt32 type = reinterpret_cast<TInt32>(aConstructionParameters);
052078dda061 201025_01
hgs
parents:
diff changeset
    61
	switch (type)
052078dda061 201025_01
hgs
parents:
diff changeset
    62
		{
052078dda061 201025_01
hgs
parents:
diff changeset
    63
	case (KSubConQosIPLinkR99ParamsType):
052078dda061 201025_01
hgs
parents:
diff changeset
    64
		return new (ELeave) CSubConQosIPLinkR99ParamSet;
052078dda061 201025_01
hgs
parents:
diff changeset
    65
		// break;
052078dda061 201025_01
hgs
parents:
diff changeset
    66
	case (KSubConnSBLPR5ExtensionParamsType):
052078dda061 201025_01
hgs
parents:
diff changeset
    67
		return new (ELeave) CSubConSBLPR5ExtensionParamSet;
052078dda061 201025_01
hgs
parents:
diff changeset
    68
		// break;
052078dda061 201025_01
hgs
parents:
diff changeset
    69
	default:
052078dda061 201025_01
hgs
parents:
diff changeset
    70
		User::Leave(KErrNotFound);
052078dda061 201025_01
hgs
parents:
diff changeset
    71
		}
052078dda061 201025_01
hgs
parents:
diff changeset
    72
	return NULL;
052078dda061 201025_01
hgs
parents:
diff changeset
    73
	}
052078dda061 201025_01
hgs
parents:
diff changeset
    74