--- /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 <eikenv.h>
+#include <flogger.h>
+#include <f32file.h>
+
+//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<KBuffer1024> 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__