dependencies/liw_generic_parameter_api/liwgenericparam.h
author kashif.sayed
Fri, 26 Mar 2010 03:06:02 +0530
branchv5backport
changeset 30 f9f9f96b1873
parent 20 d2ab7c3d0c48
permissions -rw-r--r--
user: kashif.sayed added contentcontrolsrv/.cproject added contentcontrolsrv/.project added contentcontrolsrv/group/ABLD.BAT added contentpublishingsrv/.cproject added contentpublishingsrv/.project added contentpublishingsrv/contentharvester/.cproject added contentpublishingsrv/contentharvester/.project added contentpublishingsrv/contentharvester/contentharvesterclient/group/ABLD.BAT added contentpublishingsrv/contentharvester/contentharvesterserver/group/ABLD.BAT added contentpublishingsrv/contentharvester/contentharvesterswiplugin/group/ABLD.BAT added contentpublishingsrv/contentharvester/factorysettingsplugin/group/ABLD.BAT added contentpublishingsrv/contentharvester/group/ABLD.BAT added contentpublishingsrv/group/ABLD.BAT added dependencies/S3libs/cpswrapper.lib added dependencies/S3libs/hscontentcontrol.lib added dependencies/S3libs/hspswrapper.lib added group/ABLD.BAT added homescreenpluginsrv/group/ABLD.BAT added homescreensrv_plat/group/ABLD.BAT added idlefw/group/ABLD.BAT added inc/ccontentmap.h added inc/cpdebug.h added inc/cpglobals.h added inc/cpliwmap.h added inc/cpluginvalidator.h added inc/cpserverdef.h added inc/cpublisherregistrymap.h added inc/mcssathandler.h added menucontentsrv/group/ABLD.BAT added xcfw/group/ABLD.BAT changed dependencies/S3libs/bld.inf
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
20
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
     1
