memspy/Engine/Include/Sink/MemSpyEngineOutputSinkFile.h
changeset 48 516af714ebb4
parent 45 185201be11b0
child 55 f2950aff7424
--- a/memspy/Engine/Include/Sink/MemSpyEngineOutputSinkFile.h	Thu Sep 02 22:05:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,122 +0,0 @@
-/*
-* 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:
-*
-*/
-
-#ifndef MEMSPYENGINEOUTPUTSINKFILE_H
-#define MEMSPYENGINEOUTPUTSINKFILE_H
-
-// System includes
-#include <e32base.h>
-#include <f32file.h>
-
-// User includes
-#include <memspy/engine/memspyengineoutputsink.h>
-
-// Classes referenced
-class CMemSpyEngine;
-class CMemSpyEngineFileHolder;
-
-NONSHARABLE_CLASS( CMemSpyEngineOutputSinkFile ) : public CMemSpyEngineOutputSink
-    {
-public:
-    static CMemSpyEngineOutputSinkFile* NewL( CMemSpyEngine& aEngine, const TDesC& aRootFolder );
-    ~CMemSpyEngineOutputSinkFile();
-
-public:
-    CMemSpyEngineOutputSinkFile( CMemSpyEngine& aEngine );
-    void ConstructL( const TDesC& aRootFolder );
-    
-private: // From CMemSpyEngineOutputSink
-    void ProcessSuspendedL( TProcessId aId );
-    void ProcessResumed( TProcessId aId );
-    TMemSpySinkType Type() const;
-    void DataStreamBeginL( const TDesC& aContext, const TDesC& aFolder, const TDesC& aExtension );
-    void DataStreamBeginL( const TDesC& aContext, const TDesC& aFolder, const TDesC& aExtension, TBool aOverwrite );
-    void DataStreamBeginL( const TDesC& aContext, const TDesC& aFolder, const TDesC& aExtension, TBool aOverwrite, TBool aUseTimeStamp );
-    void DataStreamEndL();
-    void DoOutputLineL( const TDesC& aLine );
-    void DoOutputRawL( const TDesC8& aData );
-    TBool IsPrefixAllowed( const TDesC& aPrefix );
-
-private: // Internal
-    void IdentifyFileServerProcessIdL();
-    void ConstructDefaultLogFileL();
-    void DisableAllBuffersAfterFileServerResumedL();
-    CMemSpyEngineFileHolder& HeadLog() const;
-
-private:
-    RFs iFsSession;
-    RPointerArray< CMemSpyEngineFileHolder > iLogs;
-    RPointerArray< CMemSpyEngineFileHolder > iLogsPendingDestruction;
-
-    TUint iFileServerProcessId;
-    TBool iFileServerSuspended;
-    
-    HBufC* iRoot;
-
-private:
-    friend class CMemSpyEngineFileHolder;
-    };
-
-
-
-
-NONSHARABLE_CLASS( CMemSpyEngineFileHolder ) : public CBase
-    {
-public:
-    static CMemSpyEngineFileHolder* NewLC( CMemSpyEngineOutputSinkFile& aParent );
-    static CMemSpyEngineFileHolder* NewL( CMemSpyEngineOutputSinkFile& aParent, CMemSpyEngineSinkMetaData* aMetaData );
-    static CMemSpyEngineFileHolder* NewLogToRAML( CMemSpyEngineOutputSinkFile& aParent, CMemSpyEngineSinkMetaData* aMetaData );
-    ~CMemSpyEngineFileHolder();
-
-private:
-    CMemSpyEngineFileHolder( CMemSpyEngineOutputSinkFile& aParent, CMemSpyEngineSinkMetaData* aMetaData = NULL );
-    void ConstructL();
-    void CommonConstructL();
-
-public: // API
-    void WriteLineL( const TDesC& aData );
-    void WriteRawL( const TDesC8& aData );
-    void EnableBufferL();
-    void DisableBufferL();
-    const TDesC& FileName() const;
-    //
-    inline TBool UsingBuffer() const { return iEntireFileBuffer != NULL; }
-    inline TBool IsMainLog() const { return iIsMainLog; }
-
-private: // Internal
-    void OpenFileL();
-    void AddToWorkingBufferL( const TDesC8& aText );
-    void FlushWorkingBufferL();
-    void PrepareFileL( const TDriveNumber* aForceDrive = NULL );
-    HBufC* CleanContextInfoLC( const TDesC& aContext );
-    HBufC* GenerateFileNameLC( const TDriveNumber* aForceDrive = NULL );
-    RFs& FsSession();
-
-private: // Data members
-    CMemSpyEngineOutputSinkFile& iParent;
-    CMemSpyEngineSinkMetaData* iMetaData;
-    RFile iFile;
-    HBufC* iFileName;
-    HBufC8* iLineBuffer;
-    TBool iIsMainLog;
-    CBufFlat* iEntireFileBuffer;
-    CBufFlat* iWorkingBuffer;
-    };
-
-
-
-#endif