os/persistentdata/loggingservices/eventlogger/LogServ/inc/LogServTaskInterface.h
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
     1 // Copyright (c) 2002-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 #ifndef __LOGSERVTASKINTERFACE_H__
    17 #define __LOGSERVTASKINTERFACE_H__
    18 
    19 #include <logwrap.h>
    20 
    21 // Classes referenced
    22 class TLogConfig;
    23 class TLogTransferWindow;
    24 class CLogEvent;
    25 class CLogEventType;
    26 class CLogServViewBase;
    27 
    28 /**
    29 An interface class for starting a LogEng operation.
    30 Every time when CLogServOperationQueue::RunL() takes the execution control, an operation will be picked up
    31 from the pending queue and the StartL() method of the operation - called, for example: 
    32 CLogServOpEventAdd::StartL(). The operation's StartL() method will read the client data and calls an
    33 appropriate method from this interface - TaskEventAddL() for example. 
    34  
    35 @see CLogServOperationQueue 
    36 
    37 @internalComponent
    38 */
    39 class MLogServTaskInterface
    40 {
    41 public:
    42 	/** 
    43 	 * Event tasks
    44 	 */
    45 	virtual void TaskEventAddL(TRequestStatus& aStatus, CLogEvent& aEvent, const RMessage2& aMessage) = 0;
    46 	virtual void TaskEventChangeL(TRequestStatus& aStatus, const CLogEvent& aEvent, const RMessage2& aMessage) = 0;
    47 	virtual void TaskEventGetL(TRequestStatus& aStatus, CLogEvent& aEvent, const RMessage2& aMessage) = 0;
    48 	virtual void TaskEventDeleteL(TRequestStatus& aStatus, TLogId aId, const RMessage2& aMessage) = 0;
    49 
    50 	/** 
    51 	 * Event type tasks
    52 	 */
    53 	virtual void TaskEventTypeAddL(TRequestStatus& aStatus, const CLogEventType& aEventType) = 0;
    54 	virtual void TaskEventTypeGetL(TRequestStatus& aStatus, const CLogEventType*& aEventType, TUid aUid) = 0;
    55 	virtual void TaskEventTypeChangeL(TRequestStatus& aStatus, const CLogEventType& aEventType) = 0;
    56 	virtual void TaskEventTypeDeleteL(TRequestStatus& aStatus, TUid aType) = 0;
    57 
    58 	/**
    59 	 * Configuration tasks
    60 	 */
    61 	virtual void TaskConfigGetL(TRequestStatus& aStatus, TLogConfig& aConfig) = 0;
    62 	virtual void TaskConfigChangeL(TRequestStatus& aStatus, const TLogConfig& aConfig) = 0;
    63 
    64 	/**
    65 	 * Clearing tasks
    66 	 */
    67 	virtual void TaskClearLogL(TRequestStatus& aStatus, const TTime& aDate
    68 #ifdef SYMBIAN_ENABLE_EVENTLOGGER_DUALSIM	
    69 			, TSimId aSimId
    70 #endif			
    71 			) = 0;
    72 	virtual void TaskClearRecentL(TRequestStatus& aStatus, TInt aRecentList
    73 #ifdef SYMBIAN_ENABLE_EVENTLOGGER_DUALSIM	
    74 			, TSimId aSimId
    75 #endif
    76 			) = 0;
    77 
    78 	/**
    79 	 * Maintenance tasks
    80 	 */
    81 	virtual void TaskMaintenanceStartL(TRequestStatus& aStatus, TBool aPurge) = 0;
    82 
    83 	/**
    84 	 * Window building tasks
    85 	 */ 
    86 	virtual void TaskBuildWindowL(TRequestStatus& aStatus, const CLogServViewBase& aView, 
    87                                   const TLogTransferWindow& aWindow, const RMessage2& aMessage) = 0;
    88 
    89 	/**
    90 	 * Cancellation
    91 	 */
    92 	virtual void TaskCancelCurrent() = 0;
    93 };
    94 
    95 
    96 #endif