00001 /* 00002 * ============================================================================== 00003 * Name : EPos_CPosLmDatabaseManager.h 00004 * Part of : Mobile Location Framework/Landmarks 00005 * Interface : SDK/S60, Landmarks Database Management API 00006 * Description : CPosLmDatabaseManager class 00007 * Version : %version: bh1cfloc#5 % 00008 * 00009 * Copyright © 2005-2006 Nokia. All rights reserved. 00010 * This material, including documentation and any related computer 00011 * programs, is protected by copyright controlled by Nokia. All 00012 * rights are reserved. Copying, including reproducing, storing, 00013 * adapting or translating, any or all of this material requires the 00014 * prior written consent of Nokia. This material also contains 00015 * confidential information which may not be disclosed to others 00016 * without the prior written consent of Nokia. 00017 * ============================================================================ 00018 * Template version: 4.0 00019 */ 00020 00021 #ifndef CPOSLMDATABASEMANAGER_H 00022 #define CPOSLMDATABASEMANAGER_H 00023 00024 #include <e32base.h> 00025 #include <badesca.h> 00026 #include "epos_tposlmdatabaseevent.h" 00027 #include "epos_tposlmdatabasesettings.h" 00028 #include "epos_hposlmdatabaseinfo.h" 00029 00030 00071 class CPosLmDatabaseManager : public CBase 00072 { 00073 public: 00074 00080 IMPORT_C static CPosLmDatabaseManager* NewL(); 00081 00085 IMPORT_C virtual ~CPosLmDatabaseManager(); 00086 00087 public: 00088 00102 virtual HBufC* DefaultDatabaseUriLC() = 0; 00103 00128 virtual void SetDefaultDatabaseUriL( const TDesC& aDatabaseUri ) = 0; 00129 00147 virtual void NotifyDatabaseEvent( 00148 TPosLmDatabaseEvent& aEvent, 00149 TRequestStatus& aStatus 00150 ) = 0; 00151 00158 virtual TInt CancelNotifyDatabaseEvent() = 0; 00159 00179 virtual HBufC* DatabaseUriFromLastEventLC() = 0; 00180 00201 virtual CDesCArray* ListDatabasesLC( const TDesC& aProtocol = KNullDesC ) = 0; 00202 00226 virtual void ListDatabasesL( 00227 RPointerArray<HPosLmDatabaseInfo>& aDatabaseInfoArray, 00228 const TDesC& aProtocol = KNullDesC 00229 ) = 0; 00230 00258 virtual void RegisterDatabaseL( HPosLmDatabaseInfo& aDatabaseInfo ) = 0; 00259 00280 virtual void UnregisterDatabaseL( const TDesC& aDatabaseUri ) = 0; 00281 00302 virtual void UnregisterAllDatabasesL( const TDesC& aProtocol ) = 0; 00303 00318 virtual void ModifyDatabaseSettingsL( 00319 const TDesC& aDatabaseUri, 00320 const TPosLmDatabaseSettings& aDatabaseSettings 00321 ) = 0; 00322 00337 virtual void GetDatabaseInfoL( HPosLmDatabaseInfo& aDatabaseInfo ) = 0; 00338 00358 virtual TBool DatabaseExistsL( const TDesC& aDatabaseUri ) = 0; 00359 00376 virtual void CreateDatabaseL( HPosLmDatabaseInfo& aDatabaseInfo ) = 0; 00377 00399 virtual void DeleteDatabaseL( const TDesC& aDatabaseUri ) = 0; 00400 00423 virtual void CopyDatabaseL( 00424 const TDesC& aSourceUri, 00425 const TDesC& aTargetUri 00426 ) = 0; 00427 00428 protected: 00429 00430 // C++ constructor. 00431 IMPORT_C CPosLmDatabaseManager(); 00432 00433 private: 00434 00435 // Prohibit copy constructor 00436 CPosLmDatabaseManager( const CPosLmDatabaseManager& ); 00437 // Prohibit assigment operator 00438 CPosLmDatabaseManager& operator= ( const CPosLmDatabaseManager& ); 00439 00440 private: 00441 00442 // Implementation Uid 00443 TUid iDtorIdKey; 00444 }; 00445 00446 // CPOSLMDATABASEMANAGER_H 00447 #endif 00448 00449