linklayercontrol/mbmsparameters/inc/mbmsparams.inl
changeset 0 af10295192d8
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/linklayercontrol/mbmsparameters/inc/mbmsparams.inl	Tue Jan 26 15:23:49 2010 +0200
@@ -0,0 +1,427 @@
+// Copyright (c) 2008-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:
+//
+
+/**
+ @file
+ @publishedPartner
+ @released since 9.5
+*/
+
+#ifndef __MBMSPARAMS_INL__
+#define __MBMSPARAMS_INL__
+
+#include <e32debug.h>
+
+// implementation, to be copied to .inl file
+
+namespace ConnectionServ
+{  
+TMBMSInfo* TMBMSChannelInfoV1::AddrPtr() 
+/** 
+    Gets a pointer to the buffer TChannel.
+	
+	@return TMBMSInfo*
+*/
+    {
+    return reinterpret_cast<TMBMSInfo*>(UserPtr());
+    } 
+
+TMBMSChannelInfoV1::TMBMSChannelInfoV1()
+/**
+   Standard constructor.
+*/
+	{
+	SetUserLength(sizeof(TMBMSInfo));
+	}
+	
+void TMBMSChannelInfoV1::SetTmgi(const TTmgi& aTmgi)
+/** 
+    Setter method to set TTmgi
+	
+	@param aTmgi a reference to the existing TTmgi. 
+*/
+	{
+	AddrPtr()->iTmgi = aTmgi;
+	}
+
+const TTmgi& TMBMSChannelInfoV1::GetTmgi() 
+/** 
+    Getter method to get TTmgi.
+	
+	@return TTmgi&.
+*/
+	{
+	return AddrPtr()->iTmgi;
+	}
+	
+void TMBMSChannelInfoV1::SetScope(const TMbmsScope aMbmsScope)
+/** 
+    Setter method to set MbmsScope
+	
+	@param aTmgiScope a reference to the existing TTmgiScope. 
+*/
+	{
+	AddrPtr()->iMbmsScope = aMbmsScope;
+	}
+const TMbmsScope TMBMSChannelInfoV1::GetScope() 
+/** 
+    Getter method to get TTmgiScope.
+	
+	@return TMbmsScope&.
+*/
+	{
+	return AddrPtr()->iMbmsScope;
+	}		
+const TInetAddr& TMBMSChannelInfoV1::GetInetAddress() 
+/** 
+    Getter method to retrieve IP address.This function is implemented for later use to
+	set multicast address.
+	
+	@return TInetAddr&.
+*/
+	{
+	return AddrPtr()->iInetAddr;
+	}
+	
+void TMBMSChannelInfoV1::SetInetAddress(const TInetAddr& aInetAddr)
+/** 
+    Setter method to set IP address.This function is implemented for later use.
+	
+	@param aInetAddr a reference to the existing TInetAddr. 
+*/
+	{
+	AddrPtr()->iInetAddr = aInetAddr;
+	}
+	
+TMbmsServicePriority TMBMSChannelInfoV1::GetServicePriority() 
+/** 
+    Getter method to retrieve service priority.
+	
+	@return TMbmsServicePriority 
+*/
+ 	{
+ 	return AddrPtr()->iServicePriority;
+ 	}
+ 	
+void TMBMSChannelInfoV1::SetServicePriority(const TMbmsServicePriority aServicePriority)
+/** 
+    Setter method to set service priority.
+	
+	@param aServicePriority of type TMbmsServicePriority
+*/
+	{
+	AddrPtr()->iServicePriority = aServicePriority;
+	}
+
+
+XMBMSServiceParameterSet::XMBMSServiceParameterSet()
+/**
+   Standard constructor.
+ */
+	{
+	}
+TMbmsServiceMode XMBMSServiceParameterSet::GetServiceMode() const
+/** 
+    Getter method to get MBMS service mode.
+	
+	@return TMbmsServiceMode 
+*/
+    {
+    return iServiceMode;
+    }
+void XMBMSServiceParameterSet::SetServiceMode(const TMbmsServiceMode  aServiceMode)
+/** 
+    Setter method to set MBMS service mode.
+	
+	@param aServiceMode of type TMbmsServiceMode
+*/
+	{
+	iServiceMode = aServiceMode;
+	}
+TMbmsAvailabilityStatus XMBMSServiceParameterSet::GetMBMSServiceAvailability() const
+/** 
+    Getter method to get MBMS service availability
+		
+	@return TMbmsAvailabilityStatus. 
+*/
+	{
+    return iAvailabilityStatus;
+	}
+void XMBMSServiceParameterSet::SetMBMSServiceAvailability(const TMbmsAvailabilityStatus aAvailabilityStatus)
+/** 
+    Setter method to set MBMS service availability
+	
+	@param aAvailabilityStatus of type TMbmsAvailabilityStatus.
+*/	
+	{
+	iAvailabilityStatus = aAvailabilityStatus;
+	}
+ TMBMSChannelInfoV1* XMBMSServiceParameterSet::GetChannelInfo() 
+/** 
+    Getter method to get MBMS service information.
+		
+	@return TMBMSChannelInfoV1& 
+*/
+	{
+	return &iServiceInfo;
+	}
+
+void XMBMSServiceQuerySet::SetQueryType(const TQueryType aQueryType)
+/** 
+    Setter method to set MBMS query type.
+	
+	@param aQueryType of type TQueryType.
+*/
+	{
+	iQueryType = aQueryType;
+	}
+XMBMSServiceQuerySet::TQueryType XMBMSServiceQuerySet::GetQueryType() const
+/** 
+    Getter method to get MBMS query type.
+	
+	@return TQueryType 
+*/
+	{
+	return iQueryType;
+	}
+
+//Checks for MBMS Bearer Availability
+TMbmsNetworkServiceStatus XMBMSServiceQuerySet::GetMBMSBearerAvailability() const
+/** 
+    Getter method to get MBMS bearer availability.
+	
+	@return TMbmsNetworkServiceStatus.
+*/
+	{
+	return iBearerAvailability;
+	}
+	
+void XMBMSServiceQuerySet::SetMBMSBearerAvailability(const TMbmsNetworkServiceStatus aBearerAvailability)
+/** 
+    Setter method to set MBMS bearer availability.
+	
+	@param aBearerAvailability of type TMbmsNetworkServiceStatus.
+*/
+	{
+	iBearerAvailability = aBearerAvailability;
+	}
+	
+TUint XMBMSServiceQuerySet::GetListCount() const
+/** 
+    Getter method to get number of entries from the service or monitor list.
+	
+	@return TUint.
+*/
+	{
+	return iCurrentCount;
+	}
+void XMBMSServiceQuerySet::SetListCount(const TUint aCurrentCount)
+/** 
+    Setter method to set number of entries in service or monitor list.
+	
+	@param aCurrentCount of type TUint. 
+*/
+	{
+	iCurrentCount = aCurrentCount;
+	}
+TUint XMBMSServiceQuerySet::GetListMaxCount() const
+/** 
+    Getter method to get the maximum entries that a service or monitor list contain.
+	
+	@return TUint.
+*/
+	{
+	return iMaxCount;
+	}
+
+void XMBMSServiceQuerySet::SetListMaxCount(const TUint aMaxCount)
+/** 
+    Setter method to set the maximum entries that a service or monitor list contain.
+	
+	@param aMaxCount of type TUint.
+*/
+	{
+	iMaxCount = aMaxCount;
+	}
+
+CSubConChannelParamSet *CSubConChannelParamSet ::NewL(CSubConParameterFamily& aFamily, CSubConParameterFamily::TParameterSetType aType)
+/**
+@param      aFamily the sub-connection parameter family to set.
+@param      aType The type of the set from TParameterSetType (ERequested)
+@return     pointer to the created object
+*/
+    {
+    CSubConChannelParamSet * obj = NewL();
+    CleanupStack::PushL(obj);
+    aFamily.SetGenericSetL(*obj, aType);
+    CleanupStack::Pop(obj);
+    return obj;
+    }
+
+CSubConChannelParamSet *CSubConChannelParamSet ::NewL(RParameterFamily& aFamily, RParameterFamily::TParameterSetType aType)
+/**
+@param      aFamily the sub-connection parameter family to set.
+@param      aType The type of the set from TParameterSetType (ERequested)
+@return     pointer to the created object
+*/
+    {
+    CSubConChannelParamSet * obj = NewL();
+    CleanupStack::PushL(obj);
+    aFamily.AddParameterSetL(obj, aType);
+    CleanupStack::Pop(obj);
+    return obj;
+    }
+
+CSubConChannelParamSet* CSubConChannelParamSet::NewL()
+/**
+@return     pointer to the created object
+*/
+    {
+    STypeId typeId = STypeId::CreateSTypeId(KSubConChannelParamsImplUid, KSubConChannelParamsType );
+    return static_cast<CSubConChannelParamSet*>(CSubConParameterSet::NewL(typeId));
+    }
+
+
+CSubConChannelParamSet::CSubConChannelParamSet()
+    {
+    }
+ 
+
+
+TAny* CSubConChannelParamSet::GetChannelInfo() 
+/** Gets the Channel information
+@return aServiceInfo value of the channel
+*/
+    {
+    return iServiceInfo.UserPtr();
+    }
+
+
+
+//Mbms Session Extension Parameters Functions
+
+CSubConMBMSExtensionParamSet * CSubConMBMSExtensionParamSet ::NewL(CSubConParameterFamily& aFamily, CSubConParameterFamily::TParameterSetType aType)
+/**
+@param      aFamily the sub-connection parameter family to set.
+@param      aType The type of the set from TParameterSetType (ERequested)
+@return     pointer to the created object
+*/
+    {
+    CSubConMBMSExtensionParamSet * obj = NewL();
+    CleanupStack::PushL(obj);
+    aFamily.AddExtensionSetL(*obj, aType);
+    CleanupStack::Pop(obj);
+    return obj;
+    }
+
+CSubConMBMSExtensionParamSet * CSubConMBMSExtensionParamSet ::NewL(RParameterFamily& aFamily, RParameterFamily::TParameterSetType aType)
+/**
+@param      aFamily the sub-connection parameter family to set.
+@param      aType The type of the set from TParameterSetType (ERequested)
+@return     pointer to the created object
+*/
+    {
+    CSubConMBMSExtensionParamSet * obj = NewL();
+    CleanupStack::PushL(obj);
+    aFamily.AddParameterSetL(obj, aType);
+    CleanupStack::Pop(obj);
+    return obj;
+    }
+
+
+CSubConMBMSExtensionParamSet* CSubConMBMSExtensionParamSet::NewL()
+/**
+@return     pointer to the created object
+*/
+    {
+    STypeId typeId = STypeId::CreateSTypeId(KSubConMBMSExtParamsImplUid, KSubConMBMSSessionExtParamsType );
+    return static_cast<CSubConMBMSExtensionParamSet*>(CSubConParameterSet::NewL(typeId));
+    }
+
+//===========================
+// Implementation Extension class
+CSubConMBMSExtensionParamSet::CSubConMBMSExtensionParamSet()
+	: CSubConExtensionParameterSet()
+    {
+    }
+
+
+
+void CSubConMBMSExtensionParamSet::SetSessionId(const TUint aSessionId)
+/**         adds a Session Id to the MBMS Service
+@param      aFlowId the flow indentifier to be added.
+*/
+	{
+	this->iSessionIds.Append(aSessionId);
+	}
+
+
+TInt CSubConMBMSExtensionParamSet::GetSessionId(const TUint aIndex)
+/**
+@param      aIndex the index of the flow identifier that will be returned.
+@return     the Mbms Session Id at the index given by aIndex.
+*/
+	{
+	return this->iSessionIds[aIndex];
+	}
+
+
+TInt CSubConMBMSExtensionParamSet::GetSessionCount() const
+/**
+
+@return the number of SessionIds in the MBMS service
+*/
+	{
+	return this->iSessionIds.Count();
+	}
+
+
+void CSubConMBMSExtensionParamSet::SetServiceMode(const TMbmsServiceMode aServiceMode)
+/** Sets the MBMS Service Mode
+
+@param aServiceMode value of the service
+*/
+	{
+	iServiceMode=aServiceMode;
+	}
+
+TMbmsServiceMode CSubConMBMSExtensionParamSet::GetServiceMode() const
+/**
+@return the MBMS service mode.
+*/
+	{
+	return iServiceMode;
+	}
+
+
+CSubConMBMSExtensionParamSet::TOperationType CSubConMBMSExtensionParamSet::GetOperationType () const
+/**
+@return the MBMS Extension Set class operation type
+*/
+	{
+	return iOperationType;
+	}
+
+void CSubConMBMSExtensionParamSet::SetOperationType(CSubConMBMSExtensionParamSet::TOperationType aOperationType)
+/** Sets the MBMS Extension Set Operation Type
+@param aOperationType value 
+*/
+	{
+	iOperationType = aOperationType;
+	}
+
+} // namespace ConnectionServ
+
+#endif	// __MBMSPARAMS_INL__