telephonyprotocols/qos3gppcpr/inc/Qos3GPP_subconparams.inl
branchopencode
changeset 24 6638e7f4bd8f
parent 0 3553901f7fa8
--- a/telephonyprotocols/qos3gppcpr/inc/Qos3GPP_subconparams.inl	Mon May 03 13:37:20 2010 +0300
+++ b/telephonyprotocols/qos3gppcpr/inc/Qos3GPP_subconparams.inl	Thu May 06 15:10:38 2010 +0100
@@ -1,649 +1,649 @@
-// Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Inline Functions file for the 3GPP SubConnection Extension Parameters
-// 
-//
-
-/**
- @file
- @publishedAll
- @released
-*/
-
-
-
-#ifndef QOS3GPP_SUBCONPARAMS_INL
-#define QOS3GPP_SUBCONPARAMS_INL
-
-/**
-@param      aFamily the sub-connection parameter family to which the newly created object is to be added
-@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
-@return     pointer to the created object
-@publishedAll
-@released Since 9.3
-*/
-CSubConQosR99ParamSet* CSubConQosR99ParamSet::NewL(CSubConParameterFamily& aFamily, CSubConParameterFamily::TParameterSetType aType)
-    {
-    CSubConQosR99ParamSet* obj = NewL();
-    CleanupStack::PushL(obj);
-    aFamily.AddExtensionSetL(*obj, aType);
-    CleanupStack::Pop(obj);
-    return obj;
-    }
-
-/**
-@param      aFamily the parameter family to which the newly created object is to be added
-@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
-@return     pointer to the created object
-@publishedAll
-@released Since 9.3
-*/
-CSubConQosR99ParamSet* CSubConQosR99ParamSet::NewL(RParameterFamily& aFamily, RParameterFamily::TParameterSetType aType)
-    {
-    CSubConQosR99ParamSet* obj = NewL();
-    CleanupStack::PushL(obj);
-    aFamily.AddParameterSetL(obj, aType);
-    CleanupStack::Pop(obj);
-    return obj;
-    }
-
-/**
-@return     pointer to the created object
-@publishedAll
-@released Since 9.3
-*/
-CSubConQosR99ParamSet* CSubConQosR99ParamSet::NewL()
-    {
-    STypeId typeId = STypeId::CreateSTypeId(KSubCon3GPPExtParamsFactoryUid, KSubConQosR99ParamsType);
-    return static_cast<CSubConQosR99ParamSet*>(CSubConParameterSet::NewL(typeId));
-    }
-
-/**
-@publishedAll
-@released Since 9.3
-*/
-CSubConQosR99ParamSet::CSubConQosR99ParamSet()
-    : CSubConExtensionParameterSet(),
-    iTrafficClass(RPacketQoS::ETrafficClassUnspecified),
-    iDeliveryOrder(RPacketQoS::EDeliveryOrderUnspecified),
-    iDeliveryOfErroneusSdu(RPacketQoS::EErroneousSDUDeliveryUnspecified),
-    iResidualBer(RPacketQoS::EBERUnspecified),
-    iErrorRatio(RPacketQoS::ESDUErrorRatioUnspecified),
-    iPriority(RPacketQoS::ETrafficPriorityUnspecified),
-    iTransferDelay(0),
-    iMaxSduSize(0),
-    iMaxBitrateUplink(0),
-    iMaxBitrateDownlink(0),
-    iGuaBitrateUplink(0),
-    iGuaBitrateDownlink(0)
-    {
-    }
-
-/** Identifies the current traffic class. Traffic class is; Converstional, Streaming, Interactive or Background.
-See 3GPP TS 23.107.
-@return the traffic class
-@publishedAll
-@released Since 9.3
-*/
-RPacketQoS::TTrafficClass CSubConQosR99ParamSet::GetTrafficClass() const
-    {
-    return iTrafficClass;
-    }
-
-/** Current delivery order. Indicates whether the bearer shall provide in-sequence SDU delivery or not.
-@return Current delivery order. 
-@publishedAll
-@released Since 9.3
-*/
-RPacketQoS::TDeliveryOrder CSubConQosR99ParamSet::GetDeliveryOrder() const
-    {
-    return iDeliveryOrder;
-    }
-
-/** Current delivery of erroneous SDUs. Indicates whether SDUs detected as erroneous shall be delivered or discarded.
-@return Current delivery of erroneous SDUs. 
-@publishedAll
-@released Since 9.3
-*/
-RPacketQoS::TErroneousSDUDelivery CSubConQosR99ParamSet::GetErroneousSDUDelivery() const
-    {
-    return iDeliveryOfErroneusSdu;
-    }
-
-/** Indicates the undetected bit error ratio in the delivered SDUs. If no error detection is
-requested, Residual bit error ratio indicates the bit error ratio in
-the delivered SDUs.
-@return the residual bit error ratio. 
-@publishedAll
-@released Since 9.3
-*/
-RPacketQoS::TBitErrorRatio CSubConQosR99ParamSet::GetResidualBitErrorRatio() const
-    {
-    return iResidualBer;
-    }
-
-/** Indicates the fraction of SDUs lost or detected as erroneous.
-@return the SDU error ratio.  
-@publishedAll
-@released Since 9.3
-*/
-RPacketQoS::TSDUErrorRatio CSubConQosR99ParamSet::GetSDUErrorRatio() const
-    {
-    return iErrorRatio;
-    }
-
-/** Current traffic handling priority. Specifies the relative importance for handling of all SDUs
-belonging to the UMTS bearer compared to the SDUs of other bearers. This is defined only for
-Interactive traffic class. See 3GPP TS 23.107
-@return the traffic handling priority. 
-@publishedAll
-@released Since 9.3
-*/
-RPacketQoS::TTrafficHandlingPriority CSubConQosR99ParamSet::GetTrafficHandlingPriority() const
-    {
-    return iPriority;
-    }
-
-/** @return the transfer delay. Indicates maximum delay for 95th percentile of the distribution
-of delay for all delivered SDUs during the lifetime of a bearer service, where delay for an SDU
-is defined as the time from a request to transfer an SDU at one SAP to its delivery at the other
-SAP. 
-@publishedAll
-@released Since 9.3
-*/
-TInt CSubConQosR99ParamSet::GetTransferDelay() const
-    {
-    return iTransferDelay;
-    }
-
-/** @return the maximum SDU size. 
-@publishedAll
-@released Since 9.3
-*/
-TInt CSubConQosR99ParamSet::GetMaxSduSize() const
-    {
-    return iMaxSduSize;
-    }
-
-/** @return Current maximum bitrate for uplink direction. The traffic is conformant with Maximum
-bitrate as long as it follows a token bucket algorithm where token rate equals Maximum bitrate
-and bucket size equals Maximum SDU size.
-@publishedAll
-@released Since 9.3
-*/
-TInt CSubConQosR99ParamSet::GetMaxBitrateUplink() const
-    {
-    return iMaxBitrateUplink;
-    }
-
-/** Getter function for the maximum downlink bit rate.
-@return the maximum downlink bit rate. 
-@publishedAll
-@released Since 9.3
-*/
-TInt CSubConQosR99ParamSet::GetMaxBitrateDownlink() const
-    {
-    return iMaxBitrateDownlink;
-    }
-
-/** Getter function for the guaranteed uplink bit rate.
-@return the guaranteed uplink bit rate. 
-@publishedAll
-@released Since 9.3
-*/
-TInt CSubConQosR99ParamSet::GetGuaBitrateUplink() const
-    {
-    return iGuaBitrateUplink;
-    }
-
-/** Getter function for the guaranteed downlink bit rate.
-@return the guaranteed downlink bit rate. 
-@publishedAll
-@released Since 9.3
-*/
-TInt CSubConQosR99ParamSet::GetGuaBitrateDownlink() const
-    {
-    return iGuaBitrateDownlink;
-    }
-
-/** Sets the traffic class.
-@param aTrafficClass Value to which to set the traffic class. 
-@publishedAll
-@released Since 9.3
-*/
-void CSubConQosR99ParamSet::SetTrafficClass(RPacketQoS::TTrafficClass aTrafficClass)
-    {
-    iTrafficClass = aTrafficClass;
-    }
-
-/** Sets the delivery order. Indicates whether in-sequence SDU delivery shall be provided or not.
-@param aDeliveryOrder Value to which to set the delivery order. 
-@publishedAll
-@released Since 9.3
-*/
-void CSubConQosR99ParamSet::SetDeliveryOrder(RPacketQoS::TDeliveryOrder aDeliveryOrder)
-    {
-    iDeliveryOrder = aDeliveryOrder;
-    }
-
-/** Sets the handling of the delivery of erroneous SDUs
-@param aDeliveryOfErroneusSdu Value to which to set the dilvery of erroneous SDUs.
-Indicates whether SUDs detected as erroneous shall be delivered or discarded. 
-@publishedAll
-@released Since 9.3
-*/
-void CSubConQosR99ParamSet::SetErroneousSDUDelivery(RPacketQoS::TErroneousSDUDelivery aDeliveryOfErroneusSdu)
-    {
-    iDeliveryOfErroneusSdu = aDeliveryOfErroneusSdu;
-    }
-
-/** Sets the residual bit error ratio. Indicates the undetected bit error ratio in the delivered SDUs.
-If no error detection is requested, Residual bit error ratio indicates the bit error ratio in the delivered SDUs.
-@param aResidualBer Value to which to set the residual bit error ratio. 
-@publishedAll
-@released Since 9.3
-*/
-void CSubConQosR99ParamSet::SetResidualBitErrorRatio(RPacketQoS::TBitErrorRatio aResidualBer)
-    {
-    iResidualBer = aResidualBer;
-    }
-
-/** Sets the error ratio. Indicates the fraction of SDUs lost or detected as erroneous.
-SDU error ratio is defined only for conforming traffic.
-@param aErrorRatio Sets the error ratio. Indicates the fraction of SDUs lost or detected as erroneous.
-SDU error ratio is defined only for conforming traffic. 
-@publishedAll
-@released Since 9.3
-*/
-void CSubConQosR99ParamSet::SetSDUErrorRatio(RPacketQoS::TSDUErrorRatio aErrorRatio)
-    {
-    iErrorRatio = aErrorRatio;
-    }
-
-/** Sets the traffic handling priority.
-@param aPriority Value to which to set the traffic handling priority. 
-@publishedAll
-@released Since 9.3
-*/
-void CSubConQosR99ParamSet::SetTrafficHandlingPriority(RPacketQoS::TTrafficHandlingPriority aPriority)
-    {
-    iPriority = aPriority;
-    }
-
-/** Sets the transfer delay. Indicates maximum delay for 95th percentile of the distribution of delay for
-all delivered SDUs during the lifetime of a bearer service, where delay for an SDU is defined as the time
-from a request to transfer an SDU at one SAP to its delivery at the other SAP.
-@param aTransferDelay Value to which to set the transfer delay. 
-@publishedAll
-@released Since 9.3
-*/
-void CSubConQosR99ParamSet::SetTransferDelay(TInt aTransferDelay)
-    {
-    iTransferDelay = aTransferDelay;
-    }
-
-/** Sets the maximum SDU size. Defines the maximum allowed SDU size.
-@param aMaxSduSize Value to which to set the maximum SDU size. 
-@publishedAll
-@released Since 9.3
-*/
-void CSubConQosR99ParamSet::SetMaxSduSize(TInt aMaxSduSize)
-    {
-    iMaxSduSize = aMaxSduSize;
-    }
-
-/** Sets the maximum bitrate for uplink direction. The traffic is conformant with Maximum bitrate as
-long as it follows a token bucket algorithm where token rate equals Maximum bitrate and bucket size
-equals Maximum SDU size.
-@param aMaxBitrate Value to which to set the maximum bitrate for uplink direction.
-@publishedAll
-@released Since 9.3
-*/
-void CSubConQosR99ParamSet::SetMaxBitrateUplink(TInt aMaxBitrateUplink)
-    {
-    iMaxBitrateUplink = aMaxBitrateUplink;
-    }
-
-/** Sets the maximum bitrate for downlink direction. The traffic is conformant with Maximum bitrate as
-long as it follows a token bucket algorithm where token rate equals Maximum bitrate and bucket size
-equals Maximum SDU size.
-@param aMaxBitrate Value to which to set the maximum bitrate for downlink direction.
-@publishedAll
-@released Since 9.3
-*/
-void CSubConQosR99ParamSet::SetMaxBitrateDownlink(TInt aMaxBitrateDownlink)
-    {
-    iMaxBitrateDownlink = aMaxBitrateDownlink;
-    }
-
-/** Sets the guaranteed bitrate for uplink direction.
-@param aGuaBitrateUplink Value to which to set the guaranteed SDU size.
-@publishedAll
-@released Since 9.3
-*/
-void CSubConQosR99ParamSet::SetGuaBitrateUplink(TInt aGuaBitrateUplink)
-    {
-    iGuaBitrateUplink = aGuaBitrateUplink;
-    }
-
-/** Sets the guaranteed bitrate for downlink direction.
-@param aGuaBitrateDownlink Value to which to set the guaranteed SDU size.
-@publishedAll
-@released Since 9.3
-*/
-void CSubConQosR99ParamSet::SetGuaBitrateDownlink(TInt aGuaBitrateDownlink)
-    {
-    iGuaBitrateDownlink = aGuaBitrateDownlink;
-    }
-
-
-#ifdef SYMBIAN_NETWORKING_UMTSR5
-/**
-@param aFamily the sub-connection parameter family to which the newly created object is to be added
-@param aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
-@return pointer to the created object
-*/
-CSubConImsExtParamSet* CSubConImsExtParamSet::NewL(CSubConParameterFamily& aFamily, CSubConParameterFamily::TParameterSetType aType)
-    {
-    CSubConImsExtParamSet* obj = NewL();
-    CleanupStack::PushL(obj);
-    aFamily.AddExtensionSetL(*obj, aType);
-    CleanupStack::Pop(obj);
-    return obj;
-    }
-
-/**
-@param      aFamily the parameter family to which the newly created object is to be added
-@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
-@return     pointer to the created object
-*/
-CSubConImsExtParamSet* CSubConImsExtParamSet::NewL(RParameterFamily& aFamily, RParameterFamily::TParameterSetType aType)
-    {
-    CSubConImsExtParamSet* obj = NewL();
-    CleanupStack::PushL(obj);
-    aFamily.AddParameterSetL(obj, aType);
-    CleanupStack::Pop(obj);
-    return obj;
-    }
-
-/**
-@return pointer to the created object
-*/
-CSubConImsExtParamSet* CSubConImsExtParamSet::NewL()
-    {
-    STypeId typeId = STypeId::CreateSTypeId(KSubCon3GPPExtParamsFactoryUid, KSubConImsExtParamsType);
-    return static_cast<CSubConImsExtParamSet*>(CSubConParameterSet::NewL(typeId));
-    }
-
-CSubConImsExtParamSet::CSubConImsExtParamSet()
-    : iImsSignallingIndicator(EFalse)
-    {
-    }
-
-/** @return the IMS Signalling Indicator flag for 3GPP R5 dedicated signalling PDP contexts.
-*/
-TBool CSubConImsExtParamSet::GetImsSignallingIndicator() const
-    {
-    return iImsSignallingIndicator;
-    }
-
-/** Sets the IMS Signalling Indicator flag for 3GPP R5 dedicated signalling PDP contexts.
-@param aImsSignallingIndicator Value to which to set the IMS signalling indicator. */
-void CSubConImsExtParamSet::SetImsSignallingIndicator(TBool aImsSignallingIndicator)
-    {
-    iImsSignallingIndicator = aImsSignallingIndicator;
-    }
-
-/**
-@param      aFamily the sub-connection parameter family to which the newly created object is to be added
-@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
-@return     pointer to the created object
-*/
-CSubConQosR5ParamSet* CSubConQosR5ParamSet::NewL(CSubConParameterFamily& aFamily,CSubConParameterFamily::TParameterSetType aType)
-    {
-    CSubConQosR5ParamSet* obj = NewL();
-    CleanupStack::PushL(obj);
-    aFamily.AddExtensionSetL(*obj, aType);
-    CleanupStack::Pop(obj);
-    return obj;
-    }
-
-/**
-@param      aFamily the parameter family to which the newly created object is to be added
-@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
-@return     pointer to the created object
-*/
-CSubConQosR5ParamSet* CSubConQosR5ParamSet::NewL(RParameterFamily& aFamily, RParameterFamily::TParameterSetType aType)
-    {
-    CSubConQosR5ParamSet* obj = NewL();
-    CleanupStack::PushL(obj);
-    aFamily.AddParameterSetL(obj, aType);
-    CleanupStack::Pop(obj);
-    return obj;
-    }
-
-/**
-@return     pointer to the created object
-*/
-CSubConQosR5ParamSet* CSubConQosR5ParamSet::NewL()
-    {
-    STypeId typeId = STypeId::CreateSTypeId(KSubCon3GPPExtParamsFactoryUid, KSubConQosR5ParamsType);
-    return static_cast<CSubConQosR5ParamSet*>(CSubConParameterSet::NewL(typeId));
-    }
-
-/**
-*/
-CSubConQosR5ParamSet::CSubConQosR5ParamSet()
-    : iSrcStatsDesc(RPacketQoS::ESourceStatisticsDescriptorUnknown), iSignallingIndicator(EFalse)
-    {
-    }
-
-/** Gets the signalling nature of the SDU's. Signalling traffic can have different characteristics
-to other interactive traffic, eg higher priority, lower delay and increased peakiness. This attribute
-permits enhancing the Radio Access Network (RAN) operation accordingly. See 3GPP TS 23.107
-@return the signalling nature of the SDU's.
-*/
-TBool CSubConQosR5ParamSet::GetSignallingIndicator() const
-    {
-    return iSignallingIndicator;
-    }
-
-/** Sets signalling nature of the SDU's. This attribute is additional to the other QoS
-attributes and does not over-ride them. Signalling traffic can have different characteristics
-to other interactive traffic, eg higher priority, lower delay and increased peakiness. This
-attribute permits enhancing the Radio Access Network (RAN) operation accordingly. An example use of
-the Signalling Indication is for IMS signalling traffic. See 3GPP TS 23.107
-@param aSignallingIndicator Value to which to set the signalling indicator. */
-void CSubConQosR5ParamSet::SetSignallingIndicator(TBool aSignallingIndicator)
-    {
-    iSignallingIndicator = aSignallingIndicator;
-    }
-
-/** @return the source of the SDU's. */
-RPacketQoS::TSourceStatisticsDescriptor CSubConQosR5ParamSet::GetSourceStatisticsDescriptor() const
-    {
-    return iSrcStatsDesc;
-    }
-
-/** Sets the source characteristic of the SDU's. Conversational speech has a well-known statistical
-behaviour (or the discontinuous transmission (DTX) factor). By being informed that the SDUs for a Radio
-Access Bearer (RAB) are generated by a speech source, Radio Access Network (RAN) may, based on experience,
-calculate a statistical multiplex gain for use in admission control on the radio and RAN Access interfaces.
-@param aSrcStatsDescType Value to which to set the source statistics indicator. */
-void CSubConQosR5ParamSet::SetSourceStatisticsDescriptor(RPacketQoS::TSourceStatisticsDescriptor aSrcStatsDescType)
-    {
-    iSrcStatsDesc = aSrcStatsDescType;
-    }
-
-#endif
-// SYMBIAN_NETWORKING_UMTSR5
-
-/** the Media Component number as specified in 3GPP TS 29.207
-@return the media component number portion of the flow identifier
-@publishedAll
-@released Since 9.3
-*/
-TUint16 TFlowId::GetMediaComponentNumber() const
-    {
-    return iMediaComponentNumber;
-    }
-
-/** the IP flow number as specified in 3GPP TS 29.207
-@return the IP flow portion of the flow identifier
-@publishedAll
-@released Since 9.3
-*/
-TUint16 TFlowId::GetIPFlowNumber() const
-    {
-    return iIPFlowNumber;
-    }
-
-/** Sets the media component number portion of the flow identifier. The Media Component number is specified in 3GPP TS 29.207
-@param aMediaComponentNumber the media component portion of the flow identifier
-@publishedAll
-@released Since 9.3
-*/
-void TFlowId::SetMediaComponentNumber(TUint16 aMediaComponentNumber)
-    {
-    iMediaComponentNumber = aMediaComponentNumber;
-    }
-
-/**
-@param the IP flow portion of the flow identifier.
-@publishedAll
-@released Since 9.3
-*/
-void TFlowId::SetIPFlowNumber(TUint16 aIPFlowNumber)
-    {
-    iIPFlowNumber = aIPFlowNumber;
-    }
-
-
-//===========================
-// Implementation Extension class
-/**
-@publishedAll
-@released Since 9.3
-*/
-CSubConSBLPR5ExtensionParamSet::CSubConSBLPR5ExtensionParamSet()
-    : CSubConExtensionParameterSet()
-    {
-    }
-
-/**
-@publishedAll
-@released Since 9.3
-*/
-CSubConSBLPR5ExtensionParamSet::~CSubConSBLPR5ExtensionParamSet()
-    {
-    iFlowIds.Close();
-    }
-
-/**
-@param      aFamily the sub-connection parameter family to which the newly created object is to be added
-@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
-@return     pointer to the created object
-@publishedAll
-@released Since 9.3
-*/
-CSubConSBLPR5ExtensionParamSet* CSubConSBLPR5ExtensionParamSet::NewL(CSubConParameterFamily& aFamily, CSubConParameterFamily::TParameterSetType aType)
-    {
-    CSubConSBLPR5ExtensionParamSet* sblpExtn = NewL();
-    CleanupStack::PushL(sblpExtn);
-    aFamily.AddExtensionSetL(*sblpExtn, aType);
-    CleanupStack::Pop(sblpExtn);
-    return sblpExtn;
-    }
-
-/**
-@param      aFamily the parameter family to which the newly created object is to be added
-@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
-@return     pointer to the created object
-@publishedAll
-@released Since 9.3
-*/
-CSubConSBLPR5ExtensionParamSet* CSubConSBLPR5ExtensionParamSet::NewL(RParameterFamily& aFamily, RParameterFamily::TParameterSetType aType)
-    {
-    CSubConSBLPR5ExtensionParamSet* obj = NewL();
-    CleanupStack::PushL(obj);
-    aFamily.AddParameterSetL(obj, aType);
-    CleanupStack::Pop(obj);
-    return obj;
-    }
-
-/**
-@return     pointer to the created object
-@publishedAll
-@released Since 9.3
-*/
-CSubConSBLPR5ExtensionParamSet* CSubConSBLPR5ExtensionParamSet::NewL()
-    {
-    STypeId typeId = STypeId::CreateSTypeId(KSubCon3GPPExtParamsFactoryUid, KSubConnSBLPR5ExtensionParamsType);
-    return static_cast<CSubConSBLPR5ExtensionParamSet*>(CSubConParameterSet::NewL(typeId));
-    }
-
-/**
-@return     the media authorisation token
-@publishedAll
-@released Since 9.3
-*/
-const TAuthToken& CSubConSBLPR5ExtensionParamSet::GetMAT() const
-    {
-    return iAuthToken;
-    }
-
-/**
-@param      aAuthToken sets the media authorisation token
-@publishedAll
-@released Since 9.3
-*/
-void CSubConSBLPR5ExtensionParamSet::SetMAT(const TAuthToken& aAuthToken)
-    {
-    iAuthToken = aAuthToken;
-    }
-
-/**
-@return the number of flow indexes in this session
-@publishedAll
-@released Since 9.3
-*/
-TInt CSubConSBLPR5ExtensionParamSet::GetNumberOfFlowIds() const
-    {
-    return iFlowIds.Count();
-    }
-
-/**
-@param      aIndex the index of the flow identifier that will be returned.
-@return     the flow identifier at the index given by aIndex.
-@publishedAll
-@released Since 9.3
-*/
-const TFlowId& CSubConSBLPR5ExtensionParamSet::GetFlowIdAt(TInt aIndex) const
-    {
-    return iFlowIds[aIndex];
-    }
-
-/**         adds a flow identifier to this session.
-@param      aFlowId the flow indentifier to be added.
-@publishedAll
-@released Since 9.3
-*/
-void CSubConSBLPR5ExtensionParamSet::AddFlowIdL(const TFlowId & aFlowId)
-    {
-    iFlowIds.AppendL(aFlowId);
-    }
-
-#endif
-// QOS3GPP_SUBCONPARAMS_INL
-
+// Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+// Inline Functions file for the 3GPP SubConnection Extension Parameters
+// 
+//
+
+/**
+ @file
+ @publishedAll
+ @released
+*/
+
+
+
+#ifndef QOS3GPP_SUBCONPARAMS_INL
+#define QOS3GPP_SUBCONPARAMS_INL
+
+/**
+@param      aFamily the sub-connection parameter family to which the newly created object is to be added
+@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
+@return     pointer to the created object
+@publishedAll
+@released Since 9.3
+*/
+CSubConQosR99ParamSet* CSubConQosR99ParamSet::NewL(CSubConParameterFamily& aFamily, CSubConParameterFamily::TParameterSetType aType)
+    {
+    CSubConQosR99ParamSet* obj = NewL();
+    CleanupStack::PushL(obj);
+    aFamily.AddExtensionSetL(*obj, aType);
+    CleanupStack::Pop(obj);
+    return obj;
+    }
+
+/**
+@param      aFamily the parameter family to which the newly created object is to be added
+@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
+@return     pointer to the created object
+@publishedAll
+@released Since 9.3
+*/
+CSubConQosR99ParamSet* CSubConQosR99ParamSet::NewL(RParameterFamily& aFamily, RParameterFamily::TParameterSetType aType)
+    {
+    CSubConQosR99ParamSet* obj = NewL();
+    CleanupStack::PushL(obj);
+    aFamily.AddParameterSetL(obj, aType);
+    CleanupStack::Pop(obj);
+    return obj;
+    }
+
+/**
+@return     pointer to the created object
+@publishedAll
+@released Since 9.3
+*/
+CSubConQosR99ParamSet* CSubConQosR99ParamSet::NewL()
+    {
+    STypeId typeId = STypeId::CreateSTypeId(KSubCon3GPPExtParamsFactoryUid, KSubConQosR99ParamsType);
+    return static_cast<CSubConQosR99ParamSet*>(CSubConParameterSet::NewL(typeId));
+    }
+
+/**
+@publishedAll
+@released Since 9.3
+*/
+CSubConQosR99ParamSet::CSubConQosR99ParamSet()
+    : CSubConExtensionParameterSet(),
+    iTrafficClass(RPacketQoS::ETrafficClassUnspecified),
+    iDeliveryOrder(RPacketQoS::EDeliveryOrderUnspecified),
+    iDeliveryOfErroneusSdu(RPacketQoS::EErroneousSDUDeliveryUnspecified),
+    iResidualBer(RPacketQoS::EBERUnspecified),
+    iErrorRatio(RPacketQoS::ESDUErrorRatioUnspecified),
+    iPriority(RPacketQoS::ETrafficPriorityUnspecified),
+    iTransferDelay(0),
+    iMaxSduSize(0),
+    iMaxBitrateUplink(0),
+    iMaxBitrateDownlink(0),
+    iGuaBitrateUplink(0),
+    iGuaBitrateDownlink(0)
+    {
+    }
+
+/** Identifies the current traffic class. Traffic class is; Converstional, Streaming, Interactive or Background.
+See 3GPP TS 23.107.
+@return the traffic class
+@publishedAll
+@released Since 9.3
+*/
+RPacketQoS::TTrafficClass CSubConQosR99ParamSet::GetTrafficClass() const
+    {
+    return iTrafficClass;
+    }
+
+/** Current delivery order. Indicates whether the bearer shall provide in-sequence SDU delivery or not.
+@return Current delivery order. 
+@publishedAll
+@released Since 9.3
+*/
+RPacketQoS::TDeliveryOrder CSubConQosR99ParamSet::GetDeliveryOrder() const
+    {
+    return iDeliveryOrder;
+    }
+
+/** Current delivery of erroneous SDUs. Indicates whether SDUs detected as erroneous shall be delivered or discarded.
+@return Current delivery of erroneous SDUs. 
+@publishedAll
+@released Since 9.3
+*/
+RPacketQoS::TErroneousSDUDelivery CSubConQosR99ParamSet::GetErroneousSDUDelivery() const
+    {
+    return iDeliveryOfErroneusSdu;
+    }
+
+/** Indicates the undetected bit error ratio in the delivered SDUs. If no error detection is
+requested, Residual bit error ratio indicates the bit error ratio in
+the delivered SDUs.
+@return the residual bit error ratio. 
+@publishedAll
+@released Since 9.3
+*/
+RPacketQoS::TBitErrorRatio CSubConQosR99ParamSet::GetResidualBitErrorRatio() const
+    {
+    return iResidualBer;
+    }
+
+/** Indicates the fraction of SDUs lost or detected as erroneous.
+@return the SDU error ratio.  
+@publishedAll
+@released Since 9.3
+*/
+RPacketQoS::TSDUErrorRatio CSubConQosR99ParamSet::GetSDUErrorRatio() const
+    {
+    return iErrorRatio;
+    }
+
+/** Current traffic handling priority. Specifies the relative importance for handling of all SDUs
+belonging to the UMTS bearer compared to the SDUs of other bearers. This is defined only for
+Interactive traffic class. See 3GPP TS 23.107
+@return the traffic handling priority. 
+@publishedAll
+@released Since 9.3
+*/
+RPacketQoS::TTrafficHandlingPriority CSubConQosR99ParamSet::GetTrafficHandlingPriority() const
+    {
+    return iPriority;
+    }
+
+/** @return the transfer delay. Indicates maximum delay for 95th percentile of the distribution
+of delay for all delivered SDUs during the lifetime of a bearer service, where delay for an SDU
+is defined as the time from a request to transfer an SDU at one SAP to its delivery at the other
+SAP. 
+@publishedAll
+@released Since 9.3
+*/
+TInt CSubConQosR99ParamSet::GetTransferDelay() const
+    {
+    return iTransferDelay;
+    }
+
+/** @return the maximum SDU size. 
+@publishedAll
+@released Since 9.3
+*/
+TInt CSubConQosR99ParamSet::GetMaxSduSize() const
+    {
+    return iMaxSduSize;
+    }
+
+/** @return Current maximum bitrate for uplink direction. The traffic is conformant with Maximum
+bitrate as long as it follows a token bucket algorithm where token rate equals Maximum bitrate
+and bucket size equals Maximum SDU size.
+@publishedAll
+@released Since 9.3
+*/
+TInt CSubConQosR99ParamSet::GetMaxBitrateUplink() const
+    {
+    return iMaxBitrateUplink;
+    }
+
+/** Getter function for the maximum downlink bit rate.
+@return the maximum downlink bit rate. 
+@publishedAll
+@released Since 9.3
+*/
+TInt CSubConQosR99ParamSet::GetMaxBitrateDownlink() const
+    {
+    return iMaxBitrateDownlink;
+    }
+
+/** Getter function for the guaranteed uplink bit rate.
+@return the guaranteed uplink bit rate. 
+@publishedAll
+@released Since 9.3
+*/
+TInt CSubConQosR99ParamSet::GetGuaBitrateUplink() const
+    {
+    return iGuaBitrateUplink;
+    }
+
+/** Getter function for the guaranteed downlink bit rate.
+@return the guaranteed downlink bit rate. 
+@publishedAll
+@released Since 9.3
+*/
+TInt CSubConQosR99ParamSet::GetGuaBitrateDownlink() const
+    {
+    return iGuaBitrateDownlink;
+    }
+
+/** Sets the traffic class.
+@param aTrafficClass Value to which to set the traffic class. 
+@publishedAll
+@released Since 9.3
+*/
+void CSubConQosR99ParamSet::SetTrafficClass(RPacketQoS::TTrafficClass aTrafficClass)
+    {
+    iTrafficClass = aTrafficClass;
+    }
+
+/** Sets the delivery order. Indicates whether in-sequence SDU delivery shall be provided or not.
+@param aDeliveryOrder Value to which to set the delivery order. 
+@publishedAll
+@released Since 9.3
+*/
+void CSubConQosR99ParamSet::SetDeliveryOrder(RPacketQoS::TDeliveryOrder aDeliveryOrder)
+    {
+    iDeliveryOrder = aDeliveryOrder;
+    }
+
+/** Sets the handling of the delivery of erroneous SDUs
+@param aDeliveryOfErroneusSdu Value to which to set the dilvery of erroneous SDUs.
+Indicates whether SUDs detected as erroneous shall be delivered or discarded. 
+@publishedAll
+@released Since 9.3
+*/
+void CSubConQosR99ParamSet::SetErroneousSDUDelivery(RPacketQoS::TErroneousSDUDelivery aDeliveryOfErroneusSdu)
+    {
+    iDeliveryOfErroneusSdu = aDeliveryOfErroneusSdu;
+    }
+
+/** Sets the residual bit error ratio. Indicates the undetected bit error ratio in the delivered SDUs.
+If no error detection is requested, Residual bit error ratio indicates the bit error ratio in the delivered SDUs.
+@param aResidualBer Value to which to set the residual bit error ratio. 
+@publishedAll
+@released Since 9.3
+*/
+void CSubConQosR99ParamSet::SetResidualBitErrorRatio(RPacketQoS::TBitErrorRatio aResidualBer)
+    {
+    iResidualBer = aResidualBer;
+    }
+
+/** Sets the error ratio. Indicates the fraction of SDUs lost or detected as erroneous.
+SDU error ratio is defined only for conforming traffic.
+@param aErrorRatio Sets the error ratio. Indicates the fraction of SDUs lost or detected as erroneous.
+SDU error ratio is defined only for conforming traffic. 
+@publishedAll
+@released Since 9.3
+*/
+void CSubConQosR99ParamSet::SetSDUErrorRatio(RPacketQoS::TSDUErrorRatio aErrorRatio)
+    {
+    iErrorRatio = aErrorRatio;
+    }
+
+/** Sets the traffic handling priority.
+@param aPriority Value to which to set the traffic handling priority. 
+@publishedAll
+@released Since 9.3
+*/
+void CSubConQosR99ParamSet::SetTrafficHandlingPriority(RPacketQoS::TTrafficHandlingPriority aPriority)
+    {
+    iPriority = aPriority;
+    }
+
+/** Sets the transfer delay. Indicates maximum delay for 95th percentile of the distribution of delay for
+all delivered SDUs during the lifetime of a bearer service, where delay for an SDU is defined as the time
+from a request to transfer an SDU at one SAP to its delivery at the other SAP.
+@param aTransferDelay Value to which to set the transfer delay. 
+@publishedAll
+@released Since 9.3
+*/
+void CSubConQosR99ParamSet::SetTransferDelay(TInt aTransferDelay)
+    {
+    iTransferDelay = aTransferDelay;
+    }
+
+/** Sets the maximum SDU size. Defines the maximum allowed SDU size.
+@param aMaxSduSize Value to which to set the maximum SDU size. 
+@publishedAll
+@released Since 9.3
+*/
+void CSubConQosR99ParamSet::SetMaxSduSize(TInt aMaxSduSize)
+    {
+    iMaxSduSize = aMaxSduSize;
+    }
+
+/** Sets the maximum bitrate for uplink direction. The traffic is conformant with Maximum bitrate as
+long as it follows a token bucket algorithm where token rate equals Maximum bitrate and bucket size
+equals Maximum SDU size.
+@param aMaxBitrate Value to which to set the maximum bitrate for uplink direction.
+@publishedAll
+@released Since 9.3
+*/
+void CSubConQosR99ParamSet::SetMaxBitrateUplink(TInt aMaxBitrateUplink)
+    {
+    iMaxBitrateUplink = aMaxBitrateUplink;
+    }
+
+/** Sets the maximum bitrate for downlink direction. The traffic is conformant with Maximum bitrate as
+long as it follows a token bucket algorithm where token rate equals Maximum bitrate and bucket size
+equals Maximum SDU size.
+@param aMaxBitrate Value to which to set the maximum bitrate for downlink direction.
+@publishedAll
+@released Since 9.3
+*/
+void CSubConQosR99ParamSet::SetMaxBitrateDownlink(TInt aMaxBitrateDownlink)
+    {
+    iMaxBitrateDownlink = aMaxBitrateDownlink;
+    }
+
+/** Sets the guaranteed bitrate for uplink direction.
+@param aGuaBitrateUplink Value to which to set the guaranteed SDU size.
+@publishedAll
+@released Since 9.3
+*/
+void CSubConQosR99ParamSet::SetGuaBitrateUplink(TInt aGuaBitrateUplink)
+    {
+    iGuaBitrateUplink = aGuaBitrateUplink;
+    }
+
+/** Sets the guaranteed bitrate for downlink direction.
+@param aGuaBitrateDownlink Value to which to set the guaranteed SDU size.
+@publishedAll
+@released Since 9.3
+*/
+void CSubConQosR99ParamSet::SetGuaBitrateDownlink(TInt aGuaBitrateDownlink)
+    {
+    iGuaBitrateDownlink = aGuaBitrateDownlink;
+    }
+
+
+#ifdef SYMBIAN_NETWORKING_UMTSR5
+/**
+@param aFamily the sub-connection parameter family to which the newly created object is to be added
+@param aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
+@return pointer to the created object
+*/
+CSubConImsExtParamSet* CSubConImsExtParamSet::NewL(CSubConParameterFamily& aFamily, CSubConParameterFamily::TParameterSetType aType)
+    {
+    CSubConImsExtParamSet* obj = NewL();
+    CleanupStack::PushL(obj);
+    aFamily.AddExtensionSetL(*obj, aType);
+    CleanupStack::Pop(obj);
+    return obj;
+    }
+
+/**
+@param      aFamily the parameter family to which the newly created object is to be added
+@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
+@return     pointer to the created object
+*/
+CSubConImsExtParamSet* CSubConImsExtParamSet::NewL(RParameterFamily& aFamily, RParameterFamily::TParameterSetType aType)
+    {
+    CSubConImsExtParamSet* obj = NewL();
+    CleanupStack::PushL(obj);
+    aFamily.AddParameterSetL(obj, aType);
+    CleanupStack::Pop(obj);
+    return obj;
+    }
+
+/**
+@return pointer to the created object
+*/
+CSubConImsExtParamSet* CSubConImsExtParamSet::NewL()
+    {
+    STypeId typeId = STypeId::CreateSTypeId(KSubCon3GPPExtParamsFactoryUid, KSubConImsExtParamsType);
+    return static_cast<CSubConImsExtParamSet*>(CSubConParameterSet::NewL(typeId));
+    }
+
+CSubConImsExtParamSet::CSubConImsExtParamSet()
+    : iImsSignallingIndicator(EFalse)
+    {
+    }
+
+/** @return the IMS Signalling Indicator flag for 3GPP R5 dedicated signalling PDP contexts.
+*/
+TBool CSubConImsExtParamSet::GetImsSignallingIndicator() const
+    {
+    return iImsSignallingIndicator;
+    }
+
+/** Sets the IMS Signalling Indicator flag for 3GPP R5 dedicated signalling PDP contexts.
+@param aImsSignallingIndicator Value to which to set the IMS signalling indicator. */
+void CSubConImsExtParamSet::SetImsSignallingIndicator(TBool aImsSignallingIndicator)
+    {
+    iImsSignallingIndicator = aImsSignallingIndicator;
+    }
+
+/**
+@param      aFamily the sub-connection parameter family to which the newly created object is to be added
+@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
+@return     pointer to the created object
+*/
+CSubConQosR5ParamSet* CSubConQosR5ParamSet::NewL(CSubConParameterFamily& aFamily,CSubConParameterFamily::TParameterSetType aType)
+    {
+    CSubConQosR5ParamSet* obj = NewL();
+    CleanupStack::PushL(obj);
+    aFamily.AddExtensionSetL(*obj, aType);
+    CleanupStack::Pop(obj);
+    return obj;
+    }
+
+/**
+@param      aFamily the parameter family to which the newly created object is to be added
+@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
+@return     pointer to the created object
+*/
+CSubConQosR5ParamSet* CSubConQosR5ParamSet::NewL(RParameterFamily& aFamily, RParameterFamily::TParameterSetType aType)
+    {
+    CSubConQosR5ParamSet* obj = NewL();
+    CleanupStack::PushL(obj);
+    aFamily.AddParameterSetL(obj, aType);
+    CleanupStack::Pop(obj);
+    return obj;
+    }
+
+/**
+@return     pointer to the created object
+*/
+CSubConQosR5ParamSet* CSubConQosR5ParamSet::NewL()
+    {
+    STypeId typeId = STypeId::CreateSTypeId(KSubCon3GPPExtParamsFactoryUid, KSubConQosR5ParamsType);
+    return static_cast<CSubConQosR5ParamSet*>(CSubConParameterSet::NewL(typeId));
+    }
+
+/**
+*/
+CSubConQosR5ParamSet::CSubConQosR5ParamSet()
+    : iSrcStatsDesc(RPacketQoS::ESourceStatisticsDescriptorUnknown), iSignallingIndicator(EFalse)
+    {
+    }
+
+/** Gets the signalling nature of the SDU's. Signalling traffic can have different characteristics
+to other interactive traffic, eg higher priority, lower delay and increased peakiness. This attribute
+permits enhancing the Radio Access Network (RAN) operation accordingly. See 3GPP TS 23.107
+@return the signalling nature of the SDU's.
+*/
+TBool CSubConQosR5ParamSet::GetSignallingIndicator() const
+    {
+    return iSignallingIndicator;
+    }
+
+/** Sets signalling nature of the SDU's. This attribute is additional to the other QoS
+attributes and does not over-ride them. Signalling traffic can have different characteristics
+to other interactive traffic, eg higher priority, lower delay and increased peakiness. This
+attribute permits enhancing the Radio Access Network (RAN) operation accordingly. An example use of
+the Signalling Indication is for IMS signalling traffic. See 3GPP TS 23.107
+@param aSignallingIndicator Value to which to set the signalling indicator. */
+void CSubConQosR5ParamSet::SetSignallingIndicator(TBool aSignallingIndicator)
+    {
+    iSignallingIndicator = aSignallingIndicator;
+    }
+
+/** @return the source of the SDU's. */
+RPacketQoS::TSourceStatisticsDescriptor CSubConQosR5ParamSet::GetSourceStatisticsDescriptor() const
+    {
+    return iSrcStatsDesc;
+    }
+
+/** Sets the source characteristic of the SDU's. Conversational speech has a well-known statistical
+behaviour (or the discontinuous transmission (DTX) factor). By being informed that the SDUs for a Radio
+Access Bearer (RAB) are generated by a speech source, Radio Access Network (RAN) may, based on experience,
+calculate a statistical multiplex gain for use in admission control on the radio and RAN Access interfaces.
+@param aSrcStatsDescType Value to which to set the source statistics indicator. */
+void CSubConQosR5ParamSet::SetSourceStatisticsDescriptor(RPacketQoS::TSourceStatisticsDescriptor aSrcStatsDescType)
+    {
+    iSrcStatsDesc = aSrcStatsDescType;
+    }
+
+#endif
+// SYMBIAN_NETWORKING_UMTSR5
+
+/** the Media Component number as specified in 3GPP TS 29.207
+@return the media component number portion of the flow identifier
+@publishedAll
+@released Since 9.3
+*/
+TUint16 TFlowId::GetMediaComponentNumber() const
+    {
+    return iMediaComponentNumber;
+    }
+
+/** the IP flow number as specified in 3GPP TS 29.207
+@return the IP flow portion of the flow identifier
+@publishedAll
+@released Since 9.3
+*/
+TUint16 TFlowId::GetIPFlowNumber() const
+    {
+    return iIPFlowNumber;
+    }
+
+/** Sets the media component number portion of the flow identifier. The Media Component number is specified in 3GPP TS 29.207
+@param aMediaComponentNumber the media component portion of the flow identifier
+@publishedAll
+@released Since 9.3
+*/
+void TFlowId::SetMediaComponentNumber(TUint16 aMediaComponentNumber)
+    {
+    iMediaComponentNumber = aMediaComponentNumber;
+    }
+
+/**
+@param the IP flow portion of the flow identifier.
+@publishedAll
+@released Since 9.3
+*/
+void TFlowId::SetIPFlowNumber(TUint16 aIPFlowNumber)
+    {
+    iIPFlowNumber = aIPFlowNumber;
+    }
+
+
+//===========================
+// Implementation Extension class
+/**
+@publishedAll
+@released Since 9.3
+*/
+CSubConSBLPR5ExtensionParamSet::CSubConSBLPR5ExtensionParamSet()
+    : CSubConExtensionParameterSet()
+    {
+    }
+
+/**
+@publishedAll
+@released Since 9.3
+*/
+CSubConSBLPR5ExtensionParamSet::~CSubConSBLPR5ExtensionParamSet()
+    {
+    iFlowIds.Close();
+    }
+
+/**
+@param      aFamily the sub-connection parameter family to which the newly created object is to be added
+@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
+@return     pointer to the created object
+@publishedAll
+@released Since 9.3
+*/
+CSubConSBLPR5ExtensionParamSet* CSubConSBLPR5ExtensionParamSet::NewL(CSubConParameterFamily& aFamily, CSubConParameterFamily::TParameterSetType aType)
+    {
+    CSubConSBLPR5ExtensionParamSet* sblpExtn = NewL();
+    CleanupStack::PushL(sblpExtn);
+    aFamily.AddExtensionSetL(*sblpExtn, aType);
+    CleanupStack::Pop(sblpExtn);
+    return sblpExtn;
+    }
+
+/**
+@param      aFamily the parameter family to which the newly created object is to be added
+@param      aType The type of the set from TParameterSetType (ERequested, EAcceptable or EGranted)
+@return     pointer to the created object
+@publishedAll
+@released Since 9.3
+*/
+CSubConSBLPR5ExtensionParamSet* CSubConSBLPR5ExtensionParamSet::NewL(RParameterFamily& aFamily, RParameterFamily::TParameterSetType aType)
+    {
+    CSubConSBLPR5ExtensionParamSet* obj = NewL();
+    CleanupStack::PushL(obj);
+    aFamily.AddParameterSetL(obj, aType);
+    CleanupStack::Pop(obj);
+    return obj;
+    }
+
+/**
+@return     pointer to the created object
+@publishedAll
+@released Since 9.3
+*/
+CSubConSBLPR5ExtensionParamSet* CSubConSBLPR5ExtensionParamSet::NewL()
+    {
+    STypeId typeId = STypeId::CreateSTypeId(KSubCon3GPPExtParamsFactoryUid, KSubConnSBLPR5ExtensionParamsType);
+    return static_cast<CSubConSBLPR5ExtensionParamSet*>(CSubConParameterSet::NewL(typeId));
+    }
+
+/**
+@return     the media authorisation token
+@publishedAll
+@released Since 9.3
+*/
+const TAuthToken& CSubConSBLPR5ExtensionParamSet::GetMAT() const
+    {
+    return iAuthToken;
+    }
+
+/**
+@param      aAuthToken sets the media authorisation token
+@publishedAll
+@released Since 9.3
+*/
+void CSubConSBLPR5ExtensionParamSet::SetMAT(const TAuthToken& aAuthToken)
+    {
+    iAuthToken = aAuthToken;
+    }
+
+/**
+@return the number of flow indexes in this session
+@publishedAll
+@released Since 9.3
+*/
+TInt CSubConSBLPR5ExtensionParamSet::GetNumberOfFlowIds() const
+    {
+    return iFlowIds.Count();
+    }
+
+/**
+@param      aIndex the index of the flow identifier that will be returned.
+@return     the flow identifier at the index given by aIndex.
+@publishedAll
+@released Since 9.3
+*/
+const TFlowId& CSubConSBLPR5ExtensionParamSet::GetFlowIdAt(TInt aIndex) const
+    {
+    return iFlowIds[aIndex];
+    }
+
+/**         adds a flow identifier to this session.
+@param      aFlowId the flow indentifier to be added.
+@publishedAll
+@released Since 9.3
+*/
+void CSubConSBLPR5ExtensionParamSet::AddFlowIdL(const TFlowId & aFlowId)
+    {
+    iFlowIds.AppendL(aFlowId);
+    }
+
+#endif
+// QOS3GPP_SUBCONPARAMS_INL
+