locationrequestmgmt/networkrequesthandler/LBSPrivacyNotification/LbsPrivacyExtNotifiers/inc/lbsprivacyextnotifiers.h
changeset 36 b47902b73a93
parent 0 9cfd9a3ee49c
equal deleted inserted replaced
35:a2efdd544abf 36:b47902b73a93
       
     1 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 //
       
    15 
       
    16 /**
       
    17  @file
       
    18  @publishedPartner
       
    19  @released
       
    20 */
       
    21 
       
    22 #ifndef LBSPRIVACYEXTNOTIFIERS_H
       
    23 #define LBSPRIVACYEXTNOTIFIERS_H
       
    24 
       
    25 #include <lbs/lbsloccommon.h>
       
    26 
       
    27 /** 
       
    28 Defines a TUint for the Uid of the dialog used to notify the user that an 
       
    29 external location request has been received. The user has
       
    30 no choice over whether to accept or reject the request.
       
    31 
       
    32 @publishedPartner
       
    33 @released
       
    34 */
       
    35 const TUint32 KLbsExtLocationRequestNotifyUidValue = 0x1020E195;
       
    36 
       
    37 /** 
       
    38 The Uid of the dialog used to notify the user that an 
       
    39 external location request has been received. The user has
       
    40 no choice over whether to accept or reject the request.
       
    41 
       
    42 @publishedPartner
       
    43 @released
       
    44 */
       
    45 const TUid KLbsExtLocationRequestNotifyUid = {KLbsExtLocationRequestNotifyUidValue};
       
    46 
       
    47 /** 
       
    48 Defines a TUint for the Uid of the dialog used to ask the user to verify whether 
       
    49 they want to accept or reject an an external location. 
       
    50 
       
    51 @publishedPartner
       
    52 @released
       
    53 */
       
    54 const TUint32 KLbsExtLocationRequestVerifyUidValue = 0x1020E196;
       
    55 
       
    56 /** 
       
    57 The Uid of the dialog used to ask the user to verify whether 
       
    58 they want to accept or reject an an external location. 
       
    59 
       
    60 @publishedPartner
       
    61 @released
       
    62 */
       
    63 const TUid KLbsExtLocationRequestVerifyUid = {KLbsExtLocationRequestVerifyUidValue};
       
    64 
       
    65 /**
       
    66 Container for the parameters that are sent to the Lbs
       
    67 privacy dialogs. Both dialogs receive this information.
       
    68 
       
    69 @publishedPartner
       
    70 @released
       
    71 */
       
    72 NONSHARABLE_CLASS(TLbsPrivacyNotifierParams)
       
    73 	{
       
    74 public:
       
    75 	IMPORT_C TLbsPrivacyNotifierParams();
       
    76 
       
    77 	IMPORT_C void GetRequesterInfo(TLbsExternalRequestInfo& aRequesterInfo) const;
       
    78 	
       
    79 	IMPORT_C void SetRequesterInfo(const TLbsExternalRequestInfo& aRequesterInfo);
       
    80 	
       
    81 private:
       
    82 	/** Information that identifies the external client that
       
    83 	    made the location request. */
       
    84 	TLbsExternalRequestInfo iRequesterInfo;
       
    85 
       
    86 	/** Reserved for future use to help maintain BC. */
       
    87 	TUint8 iReserved[16];
       
    88 	};
       
    89 
       
    90 /**
       
    91 A typedef to wrap a TLbsPrivacyNotifierParams in a TPckgBuf. 
       
    92 Use this type to send the notifier parameters to a dialog 
       
    93 via the RNotifier API.
       
    94 
       
    95 Both the LBS privacy notification and verification dialogs 
       
    96 require this information.
       
    97 
       
    98 @publishedPartner
       
    99 @released
       
   100 */
       
   101 typedef TPckgBuf<TLbsPrivacyNotifierParams> TLbsPrivacyNotifierParamsPckg;	
       
   102 
       
   103 /**
       
   104 Contains the user response to the privacy verification dialog.
       
   105 
       
   106 @publishedPartner
       
   107 @released
       
   108 */
       
   109 enum TLbsPrivacyNotifierResponse
       
   110 	{
       
   111 	/** Unknown/Unused response. */
       
   112 	EResponseUnknown = 0,
       
   113 	/** User accepted the external location request. */
       
   114    	EResponseAccepted,
       
   115    	/** User rejected the external location request. */
       
   116    	EResponseRejected,
       
   117    	/** The dialog timed out before the user responded. */
       
   118    	EResponseTimedOut
       
   119    	};
       
   120 
       
   121 /**
       
   122 Container for the parameters that are returned from the Lbs
       
   123 privacy verification dialog.
       
   124 
       
   125 @publishedPartner
       
   126 @released
       
   127 */
       
   128 NONSHARABLE_CLASS(TLbsPrivacyResponseParams)
       
   129 	{
       
   130 public:
       
   131 	IMPORT_C TLbsPrivacyResponseParams();
       
   132 	
       
   133 	IMPORT_C void GetResponseType(TLbsPrivacyNotifierResponse& aResponse) const;
       
   134 	
       
   135 	IMPORT_C void SetResponseType(const TLbsPrivacyNotifierResponse& aResponse);
       
   136 	
       
   137 private:
       
   138 	/** The users' response to the verification dialog. */
       
   139 	TLbsPrivacyNotifierResponse iResponse;
       
   140 
       
   141 	/** Reserved for future use to help maintain BC. */
       
   142 	TUint8 iReserved[16];
       
   143 	};
       
   144 
       
   145 /**
       
   146 A typedef to wrap a TLbsPrivacyResponseParams in a TPckgBuf. 
       
   147 Use this type to retrieve the result paramaters from a dialog 
       
   148 via the RNotifier API.
       
   149 
       
   150 Only the LBS privacy verification dialog returns this information.
       
   151 
       
   152 @publishedPartner
       
   153 @released
       
   154 */
       
   155 typedef TPckgBuf<TLbsPrivacyResponseParams> TLbsPrivacyResponseParamsPckg;
       
   156 
       
   157 
       
   158 #endif // LBSPRIVACYEXTNOTIFIERS_H