videoutils_plat/dvrengine_api/inc/ipvideo/CRtpFileBase.h
branchRCL_3
changeset 22 826cea16efd9
parent 21 798ee5f1972c
child 23 13a33d82ad98
--- a/videoutils_plat/dvrengine_api/inc/ipvideo/CRtpFileBase.h	Thu Aug 19 10:54:18 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,320 +0,0 @@
-/*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "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:    Base methods/variables for RTP file format recording.*
-*/
-
-
-
-
-#ifndef CRTPFILEBASE_H
-#define CRTPFILEBASE_H
-
-// INCLUDES
-#include <ipvideo/CRtpUtil.h>
-#include <f32file.h>
-
-// CONSTANTS
-const TInt KCurrentClipVersion( 3 );
-const TInt KMinValidClipVersion( 2 );
-const TInt KSeekHeaderBytes( 3 * KIntegerBytes );
-const TInt KGroupHeaderBytes( 4 * KIntegerBytes );
-const TInt KPacketsCountBytes( 4 );
-const TInt KNormalRecGroupLength( 2000 ); // 2 s
-const TUint KSeekArrayInterval( 30000 );  // 30 s
-
-// MACROS
-// None
-
-// DATA TYPES
-// None
-
-// FORWARD DECLARATIONS
-// None
-
-// CLASS DECLARATION
-
-/**
-*  RTP format common functionalities.
-*
-*  @lib RtpClipHandler.lib
-*  @since Series 60 3.0
-*/
-class CRtpFileBase : public CActive
-    {
-
-public: // Data types
-
-    // Time shift seek array
-    class STimeShiftSeek 
-        {
-
-    public: // Data
-
-        /**
-        * Group time.
-        */
-        TUint iGroupTime;
-        
-        /**
-        * File seek point.
-        */
-        TInt iSeekpoint;
-
-        /**
-        * File name index.
-        */
-        TInt iNameIndex;
-        
-        };
-
-
-public: // Constructors and destructor
-    
-    /**
-    * Destructor.
-    */
-    virtual ~CRtpFileBase();
-
-protected: // Constructors and destructor
-
-    /**
-    * C++ default constructor.
-    */
-    CRtpFileBase();
-
-    /**
-    * Symbian 2nd phase constructor can leave and is private by default.
-    */
-    void ConstructL();
-    
-protected: // Enumeration
-
-    // Defines RTP file mode
-    enum TRtpFileMode
-        {
-        EModeNone = KErrBadHandle,
-        EModeNormal = KErrNone,
-        EModeHandle,
-        EModeTimeShift
-        };
-
-public: // New functions
-
-    /**
-    * Deletes time shift files.
-    * @since Series 60 3.0
-    * @param aShiftSeek a reference to time shift seek array.
-    * @return None.
-    */
-    void DeleteTimeShiftFiles( RArray<STimeShiftSeek>& aShiftSeek );
-
-protected: // New functions
-
-    /**
-    * Writes RTP seek header to a file.
-    * @since Series 60 3.0
-    * @return None.
-    */
-    void WriteSeekHeaderL();
-
-    /**
-    * Reads clip's seek header from a file.
-    * @since Series 60 3.0
-    * @return None.
-    */
-    void ReadSeekHeaderL();
-
-    /**
-    * Reads clip's group header from a file.
-    * @since Series 60 3.0
-    * @return None.
-    */
-    void ReadGroupHeaderL();
-
-    /**
-    * Updates group header variables from readed data.
-    * @since Series 60 3.0
-    * @param aDataPtr data from which header is updated.
-    * @return None.
-    */
-    void UpdateGroupHeaderVariablesL( const TDesC8& aDataPtr );
-
-    /**
-    * Appends one group to the seek array.
-    * @since Series 60 3.0
-    * @param aTime a TS time of first packet in group.
-    * @param aPoint a seek point in clip for group.
-    * @return None.
-    */
-    void AppendSeekArrayL( const TUint aTime,
-                           const TInt aPoint );
-
-    /**
-    * Saves seek array to the clip.
-    * @since Series 60 3.0
-    * @return None.
-    */
-    void SaveSeekArrayL();
-
-    /**
-    * Reads seek array from the clip.
-    * @since Series 60 3.0
-    * @param aPoint a seek array point in clip.
-    * @return true if items in seek array, otherwise false.
-    */
-    TBool ReadSeekArrayL( const TInt aPoint );
-
-    /**
-    * Resets seek array.
-    * @since Series 60 3.0
-    * @return None.
-    */
-    inline void ResetSeekArray();
-
-    /**
-    * Writes variables to log file.
-    * @since Series 60 3.0
-    * @param aMethod a method which called this
-    */
-    void LogVariables( const TDesC& aMethod );
-
-private: // Functions from base classes
-
-    /**
-    * From CActive : Called when request completion event occurs.
-    * @since Series 60 3.0
-    * @return None.
-    */
-    virtual void RunL() = 0;
-
-    /**
-    * From CActive : Handles a leave occurring in the request
-    *                completion event handler RunL().
-    * @since Series 60 3.0
-    * @param aError the leave code
-    * @return status of run error handling
-    */
-    virtual TInt RunError( TInt aError ) = 0;
-
-    /**
-    * From CActive : Called when request completion event cancelled.
-    * @since Series 60 3.0
-    * @return None.
-    */
-    virtual void DoCancel() = 0;
-
-protected: // Data types
-    
-    // Defines seek struct
-    class SSeek
-        {
-
-    public: // Data
-
-        /**
-        * Enlapsed time.
-        */
-        TUint iTime;
-
-        /**
-        * Point in clip.
-        */
-        TInt iPoint;
-        
-        };
-
-protected: // Data
-    
-    /**
-    * Rtp file usage mode.
-    */
-    TRtpFileMode iMode;
-    
-    /**
-    * Current group.
-    */
-    TInt iThisGroup;
-    
-    /**
-    * Packet group counter (Seek header).
-    */
-    TInt iGroupsTotalCount;
-    
-    /**
-    * First seek address (Seek header).
-    */
-    TInt iFirstSeekAddr;
-    
-    /**
-    * Last seek address (Seek header).
-    */
-    TInt iLastSeekAddr;
-    
-    /**
-    * Group total length (Group header).
-    */
-    TInt iGroupTotalLen;
-    
-    /**
-    * Next group point (Group header).
-    */
-    TInt iNextGroupPoint;
-    
-    /**
-    * Previous group point (Group header).
-    */
-    TInt iPrevGroupPoint;
-    
-    /**
-    * Group time (Group header).
-    */
-    TUint iGroupTime;
-    
-    /**
-    * Seek header point.
-    */
-    TInt iSeekHeaderPoint;
-
-    /**
-    * Current clip path.
-    */
-    HBufC* iCurrentPath;
-    
-    /**
-    * Seek array.
-    */
-    CArrayFix<SSeek>* iSeekArray;
-
-    /**
-    * File data buffer pointer.
-    */
-    TPtr8 iDataPtr;
-    
-    /**
-    * File server.
-    */
-    RFs iFs;
-    
-    /*
-    * File operations.
-    */
-    RFile iFile;
-    
-  };
-
-#include <ipvideo/CRtpFileBase.inl>
-
-#endif // CRTPFILEBASE_H
-
-// End of File