diff -r 7fdc9a71d314 -r 8ad140f3dd41 stif/Logger/inc/RDebugOutput.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/stif/Logger/inc/RDebugOutput.h Wed Oct 13 16:17:58 2010 +0300 @@ -0,0 +1,194 @@ +/* +* 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 "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: This file contains the header file of the CRDebugOutput. +* +*/ + +#ifndef RDEBUGOUTPUT_H +#define RDEBUGOUTPUT_H + +// INCLUDES +#include + +#include "StifLogger.h" +#include "Output.h" +#include "LoggerTracing.h" + +// CONSTANTS +// None + +// MACROS +// None + +// DATA TYPES +// None + +// FUNCTION PROTOTYPES +// None + +// FORWARD DECLARATIONS +// None + +// CLASS DECLARATION + +// DESCRIPTION +// CRDebugOutput is a STIF Test Framework StifLogger class. +// Class contains a RDebug logging operations. +class CRDebugOutput + :public COutput + { + public: // Enumerations + + private: // Enumerations + + public: // Constructors and destructor + + /** + * Two-phased constructor. + */ + static CRDebugOutput* NewL( const TDesC& /* aTestPath */, + const TDesC& /* aTestFile */, + CStifLogger::TLoggerType aLoggerType, + TBool /* aOverWrite */, + TBool aWithTimeStamp, + TBool aWithLineBreak, + TBool aWithEventRanking, + TBool /* aThreadIdToLogFile */, + TBool /* aCreateLogDir */, + TInt aStaticBufferSize ); + + /** + * Destructor. + */ + ~CRDebugOutput(); + + public: // New functions + + /** + * Write RDebug information. + * 16 bit. + */ + TInt Write( TBool aWithTimeStamp, + TBool aWithLineBreak, + TBool aWithEventRanking, + const TDesC& aData ); + + /** + * Write RDebug information. + * 8 bit. + */ + TInt Write( TBool aWithTimeStamp, + TBool aWithLineBreak, + TBool aWithEventRanking, + const TDesC8& aData ); + + /** + * Event ranking and time stamp combimer. + */ + void EventAndTimeCombiner( TPtr& aLogInfo, + TPtr& aData, + TBool aWithTimeStamp, + TBool aWithLineBreak, + TBool aWithEventRanking ); + + /** + * Add event ranking, specify number to line. + */ + void EventRanking( TPtr& aData ); + + /** + * Add date, time and line break to data. + */ + void AddTimeStampToData( TPtr& aData ); + + /** + * Get date and time. + */ + void GetDateAndTime( TStifLoggerTimeStamp8& aDataAndTime ); + + public: // Functions from base classes + + protected: // New functions + + protected: // Functions from base classes + + private: + + /** + * C++ default constructor. + */ + CRDebugOutput( CStifLogger::TLoggerType aLoggerType, + TBool aWithTimeStamp, + TBool aWithLineBreak, + TBool aWithEventRanking ); + + /** + * By default Symbian OS constructor is private. + */ + void ConstructL( TInt aStaticBufferSize ); + + public: // Data + + protected: // Data + + private: // Data + + /** + * Data buffer + */ + HBufC* iDataHBuf; + + /** + * Indicates file type. + */ + CStifLogger::TLoggerType iLoggerType; + + /** + * Time stamp indicator. + */ + TBool iWithTimeStamp; + + /** + * Line break indicator. + */ + TBool iWithLineBreak; + + /** + * Event ranking indicator. + */ + TBool iWithEventRanking; + + /** + * DataHBuf for logging purposes + */ + HBufC * iDataHBuf1; + + /** + * DataHBuf for logging purposes + */ + HBufC * iDataHBuf2; + + TInt iStaticBufferSize; + + public: // Friend classes + + protected: // Friend classes + + private: // Friend classes + + }; + +#endif // RDEBUGOUTPUT_H + +// End of File