epoc32/include/comms-infras/es_parameterset.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
williamr@4
     1
// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
williamr@4
     2
// All rights reserved.
williamr@4
     3
// This component and the accompanying materials are made available
williamr@4
     4
// under the terms of "Eclipse Public License v1.0"
williamr@4
     5
// which accompanies this distribution, and is available
williamr@4
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
williamr@4
     7
//
williamr@4
     8
// Initial Contributors:
williamr@4
     9
// Nokia Corporation - initial contribution.
williamr@4
    10
//
williamr@4
    11
// Contributors:
williamr@4
    12
//
williamr@4
    13
// Description:
williamr@4
    14
// Generic parameter set base classes.
williamr@4
    15
// XParameterSetBase exists to support interworking with old CSubConParameterSet classes.
williamr@4
    16
// XParameterSet has richer functionality so should be used for all new applications of Parameter Sets.
williamr@4
    17
// 
williamr@4
    18
//
williamr@4
    19
williamr@4
    20
/**
williamr@4
    21
 @file
williamr@4
    22
 @internalTechnology
williamr@4
    23
*/
williamr@4
    24
williamr@4
    25
#ifndef __ES_PARAMETERSET_H
williamr@4
    26
#define __ES_PARAMETERSET_H
williamr@4
    27
williamr@4
    28
#include <comms-infras/metadata.h>
williamr@4
    29
williamr@4
    30
class XParameterSetBase : public Meta::SMetaDataECom
williamr@4
    31
	{
williamr@4
    32
	};
williamr@4
    33
williamr@4
    34
williamr@4
    35
const TInt KParameterSetTypeUid = 0x10272F44;
williamr@4
    36
williamr@4
    37
class XParameterSet : public XParameterSetBase
williamr@4
    38
	{
williamr@4
    39
public:
williamr@4
    40
	IMPORT_C virtual ~XParameterSet();
williamr@4
    41
williamr@4
    42
	// Updates this parameter set with new information. The interpretation and 
williamr@4
    43
	//  importance of new information may depend on type-specific interpretation
williamr@4
    44
	//  of the fields in the object (e.g. a field somehow marked "unknown" in the new
williamr@4
    45
	//  set should not be copied to this set, or some kind of lock on a
williamr@4
    46
	//  field in this set should prevent that field being copied from the
williamr@4
    47
	//  new set).
williamr@4
    48
	//
williamr@4
    49
	// This base implementation asserts, so as to force the consideration of this
williamr@4
    50
	//  function for derived types.
williamr@4
    51
	IMPORT_C virtual void UpdateWithL(const XParameterSet& aRhsBase);
williamr@4
    52
	IMPORT_C virtual TInt AppendPrintableTo(TDes& aDestination) const;
williamr@4
    53
	IMPORT_C virtual TInt _extension(TUid aExtensionId, TAny*& aReturnedExtension);
williamr@4
    54
williamr@4
    55
protected:
williamr@4
    56
    // It's necessary to expose the typeid table to child classes so they can refer to it in their attribute tables (so IsTypeOf() works)
williamr@4
    57
	EXPORT_TYPEID_TABLE
williamr@4
    58
	};
williamr@4
    59
williamr@4
    60
#endif // __ES_PARAMETERSET_H
williamr@4
    61