guestrendering/vghwserialiser/inc/requestbuffer.h
author Faisal Memon <faisal.memon@nokia.com>
Fri, 20 Aug 2010 18:02:40 +0100
branchbug235_bringup_0
changeset 1 d8d95053303a
permissions -rwxr-xr-x
Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
     1
// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
     2
// All rights reserved.
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
     3
// This component and the accompanying materials are made available
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
     4
// under the terms of "Eclipse Public License v1.0"
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
     5
// which accompanies this distribution, and is available
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
     7
//
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
     8
// Initial Contributors:
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
     9
// Nokia Corporation - initial contribution.
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    10
//
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    11
// Contributors:
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    12
//
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    13
// Description:
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    14
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    15
#ifndef REQUEST_BUFFER_H_
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    16
#define REQUEST_BUFFER_H_
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    17
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    18
#include "serializerplatform.h"
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    19
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    20
/*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    21
 * Base for ring buffer users
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    22
 */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    23
class MRequestBufferBookKeepingBase
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    24
    {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    25
public:
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    26
    virtual TUint32 GetWriteCount() = 0;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    27
    virtual TUint32 GetReadCount() = 0;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    28
    virtual TUint32 BufferTail() = 0;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    29
    };
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    30
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    31
/*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    32
 * Ring buffer writer. Data source for ring buffer.
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    33
 */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    34
class MRequestBufferBookKeepingWriter: public MRequestBufferBookKeepingBase
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    35
    {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    36
public:
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    37
    virtual TUint32 BufferHead() = 0;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    38
    virtual void SetBufferHead( TUint32 aIndex ) = 0;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    39
    virtual void IncrementWriteCount( TUint32 aWriteCount ) = 0;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    40
    virtual void SetMaxTailIndex( TUint32 aIndex ) = 0;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    41
    };
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    42
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    43
/*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    44
 * Ring buffer reader. Data consumer for ring buffer.
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    45
 */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    46