/*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
     2
* Copyright (c) 2003-2005 Nokia Corporation and/or its subsidiary(-ies).
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
     3
* All rights reserved.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
     4
* This component and the accompanying materials are made available
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
     5
* under the terms of the License "Eclipse Public License v1.0"
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
     8
*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
     9
* Initial Contributors:
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    11
*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    12
* Contributors:
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    13
*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    14
* Description:       A generic parameter class.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    15
*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    16
*/
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    17
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    18
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    19
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    20
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    21
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    22
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    23
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    24
#ifndef LIW_GENERIC_PARAM_H
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    25
#define LIW_GENERIC_PARAM_H
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    26
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    27
// INCLUDES
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    28
#include <e32base.h>
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    29
#include "liwgenericparam.hrh"
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    30
#include "liwvariant.h"
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    31
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    32
namespace LIW
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    33
{
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    34
 /*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    35
 * LIW generic parameter id. This data type should always be used when dealing 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    36
 * with LIW generic parameters. UIDs can be used as LIW generic parameter IDs. 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    37
 * However, values from 0 to 131071 are reserved.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    38
 * @see TLiwGenericParam 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    39
 * @see TGenericParamIdValue
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    40
 */ 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    41
typedef TInt TGenericParamId;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    42
}
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    43
// CLASS DECLARATION
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    44
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    45
/**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    46
* Generic parameter class for passing data between applications.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    47
* A generic parameter is a pair of semantic ID and
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    48
* variant value. The semantic ID tells the purpose of the parameter,
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    49
* for example a file name, URL or phone number. The variant value contains
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    50
* the data format and actual value. This class does not implement any
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    51
* consistency checks between the semantic ID and value's data format.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    52
* So one semantic ID can be expressed as alternative data formats.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    53
*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    54
* @lib ServiceHandler.lib
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    55
* @since Series 60 2.6
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    56
* @see TLiwVariant
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    57
* @see CLiwGenericParamList
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    58
*/
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    59
class TLiwGenericParam
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    60
    {
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    61
    public:  // Constructors and destructor
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    62
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    63
        * Constructs a generic parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    64
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    65
        inline TLiwGenericParam();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    66
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    67
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    68
        * Constructs a generic parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    69
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    70
        * @param aSemanticId The semantic ID of the parameter, one of TGenericParamId values.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    71
        */        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    72
        inline TLiwGenericParam(LIW::TGenericParamId aSemanticId);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    73
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    74
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    75
        * Constructs a generic parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    76
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    77
        * @param aSemanticId The semantic ID of the parameter, one of TGenericParamId values.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    78
        * @param aValue The parameter value.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    79
        */        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    80
        inline TLiwGenericParam(LIW::TGenericParamId aSemanticId, const TLiwVariant& aValue);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    81
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    82
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    83
        * Constructs a generic parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    84
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    85
        * @param aName Name of the generic parameter
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    86
        * @param aValue The parameter value.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    87
        */ 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    88
        inline TLiwGenericParam(const TDesC8& aName, const TLiwVariant& aValue);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    89
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    90
    public:  // Interface
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    91
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    92
        * Sets the semantic ID. Possibly set previous ID is overwritten.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    93
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    94
        * @param aSemanticId The semantic ID of the parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    95
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    96
        inline void SetSemanticId(LIW::TGenericParamId aSemanticId);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    97
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    98
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
    99
        * Set name. Possibly set previous name is overwritten.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   100
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   101
        * @param aName Parameter name.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   102
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   103
        inline void SetNameL(const TDesC8& aName);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   104
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   105
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   106
        * Set name and value. Possibly set previous name and value is overwritten.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   107
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   108
        * @param aName the parameter name.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   109
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   110
        * @param aValue the parameter value
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   111
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   112
        inline void SetNameAndValueL(const TDesC8& aName, const TLiwVariant& aValue);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   113
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   114
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   115
        * Returns the semantic ID of this parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   116
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   117
        * @return The semantic ID.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   118
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   119
        inline LIW::TGenericParamId SemanticId() const;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   120
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   121
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   122
        * Returns the name of this parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   123
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   124
        * @return The name of the parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   125
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   126
        inline const TDesC8& Name() const;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   127
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   128
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   129
        * Returns the value of this parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   130
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   131
        * @return The value of the parameter.        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   132
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   133
        inline TLiwVariant& Value();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   134
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   135
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   136
        * Returns the const value of this parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   137
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   138
        * @return The const value of the parameter.        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   139
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   140
        inline const TLiwVariant& Value() const;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   141
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   142
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   143
        * Resets the semantic ID and the value of this parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   144
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   145
        inline void Reset();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   146
		
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   147
		/**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   148
        * TLiwGenericParam cleanup method
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   149
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   150
        * !!!!!!!!!!!!!!!!!!!!!!!!!!!! 		IMPORTANT NOTE  	!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   151
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   152
        * Parameters can be pushed into the CleanupStack using this method
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   153
        * along with TCleanupItem
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   154
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   155
        * @ param aObj - TLiwGenericParam Object but of type TAny* for usage with TCleanupItem
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   156
        * 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   157
        * Example 1: Here the client explicitly pushes the parameter into the CleanupStack using TCleanupItem
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   158
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   159
        * @code
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   160
	    *	TLiwGenericParam param;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   161
    	*	CleanupStack::PushL( TCleanupItem( TLiwGenericParam::ParamCleanup , &param ) ); 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   162
    	*	User::Leave(KErrGeneral);  //This calls the ParamCleanup method which cleans up TLiwGenericParam 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   163
    	*   CleanupStack::Pop(&param);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   164
    	*	param.Reset();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   165
    	* @endcode 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   166
    	* 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   167
    	* Example 2: Here the client calls the PushL method of TLiwGenericParam which pushes the object into 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   168
    	* the CleanupStack using TCleanupItem
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   169
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   170
        * @code
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   171
        *	TLiwGenericParam param;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   172
    	*	param.PushL();				
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   173
    	*	User::Leave(KErrGeneral);  //This calls the ParamCleanup method which cleans up TLiwGenericParam 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   174
    	*   CleanupStack::Pop(&param);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   175
    	*	param.Reset();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   176
    	* @endcode
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   177
    	*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   178
    	* The clients can use the convenient PushL method which is recommended (as shown in e.g 2) rather than 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   179
	    *  explicitly pushing the parameter object into the CleanupStack using TCleanupItem and ParamCleanup.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   180
    	* 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   181
	    * @ see PushL() method
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   182
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   183
        IMPORT_C static void ParamCleanup(TAny* aObj);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   184
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   185
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   186
        * A friendly and convenient method to push the TLiwGenericParam Object into the CleanupStack
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   187
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   188
        * !!!!!!!!!!!!!!!!!!!!!!!!!!!! 		IMPORTANT NOTE  	!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   189
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   190
        * This method informs the CleanupStack that ParamCleanup method should be called incase of any Leave
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   191
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   192
        * Example: 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   193
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   194
        * @code
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   195
        *	TLiwGenericParam param;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   196
    	*	param.PushL();				//This pushes the parameter object "param" into the CleanupStack using TCleanupItem and ParamCleanup.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   197
    	*	User::Leave(KErrGeneral);  	//This calls the ParamCleanup method which cleans up TLiwGenericParam
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   198
    	*   CleanupStack::Pop(&param);	//These statements are not executed
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   199
    	*	param.Reset();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   200
    	* @endcode
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   201
    	* 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   202
    	* This method is recommended than explicitly pushing the parameter object into the CleanupStack 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   203
    	*  using TCleanupItem and ParamCleanup.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   204
    	*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   205
    	* @see ParamCleanup() method
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   206
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   207
        IMPORT_C void PushL();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   208
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   209
    private:  // Interface for friend classes
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   210
        void Destroy();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   211
        void CopyLC(const TLiwGenericParam& aParam);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   212
        static void CleanupDestroy(TAny* aObj);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   213
        operator TCleanupItem();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   214
        void InternalizeL(RReadStream& aStream);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   215
        void ExternalizeL(RWriteStream& aStream) const;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   216
        TInt Size() const; 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   217
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   218
    private:  // Data
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   219
        /// Own: semantic ID of this parameter
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   220
        LIW::TGenericParamId iSemanticId;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   221
        /// Own: value of this parameter
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   222
        TLiwVariant iValue;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   223
        /// Reserved member
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   224
        TAny* iReserved;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   225
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   226
    private:  // friend declarations
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   227
        friend class CLiwGenericParamList;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   228
        friend class CLiwDefaultList; 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   229
        friend class CLiwDefaultMap;  
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   230
    };
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   231
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   232
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   233
// FUNCTIONS
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   234
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   235
/**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   236
* Returns ETrue if two generic params are equal.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   237
*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   238
* @param aLhs Left hand side.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   239
* @param aRhs Right hand side.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   240
* @return ETrue if equal, EFalse otherwise.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   241
*/ 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   242
IMPORT_C TBool operator==(const TLiwGenericParam& aLhs, const TLiwGenericParam& aRhs);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   243
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   244
/**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   245
* Returns ETrue if two generic params are not equal.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   246
*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   247
* @param aLhs Left hand side.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   248
* @param aRhs Right hand side.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   249
* @return ETrue if not equal, EFalse otherwise.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   250
*/
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   251
inline TBool operator!=(const TLiwGenericParam& aLhs, const TLiwGenericParam& aRhs);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   252
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   253
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   254
/**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   255
 * Generic parameter list.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   256
 * A list containing TLiwGenericParam objects. Used for passing parameters 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   257
 * between consumers and providers.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   258
 *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   259
 * @lib ServiceHandler.lib
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   260
 * @since Series 60 2.6
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   261
 */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   262
NONSHARABLE_CLASS(CLiwGenericParamList): public CBase
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   263
    {
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   264
    public:   // Constructors and destructor
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   265
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   266
        * Creates an instance of this class.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   267
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   268
        * @return A pointer to the new instance.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   269
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   270
        IMPORT_C static CLiwGenericParamList* NewL();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   271
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   272
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   273
        * Creates an instance of this class.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   274
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   275
        * @param aReadStream A stream to initialize this parameter list from.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   276
        * @return A pointer to the new instance.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   277
        */        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   278
        IMPORT_C static CLiwGenericParamList* NewL(RReadStream& aReadStream);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   279
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   280
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   281
        * Creates an instance of this class. Leaves the created instance on the
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   282
        * cleanup stack.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   283
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   284
        * @return A pointer to the new instance.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   285
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   286
        IMPORT_C static CLiwGenericParamList* NewLC();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   287
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   288
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   289
        * Creates an instance of this class. Leaves the created instance on the
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   290
        * cleanup stack.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   291
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   292
        * @param aReadStream A stream to initialize this parameter list from.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   293
        * @return A pointer to the new instance.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   294
        */        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   295
        IMPORT_C static CLiwGenericParamList* NewLC(RReadStream& aReadStream);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   296
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   297
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   298
        * Destructor.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   299
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   300
        virtual ~CLiwGenericParamList();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   301
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   302
    public:  // Interface
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   303
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   304
        * Returns the number of parameters in the list. 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   305
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   306
        * @return The number of parameters in the list. 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   307
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   308
        IMPORT_C TInt Count() const;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   309
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   310
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   311
        * Returns the number of the parameters in the list by semantic id and datatype.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   312
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   313
        * @param aSemanticId The semantic ID of the parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   314
        * @param aDataType The type id of data. Default is any type.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   315
        * @return The number of parameters in the list by semantic id and datatype.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   316
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   317
        IMPORT_C TInt Count(LIW::TGenericParamId aSemanticId, 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   318
                LIW::TVariantTypeId aDataType = LIW::EVariantTypeAny) const;  
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   319
            
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   320
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   321
        * Returns a parameter from this list.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   322
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   323
        * @param aIndex Index of the parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   324
        * @return The parameter at the aIndex position.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   325
        * @pre aIndex>=0 && aIndex<Count()
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   326
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   327
        IMPORT_C const TLiwGenericParam& operator[](TInt aIndex) const;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   328
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   329
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   330
	    * Gets an entry from the collection based on an integeral index.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   331
	    * Note ! This method allocates memory. To ensure proper cleanup you shall call PushL method beforehand.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   332
	    *  
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   333
	    * @param aIndex an index to get an entry from the collection
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   334
	    * @param aEntry the returned element from the collection.  
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   335
	    *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   336
	    * !!!!!!!!!!!!!!!!!!!!!!!!!! IMPORTANT NOTE  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   337
	    *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   338
	    * This is a copy of TLiwGenericParam present in the list at the particular index. To ensure proper cleanup 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   339
	    * TLiwGenericParam::PushL method should be called beforehand.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   340
	    *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   341
	    * @code
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   342
	    * CLiwGenericParamList* param = CLiwGenericParamList::NewLC();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   343
		* //... param is filled with some semantic Id and TLiwVariant value ...
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   344
		*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   345
		* TLiwGenericParam outParam;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   346
 	    * outParam.PushL();			
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   347
 	    * //This pushes the parameter object "outParam" into the CleanupStack using TCleanupItem and ParamCleanup.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   348
		*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   349
		* param->AtL(0,outParam);	
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   350
		* //This fills the "outParam" with the parameter value present in the 0th position of parameter list, but
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   351
		* //if there is any Leave in AtL, then ParamCleanup method is called for proper cleanup
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   352
		*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   353
		* CleanupStack::Pop(&outParam);	
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   354
		* outParam.Reset();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   355
		* CleanupStack::PopAndDestroy(param);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   356
		* @endcode
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   357
		*
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   358
	    * @return false if no element is found at the passed index;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   359
	    * true if an element is found 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   360
	    * 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   361
	    * @see CLiwDefaultList::AtL
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   362
	    * @see TLiwGenericParam::PushL
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   363
	    */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   364
		IMPORT_C void AtL(TInt aIndex, TLiwGenericParam& aParam) const;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   365
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   366
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   367
        * Appends a parameter to this list.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   368
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   369
        * @param aParam The parameter to append to this list. This object takes
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   370
        *               an own copy of the data in aParam.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   371
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   372
        IMPORT_C void AppendL(const TLiwGenericParam& aParam);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   373
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   374
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   375
        * Copies the given list and appends it to end of this list.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   376
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   377
        * @since Series 60 2.8        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   378
        * @param aList A list to be copied and appended.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   379
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   380
        IMPORT_C void AppendL(const CLiwGenericParamList& aList);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   381
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   382
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   383
        * Removes the first found item with given semantic id from the list.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   384
        * 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   385
        * @param aSemanticId Semantic id for the item to be removed.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   386
        * @return  ETrue  if an item for the given semantic id was found and removed.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   387
        *          EFalse otherwise.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   388
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   389
        IMPORT_C TBool Remove(TInt aSemanticId);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   390
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   391
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   392
        * Removes the first found item with given string based semantic id from the list.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   393
        * 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   394
        * @param aSemanticId Semantic id for the item to be removed.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   395
        * @return  ETrue  if an item for the given semantic id was found and removed.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   396
        *          EFalse otherwise.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   397
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   398
        IMPORT_C void Remove(const TDesC8& aName);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   399
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   400
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   401
        * Deletes all parameters in the list and resets the list.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   402
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   403
        IMPORT_C void Reset();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   404
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   405
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   406
        * Returns the first item matching the given semantic ID.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   407
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   408
        * @param aIndex Position in which to start searching. On return it contains 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   409
        *               the position of the found parameter. It is set to KErrNotFound, 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   410
        *               if no matching items were found.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   411
        * @param aSemanticId The semantic ID of the parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   412
        * @param aDataType The type id of data. Default is any type.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   413
        * @return The first matching item.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   414
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   415
        IMPORT_C const TLiwGenericParam* FindFirst(
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   416
            TInt& aIndex, 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   417
            LIW::TGenericParamId aSemanticId,
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   418
            LIW::TVariantTypeId aDataType = LIW::EVariantTypeAny) const;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   419
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   420
        * Returns the next item matching the given semantic ID.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   421
        * 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   422
        * @param aIndex Position after which to start searching. On return it contains 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   423
        *               the position of the found parameter. It is set to KErrNotFound, 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   424
        *               if no matching items were found.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   425
        * @param aSemanticId The semantic ID of the parameter.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   426
        * @param aDataType The type id of data. Default is any type. 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   427
        * @return The next matching item.       
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   428
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   429
        IMPORT_C const TLiwGenericParam* FindNext(
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   430
            TInt& aIndex, 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   431
            LIW::TGenericParamId aSemanticId,
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   432
            LIW::TVariantTypeId aDataType = LIW::EVariantTypeAny) const;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   433
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   434
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   435
		* Returns item matching the given name.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   436
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   437
        * @param aIndex Position in which to start searching, on return contains 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   438
        *               position of the found parameter. Is set to KErrNotFound, 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   439
        *               if no matching items were found.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   440
        * @param aName Parameter name.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   441
        * @param aDataType The type id of data. Default is any type.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   442
        * @return The first matching item.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   443
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   444
        IMPORT_C const TLiwGenericParam* FindFirst(
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   445
            TInt& aIndex, 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   446
            const TDesC8& aName,
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   447
            LIW::TVariantTypeId aDataType = LIW::EVariantTypeAny) const;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   448
            
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   449
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   450
        * Returns item matching the given name.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   451
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   452
        * @param aIndex Position in which to start searching, on return contains 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   453
        *               position of the found parameter. Is set to KErrNotFound, 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   454
        *               if no matching items were found.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   455
        * @param aName Parameter name.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   456
        * @param aDataType The type id of data. Default is any type.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   457
        * @return The first matching item.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   458
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   459
        IMPORT_C const TLiwGenericParam* FindNext(
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   460
            TInt& aIndex, 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   461
            const TDesC8& aName,
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   462
            LIW::TVariantTypeId aDataType = LIW::EVariantTypeAny) const;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   463
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   464
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   465
        * Externalizes this parameter list to a stream.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   466
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   467
        * @param aStream The stream. 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   468
        * @see NewL(RReadStream& aStream)
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   469
        * @see NewLC(RReadStream& aStream)
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   470
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   471
        IMPORT_C void ExternalizeL(RWriteStream& aStream) const;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   472
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   473
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   474
        * Returns the externalized size of the parameter list in bytes.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   475
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   476
        * @return The size.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   477
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   478
        IMPORT_C TInt Size() const;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   479
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   480
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   481
        * Internalizes the parameter list from a stream.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   482
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   483
        * @since Series60 2.8
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   484
        * @param aStream The stream.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   485
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   486
        IMPORT_C void InternalizeL(RReadStream& aStream);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   487
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   488
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   489
        * Packs the parameter list to TIpcArgs structure for
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   490
        * passing the generic param list to server over process boundary.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   491
        * Only one RFile handle parameter can be passed over process boundary.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   492
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   493
        * @since Series60 3.0
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   494
        * @param aArgs Inter process call arguments.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   495
        * @return Packed parameter list.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   496
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   497
        IMPORT_C HBufC8* PackForServerL(TIpcArgs& aArgs);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   498
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   499
        /**
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   500
        * Unpacks the list from client message structure.
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   501
        *
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   502
        * @since Series60 3.0
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   503
        * @param aArgs The list to be unpacked. 
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   504
        */
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   505
        IMPORT_C void UnpackFromClientL(const RMessage2& aArgs);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   506
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   507
    private:  // Implementation
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   508
        CLiwGenericParamList();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   509
        void ConstructL();
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   510
        void AppendL(RReadStream& aReadStream);
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   511
        
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   512
    private:  // Data
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   513
        /// Own: the parameter list
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   514
        RArray<TLiwGenericParam> iParameters;
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   515
        friend class CLiwDefaultList;  
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   516
        friend class CLiwDefaultMap;   
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   517
     };
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   518
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   519
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   520
// INLINE FUNCTIONS
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   521
#include "liwgenericparam.inl"
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   522
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   523
#endif // LIW_GENERIC_PARAM_H
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   524
d2ab7c3d0c48 homescreenpluginsrv component compiles now
Christian Morlok <symbian.org@christianmorlok.de>
parents:
diff changeset
   525
// End of File