/** 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 the License "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: * %created_by: shreedha %* %date_created: Tue Feb 10 11:34:01 2009 %**//************************************************************************ Header %name: loggingsyncservice.h %* Instance: bh1sapi_1* Description:* %created_by: shreedha %* %date_created: Tue Feb 10 11:34:01 2009 %***********************************************************************/#ifndef LOGGINGSERVICE_H#define LOGGINGSERVICE_H#include <logwrap.h>#include <logcli.h>/*** Forward declaration*/class CLogViewEvent ;class CLogIter ;/*** CLogSyncService: Deligator class declariation, this is a wrapper class* for all the functionalities offers by symbian logging service.** This Class deligates the responsibilities to coreimp class for async* service*/class CLogSyncService: public CActive { public : /** * NewL: Two phased construction */ IMPORT_C static CLogSyncService *NewL() ; /** * NewLC: Creates an instance of CLogSyncServiceClass * Two Phased constructor * returns newly allocated object. */ static CLogSyncService* NewLC() ; /** * Add(): Adds a new event to event database.Synchronous * returns unique id of the event added in event database. */ IMPORT_C TLogId AddL( CLogEvent *aEvent ); /** * Deletes a event from the event database * @param aLogId Event id of the event in the database */ IMPORT_C TInt Delete( TLogId aId ) ; /** * GetList(): Gets the events as specified by filter * * @param aFilter, view filter */ IMPORT_C CLogIter* GetListL( CLogFilter *aFilter ) ; /** * Returns the current event in the view */ inline const CLogEvent& Event() { return iLogViewEvents->Event() ; } /** * ReadRecentEvents, reads recentEvents from the list * * @param aRecentList, recentlist to be viewed * @param aFilter, filter for events to appear in view */ CLogIter* ReadRecentEventsL( TLogRecentList aRecentList , CLogFilter *aFilter = NULL ) ; /** * Gets the details of the event as specified by the * input paramater * * @param aEvent, details of the event to be fetched */ CLogIter* GetEventL( CLogEvent *aEvent ) ; /** * Default Destructor */ ~CLogSyncService() ; protected : /** * ConstructL(): Internal method to construct members */ void ConstructL() ; /** * Default constructor */ CLogSyncService() ; /** * DoInitialiseL(): Internal method to initialise members */ void DoInitialiseL() ; /** * From CActive */ void DoCancel() ; /** * From CActive */ void RunL() ; private: /** * Log Engine Handle */ CActiveSchedulerWait* iWaitScheduler; CLogClient* iLogClient ; CLogViewEvent* iLogViewEvents ; CLogViewRecent* iLogViewRecent ; RFs iFs ; TInt iTaskId ;};#endif