class MRequestBufferBookKeepingReader: public MRequestBufferBookKeepingBase
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    47
    {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    48
public:
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    49
    virtual void SetBufferTail( TUint32 aIndex ) = 0;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    50
    virtual void IncrementReadCount( TUint32 aReadCount ) = 0;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    51
    virtual TUint32 MaxTailIndex() = 0;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    52
    };
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    53
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    54
class RequestBufferBase
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    55
    {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    56
public:
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    57
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    58
    /*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    59
     * 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    60
     */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    61
    static TUint32 AdjustAlignment( TUint32 aIndex, const TUint32 aAlignment )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    62
    {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    63
    const TUint32 remainder = aIndex % aAlignment;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    64
    if ( remainder )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    65
        {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    66
        aIndex += aAlignment - remainder;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    67
        }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    68
    return aIndex;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    69
    }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    70
        
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    71
protected:
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    72
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    73
    /*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    74
     * 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    75
     */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    76
    RequestBufferBase( TUint32 aSize ):
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    77
        iSize( aSize )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    78
        {}
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    79
    
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    80
protected:
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    81
    const TUint32 iSize;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    82
    };
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    83
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    84
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    85
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    86
class RequestBufferWriter: RequestBufferBase
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    87
    {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    88
public:
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    89
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    90
    /*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    91
     * 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    92
     */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    93
    RequestBufferWriter( MRequestBufferBookKeepingWriter& aBookKeeper, TUint32 aSize ): 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    94
        RequestBufferBase( aSize ),
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    95
        iBookKeeper( aBookKeeper )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    96
        {}
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    97
    
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    98
    /*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
    99
     * 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   100
     */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   101
    void InitBuffer()
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   102
        {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   103
        iBookKeeper.SetBufferHead( 0 );    
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   104
        iBookKeeper.SetMaxTailIndex( iSize );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   105
        }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   106
    
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   107
    /*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   108
     * Does not check for free space, assure free space by using CheckForSpace
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   109
     */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   110
    TUint32 AllocateBytes( const TUint32 aBytes )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   111
        {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   112
        TUint32 base = iBookKeeper.BufferHead();
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   113
        if ( base + aBytes > iSize )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   114
            {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   115
            iBookKeeper.SetMaxTailIndex( base );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   116
            base = 0;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   117
            }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   118
        else if ( iBookKeeper.BufferTail() <= base )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   119
            {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   120
            iBookKeeper.SetMaxTailIndex( iSize );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   121
            }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   122
        return base;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   123
        }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   124
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   125
    /*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   126
     * Does not check for free space, assure free space by using CheckForSpace
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   127
     */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   128
    void CommitBytes( const TUint32 aBase, const TUint32 aBytes )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   129
        {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   130
        //TUint32 base = CheckIndexForWrapAround( AdjustAlignment( aBase + aBytes, 4 ) );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   131
        TUint32 base = AdjustAlignment( aBase + aBytes, 4 );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   132
		const TUint32 inc( base - aBase );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   133
        iBookKeeper.SetBufferHead( base );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   134
        iBookKeeper.IncrementWriteCount( inc );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   135
        }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   136
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   137
    /*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   138
     * 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   139
     */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   140
    TBool CheckForSpace( const TUint32 aSpaceNeeded )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   141
        {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   142
        const TUint32 inputBufferHead( iBookKeeper.BufferHead() );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   143
        const TUint32 inputBufferTail( iBookKeeper.BufferTail() );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   144
        //Notice that tail might grow during the execution of this function
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   145
        // but it would only cause false negative as a result
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   146
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   147
        //Buffer can be empty or full
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   148
        if ( inputBufferHead == inputBufferTail )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   149
            {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   150
            //Check if the buffer is full or empty
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   151
            if ( iBookKeeper.GetWriteCount() - iBookKeeper.GetReadCount() )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   152
                {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   153
                //Buffer is full
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   154
                return EFalse;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   155
                }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   156
            }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   157
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   158
        //Let's check if the SFC fits to the buffer
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   159
        const TUint32 newHeadIndex = inputBufferHead + aSpaceNeeded;// + alignmentAdjust;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   160
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   161
        if ( inputBufferHead < inputBufferTail && newHeadIndex > inputBufferTail )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   162
            {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   163
            //Buffer does not have enough space
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   164
            return EFalse; 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   165
            }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   166
        else if ( inputBufferHead >= inputBufferTail )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   167
            {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   168
            if ( newHeadIndex > iSize && aSpaceNeeded > inputBufferTail )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   169
                {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   170
                //Buffer does not have enough space
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   171
                return EFalse;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   172
                }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   173
            }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   174
        return ETrue;        
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   175
        }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   176
    
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   177
private:
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   178
    MRequestBufferBookKeepingWriter& iBookKeeper;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   179
    };
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   180
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   181
class RequestBufferReader: public RequestBufferBase
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   182
    {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   183
public:
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   184
    /*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   185
     * 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   186
     */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   187
    RequestBufferReader( MRequestBufferBookKeepingReader& aBookKeeper, TUint32 aSize ): 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   188
        RequestBufferBase( aSize ),
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   189
        iBookKeeper( aBookKeeper )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   190
        {}
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   191
    
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   192
    /*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   193
     * 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   194
     */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   195
    void InitBuffer()
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   196
        {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   197
        iBookKeeper.SetBufferTail( 0 );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   198
        }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   199
    
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   200
    /*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   201
     * 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   202
     */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   203
    TUint32 GetReadIndex()
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   204
        {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   205
		const TUint32 bufTail( iBookKeeper.BufferTail() );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   206
		const TUint32 bufTail2( CheckIndexForWrapAround( bufTail ) );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   207
        if ( bufTail != bufTail2 )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   208
			{
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   209
			iBookKeeper.SetBufferTail( bufTail2 );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   210
			}
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   211
		return bufTail2;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   212
        }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   213
    
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   214
    /*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   215
     * 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   216
     */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   217
    void FreeBytes( TUint32 aBytes )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   218
        {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   219
		const TUint32 oldTail(iBookKeeper.BufferTail());
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   220
        TUint32 newBufferTail = AdjustAlignment( aBytes + oldTail, 4 );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   221
		const TUint32 inc( newBufferTail - oldTail );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   222
        newBufferTail = CheckIndexForWrapAround( newBufferTail );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   223
        iBookKeeper.IncrementReadCount( inc );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   224
        iBookKeeper.SetBufferTail( newBufferTail );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   225
        }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   226
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   227
    /*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   228
     * 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   229
     */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   230
    TBool IsDataAvailable()
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   231
        {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   232
		const TUint32 readc( iBookKeeper.GetReadCount() );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   233
		const TUint32 writec( iBookKeeper.GetWriteCount() );
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   234
        return readc != writec;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   235
        }   
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   236
    
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   237
    /*
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   238
     * 
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   239
     */
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   240
    TUint32 CheckIndexForWrapAround( TUint32 aIndex )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   241
        {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   242
        //Head is behind of tail when MaxTailIndex is applied so
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   243
        // this routine works for head, too
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   244
        if ( aIndex >= iBookKeeper.MaxTailIndex() )
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   245
            {
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   246
            return 0;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   247
            }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   248
        return aIndex;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   249
        }
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   250
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   251
private:
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   252
    MRequestBufferBookKeepingReader& iBookKeeper;
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   253
    };
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   254
d8d95053303a Bootstrap the guestvideodriver and sghwserialiser. Some stuff is still commented out. Compiles with graphics package at changeset 8d47cca9cc11
Faisal Memon <faisal.memon@nokia.com>
parents:
diff changeset
   255
#endif