mtpdataproviders/mtpimagedp/mediasyncserver/inc/rmediasyncserver.h
changeset 51 64200268cac2
parent 50 965bb42340b2
child 52 866b4af7ffbe
--- a/mtpdataproviders/mtpimagedp/mediasyncserver/inc/rmediasyncserver.h	Thu Sep 09 18:17:36 2010 +0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,156 +0,0 @@
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-/**
- @file
- @internalTechnology
-*/
-
-#ifndef RMEDIASYNCSERVER_H_
-#define RMEDIASYNCSERVER_H_
-
-#include <e32std.h>
-#include "cmediasyncserverdef.h"
-
-struct TMDSNotification
-    {
-    TUint  objectId;
-    TUint8 changeType;
-    TUint8 activeSchedulerWait;
-    TUint8 reserved[2];
-    };
-
-class CMediaSyncDataReader : public CBase
-    {
-public:
-    static CMediaSyncDataReader* NewL(const RChunk& aChunk);
-    /** virtual C++ destructor */
-    IMPORT_C ~CMediaSyncDataReader();    
-    
-    IMPORT_C TInt  Count();
-    IMPORT_C TBool HasNext();
-    IMPORT_C void  GetNextL(TUint32& aObjectId, TUint8& aType, TPtr16& aUri);
-    
-private:
-    /** C++ constructor initialises */
-    CMediaSyncDataReader();
-    void ConstructL(const RChunk& aChunk);
-    
-private:
-    TDataHeaderInfo* iHeaderInfo;
-    TUint8*          iReadBase;
-    TInt             iOffset;
-    TInt             iCurrentIdx;
-    };
-
-class RMediaSyncServer : public RSessionBase
-    {    
-public:
-    IMPORT_C RMediaSyncServer();
-    
-    /**
-    * Starts up MediaSyncServer
-    */
-    IMPORT_C TInt Startup();
-    
-    /**
-    * Shut down MediaSyncServer
-    */
-    IMPORT_C void Shutdown();    
-
-    /**
-    * Connects to MediaSyncServer, does not start up MediaSyncServer if it is
-    * not running
-    * @return KErrNone on successfull connection, 
-    *         KMediaSyncServerCleanupYourDatabase on successful connection, 
-    *         but the database needs to be resynched. The client must empty
-    *         MTP database on the objects under its control before reading 
-    *         the change information since it will get everything that is in
-    *         MDS.
-    *         Systen wide error code if the connection fails.
-    */        
-    IMPORT_C TInt Connect();
-    
-    /**
-    * Client should call this when it has detected that the databases are 
-    * out of sync or that its database is corrupted. This will lead MSS to 
-    * reread everything from the MDS after all the session were closed and 
-    * at next connection Connect to return KMediaSyncServerCleanupYourDatabase 
-    * to all dataproviders.
-    * @param aNeedFullSync ETrue if the MSS DB file is corrupt and the client need to fully sync with MDE    
-    * @return KErrNone if successful, otherwise one of the system-wide error codes
-    *     
-    */
-    IMPORT_C TInt NeedFullSync(TBool& aNeedFullSync);
-    
-    /**
-    * Clear full synchronization flag from MSS   
-    * @return KErrNone if successful, otherwise one of the system-wide error codes
-    *     
-    */        
-    IMPORT_C TInt ClearFullSync();
-
-    /**        
-    * This methods returns changes and their type. It only returns one type of 
-    * changes at one call. Removals will be returned first then Additions, 
-    * then Changes. The change information will be deleted from the DB when returned.
-    * If an object is both added, changed and then deleted between the 
-    * connections, no information on it is returned, on the other hand if 
-    * object is first deleted the object with a same name is added, both 
-    * deletion and addition entry are available.
-    *
-    * Moving objects are treated as deletion and addition (keeping the metadata if possible)
-    *
-    * @param aNotifications on return the array of MDE notifications 
-    * @param aIsFinished ETrue if this array is the last one for MDE notifications    
-    * @param aStatus async call, KErrNone if changes received, 
-    *                            KErrNotFound if there are no changes,  
-    *                            otherwise another system wide error code.
-    *
-    */
-    IMPORT_C void GetChangesL(CMediaSyncDataReader*& aDataReader, TBool& aIsFinished, TRequestStatus& aStatus, TInt aMaxFetchCount = 512);
-
-    /**
-    * Remove all recodes from MSS
-    */        
-    IMPORT_C void RemoveAllRecords();
-    
-    /**
-    * Enable MSS subscribes MDS notifications
-    * @return KErrNone if successful, otherwise one of the system-wide error codes
-    */         
-    IMPORT_C TInt EnableMonitor();
-    
-    /**
-    * Disable MSS subscribes MDS notifications
-    * @return KErrNone if successful, otherwise one of the system-wide error codes
-    */        
-    IMPORT_C TInt DisableMonitor();
-    
-    IMPORT_C void Close();
-        
-private:    
-    TInt GetGlobalSharedHeapHandle();
-    void RelaseGlobalSharedHeap();
-    
-private:
-    TBool  iHasSharedHeap; 
-    
-    /** Handle to the Global Shared Heap */
-    RChunk iGlobalSharedHeap;    
-    };
-
-
-#endif /*RMEDIASYNCSERVER_H_*/