sl@0: /* sl@0: * Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: * All rights reserved. sl@0: * This component and the accompanying materials are made available sl@0: * under the terms of "Eclipse Public License v1.0" sl@0: * which accompanies this distribution, and is available sl@0: * at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: * sl@0: * Initial Contributors: sl@0: * Nokia Corporation - initial contribution. sl@0: * sl@0: * Contributors: sl@0: * sl@0: * Description: sl@0: * FILEOUTPUT.H sl@0: * sl@0: */ sl@0: sl@0: sl@0: #ifndef __FILEOUTPUT_H sl@0: #define __FILEOUTPUT_H sl@0: sl@0: #include sl@0: #include sl@0: #include sl@0: /** sl@0: @file sl@0: @internalComponent sl@0: */ sl@0: class CTextView; sl@0: /** sl@0: Class used by CBandValidator to log results of tests sl@0: Writes information about document being tested to a file. sl@0: If any test fails detailed output will be written to a file sl@0: detailing the contents of the views. sl@0: */ sl@0: class CFileOutput : public CBase sl@0: { sl@0: public: sl@0: IMPORT_C static CFileOutput* NewL(); sl@0: // log document attributes sl@0: virtual void WriteDocumentAttributesL(const CTextView& aView); sl@0: // log document positions sl@0: virtual void WriteDocumentPositionsL(const RArray& aPositions); sl@0: // log the test view visible lines sl@0: virtual void WriteVisibleTestLinesL(const CDesCArray& aTestLines); sl@0: // log the reference view visible lines sl@0: virtual void WriteVisibleReferenceLinesL(const CDesCArray& aTestLines); sl@0: // log the details of operation being performed sl@0: virtual void WriteOperationDetails(const TDesC& aDesc); sl@0: ~CFileOutput(); sl@0: protected: sl@0: CFileOutput(); sl@0: private: sl@0: virtual void ConstructL(); sl@0: void WriteLinesL(const CDesCArray& aLines, RFile& aFile); sl@0: RFs iFs; sl@0: RFile iFile; sl@0: RFile iTestErrorFile; sl@0: RFile iReferenceErrorFile; sl@0: }; sl@0: sl@0: #endif