src/ext/amaretto/logs/inc/logengine.h
changeset 0 ca70ae20a155
equal deleted inserted replaced
-1:000000000000 0:ca70ae20a155
       
     1 /**
       
     2  * ====================================================================
       
     3  * logengine.h
       
     4  * Copyright (c) 2006-2007 Nokia Corporation
       
     5  *
       
     6  * Licensed under the Apache License, Version 2.0 (the "License");
       
     7  * you may not use this file except in compliance with the License.
       
     8  * You may obtain a copy of the License at
       
     9  *
       
    10  *     http://www.apache.org/licenses/LICENSE-2.0
       
    11  *
       
    12  * Unless required by applicable law or agreed to in writing, software
       
    13  * distributed under the License is distributed on an "AS IS" BASIS,
       
    14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       
    15  * See the License for the specific language governing permissions and
       
    16  * limitations under the License.
       
    17  * ====================================================================
       
    18  */
       
    19 
       
    20 #ifndef __LOGENGINE
       
    21 #define __LOGENGINE
       
    22 
       
    23 #include <e32base.h>
       
    24 #include <logcli.h>
       
    25 #include <logwrap.h>
       
    26 #include <logview.h>
       
    27 #include "eventarray.h"
       
    28 
       
    29 #ifndef EKA2
       
    30 class CLogEngine : public CActive
       
    31 #else
       
    32 NONSHARABLE_CLASS (CLogEngine) : public CActive
       
    33 #endif
       
    34 {
       
    35 public:
       
    36 	static CLogEngine* NewL(CEventArray& /*aEventArray*/, TInt /*aDirection*/, TUid /*aType*/);
       
    37 	static CLogEngine* NewLC(CEventArray& /*aEventArray*/, TInt /*aDirection*/, TUid /*aType*/);
       
    38 	virtual ~CLogEngine();
       
    39 	void StartL();
       
    40 	void SetLogFilter(TInt /*aDirection*/, TUid /*aType*/);
       
    41 public:
       
    42 	void DoCancel();
       
    43 	void RunL();
       
    44 	TInt RunError(TInt /*aError*/);
       
    45 private:
       
    46 	CLogEngine(CEventArray& /*aEventArray*/);
       
    47 	void ConstructL(TInt /*aDirection*/, TUid /*aType*/);
       
    48 private:
       
    49 	//Creates
       
    50 	CLogClient*			iLogClient; 
       
    51 	CLogViewEvent*	iLogView;
       
    52 	CLogFilter*			iLogFilter;
       
    53 	CActiveSchedulerWait* iWait;
       
    54 	//Connects
       
    55 	RFs	iFs;
       
    56 	//Has reference
       
    57 	CEventArray&	iEventArray;
       
    58 private:
       
    59 	enum TEngineState
       
    60 		{
       
    61 		ECreate,
       
    62 		EAddEntry
       
    63 	};
       
    64 	//
       
    65 	TEngineState	iEngineState;
       
    66 };
       
    67 #endif
       
    68 
       
    69