epoc32/include/cs_subconparams.h
author William Roberts <williamr@symbian.org>
Tue, 16 Mar 2010 16:12:26 +0000
branchSymbian2
changeset 2 2fe1408b6811
parent 0 061f57f2323e
child 4 837f303aceeb
permissions -rw-r--r--
Final list of Symbian^2 public API header files

// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
// All rights reserved.
// This component and the accompanying materials are made available
// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
// which accompanies this distribution, and is available
// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
//
// Initial Contributors:
// Nokia Corporation - initial contribution.
//
// Contributors:
//
// Description:
// Header file for the Automated Test Tool
// 
//



/**
 @file 
 @publishedAll
 @released
*/

#ifndef __CS_SUBCONPARAMS_H__
#define __CS_SUBCONPARAMS_H__

#include <e32base.h>
#include <e32std.h>
#include <comms-infras/metadata.h>
#include <comms-infras/metatype.h>

#include <es_sock.h>

const TInt32 KSubConnQosGenericParamsType = 1;
const TInt32 KSubConnAuthorisationGenericParamsType = 2;
using Meta::SMetaDataECom;

class CSubConQosGenericParamSet : public CSubConGenericParameterSet
/** Qos generic parameter set.

This class contains a collection of generic QoS family parameters i.e, independent of any technology
and provides the interface to access them.

The following operations are also provided:

GetDownlinkBandwidth()/SetDownlinkBandwidth() - Accessor function for downlink bandwidth value.
GetUplinkBandwidth()/SetUplinkBandwidth() - Accessor function for uplink bandwidth value.
GetDownLinkMaximumBurstSize()/SetDownLinkMaximumBurstSize() - Accessor function for maximum size of downlink burst of data the client can handle.
GetUpLinkMaximumBurstSize()/SetUpLinkMaximumBurstSize() - Accessor function for maximum size of uplink burst of data the client can handle.
GetDownLinkAveragePacketSize()/SetDownLinkAveragePacketSize() - Accessor function for downlink average packet size data.
GetUpLinkAveragePacketSize()/SetUpLinkAveragePacketSize() - Accessor function for uplink average packet size data.
GetDownLinkMaximumPacketSize()/SetDownLinkMaximumPacketSize() - Accessor function for downlink maximum packet size data.
GetUpLinkMaximumPacketSize()/SetUpLinkMaximumPacketSize() - Accessor function for uplink maximum packet size data.
GetDownLinkDelay()/SetDownLinkDelay() - Accessor function for acceptable downlink delay/latency value.
GetUpLinkDelay()/SetUpLinkDelay() - Accessor function for acceptable uplink delay/latency value.
GetDownLinkDelayVariation()/SetDownLinkDelayVariation() - Accessor function for acceptable downlink variation in delay.
GetUpLinkDelayVariation()/SetUpLinkDelayVariation() - Accessor function for acceptable uplink variation in delay.
GetDownLinkPriority()/SetDownLinkPriority() - Accessor function for downlink priority
GetUpLinkPriority()/SetUpLinkPriority() - Accessor function for uplink priority
GetHeaderMode()/SetHeaderMode() - Accessor function for header mode (Specify whether the header size should be calculated by the QoS module or specified by the client)
GetName()/SetName() - Accessor function for QoS Parameters name.

@note SMetaDataECom must be the first in the superclasses' list
@publishedAll
@released since v9.1 */
{
public:
	inline static CSubConQosGenericParamSet* NewL(CSubConParameterFamily& aFamily, CSubConParameterFamily::TParameterSetType aType);
	inline static CSubConQosGenericParamSet* NewL();

	inline CSubConQosGenericParamSet();

	inline TInt GetDownlinkBandwidth() const;
	inline TInt GetUplinkBandwidth() const;
	inline TInt GetDownLinkMaximumBurstSize() const;
	inline TInt GetUpLinkMaximumBurstSize() const;
	inline TInt GetDownLinkAveragePacketSize() const;
	inline TInt GetUpLinkAveragePacketSize() const;
	inline TInt GetDownLinkMaximumPacketSize() const;
	inline TInt GetUpLinkMaximumPacketSize() const;
	inline TInt GetDownLinkDelay() const;
	inline TInt GetUpLinkDelay() const;
	inline TInt GetDownLinkDelayVariation() const;
	inline TInt GetUpLinkDelayVariation() const;
	inline TInt GetDownLinkPriority() const;
	inline TInt GetUpLinkPriority() const;
	inline TBool GetHeaderMode() const;
	inline const TName& GetName() const;

	inline void SetDownlinkBandwidth(TInt);
	inline void SetUplinkBandwidth(TInt);
	inline void SetDownLinkMaximumBurstSize(TInt);
	inline void SetUpLinkMaximumBurstSize(TInt);
	inline void SetDownLinkAveragePacketSize(TInt);
	inline void SetUpLinkAveragePacketSize(TInt);
	inline void SetDownLinkMaximumPacketSize(TInt);
	inline void SetUpLinkMaximumPacketSize(TInt);
	inline void SetDownLinkDelay(TInt);
	inline void SetUpLinkDelay(TInt);
	inline void SetDownLinkDelayVariation(TInt);
	inline void SetUpLinkDelayVariation(TInt);
	inline void SetDownLinkPriority(TInt);
	inline void SetUpLinkPriority(TInt);
	inline void SetHeaderMode(TBool);
	inline void SetName(const TName&);

protected:

	DATA_VTABLE

	TInt iDownlinkBandwidth;
	TInt iUplinkBandwidth;
	TInt iDownLinkMaximumBurstSize;
	TInt iUpLinkMaximumBurstSize;
	TInt iDownLinkAveragePacketSize;
	TInt iUpLinkAveragePacketSize;
	TInt iDownLinkMaximumPacketSize;
	TInt iUpLinkMaximumPacketSize;
	TInt iDownLinkDelay;
	TInt iUpLinkDelay;
	TInt iDownLinkDelayVariation;
	TInt iUpLinkDelayVariation;
	TInt iDownLinkPriority;
	TInt iUpLinkPriority;
	TBool iHeaderMode;
	TName iName;
	};

class CSubConAuthorisationGenericParamSet : public CSubConGenericParameterSet
/** Authorisation generic parameter set.

This class contains authorization generic parameters.

@note SMetaDataECom must be the first in the superclasses' list
@publishedAll
@released since v9.1 */
{
public:
	inline static CSubConAuthorisationGenericParamSet* NewL(CSubConParameterFamily& aFamily, CSubConParameterFamily::TParameterSetType aType);
	inline static CSubConAuthorisationGenericParamSet* NewL();

	inline CSubConAuthorisationGenericParamSet();

	inline TInt GetId() const;

	inline void SetId(TInt);

protected:

	DATA_VTABLE

	TInt iId;
	};

class CSubConGenericParamsFactory : public CBase
/** Sub connection generic parameter set factory.

@internalComponent
@released since v9.1 */
	{
public:
	static CSubConGenericParameterSet* NewL(TAny* aConstructionParameters);
	};

#include <cs_subconparams.inl>
#endif	// __CS_SUBCONPARAMS_H__