diff -r 000000000000 -r 3e07fef1e154 testexecfw/useremul/inc/Logger.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/testexecfw/useremul/inc/Logger.h Mon Mar 08 15:03:44 2010 +0800 @@ -0,0 +1,135 @@ +/*------------------------------------------------------------------ + - + * Software Name : UserEmulator + * Version : v4.2.1309 + * + * Copyright (c) 2009 France Telecom. All rights reserved. + * This software is distributed under the License + * "Eclipse Public License - v 1.0" the text of which is available + * at the URL "http://www.eclipse.org/legal/epl-v10.html". + * + * Initial Contributors: + * France Telecom + * + * Contributors: + *------------------------------------------------------------------ + - + * File Name: Logger.h + * + * Created: 13/08/2009 + * Author(s): Marcell Kiss, Reshma Sandeep Das + * + * Description: + * This class is used for logging purposes + *------------------------------------------------------------------ + - + * + */ + +#ifndef LOGGER_H__ +#define LOGGER_H__ + +//System Includes +#include +#include +#include + +//User Includes +#include "UserEmulatorScriptsView.h" +#include "Constants.h" + +//Forward Declarations +class CSettings; + +/** + * CLogger + * Class used for logging purposes + */ +class CLogger : public CBase +{ +public: + + /** + * ConstructL + */ + void ConstructL(); + /** + * Constructor + * @param aScriptView Reference to the script view + * @param aSettings Reference to the CSettings class + * @param aEikonEnv Reference to the CEikonEnv class + */ + CLogger(CUserEmulatorScriptsView& aScriptView,CSettings& aSettings, CEikonEnv* aEikonEnv); + /** + * Destructor + */ + ~CLogger(); + + /** + * Function to write log into the log file + * @param aText Reference to a 8 bit descriptor + * @param aHeader boolean indicating presence of headers or values in the logging information + * @param aHash boolean indicating presence of # in the begging of the log line + */ + void WriteLogL(const TDesC8& aText, TBool aHeader,TBool aHash=EFalse); + + /** + * Function to write log into the log file + * @param aText Reference to a 16 bit descriptor + * @param aHeader boolean indicating presence of headers or values in the logging information + * @param aHash boolean indicating presence of # in the begging of the log line + */ + void WriteLogL(const TDesC16& aText, TBool aHeader,TBool aHash=EFalse); + + /** + * Function to close log file handles + */ + void CloseFileHandles(); + +private: + /** + * Function to write log into the log file + * @param aText Reference to a 8 bit descriptor + * @param aHeader boolean indicating presence of headers or values in the logging information + * @param aHash boolean indicating presence of # in the begging of the log line + */ + TInt Write(const TDesC8& aText, TBool aHeader,TBool aHash=EFalse); + /** + * Function to write log into the log file + * @param aText Reference to a 16 bit descriptor + * @param aHeader boolean indicating presence of headers or values in the logging information + * @param aHash boolean indicating presence of # in the begging of the log line + */ + TInt Write(const TDesC16& aText, TBool aHeader,TBool aHash=EFalse); +private: + /** + * Reference to the file handle + */ + RFile iFile; + /** + * Reference to the file server session + */ + RFs iFs; + /** + * Log buffer + */ + TBuf8 iLogBuffer; + /** + * Reference to the CSettings class + */ + CSettings& iSettings; + /** + * Reference to the CEikonEnv class + */ + CEikonEnv* iEEnv; + /** + * Reference to the CUSerEmulatorScriptsView class + */ + CUserEmulatorScriptsView& iScriptView; + /** + * Boolean indicating drive validity + */ + TBool iDriveLockError; +}; + +#endif //__LOGGER_H__