sl@0: // Copyright (c) 2007-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: // sl@0: sl@0: #include sl@0: #include "testbuffer.h" sl@0: sl@0: sl@0: RTestVideoFrameBufferStep* RTestVideoFrameBufferStep::NewL() sl@0: { sl@0: RTestVideoFrameBufferStep* self = new (ELeave) RTestVideoFrameBufferStep(); sl@0: return self; sl@0: } sl@0: sl@0: RTestVideoFrameBufferStep::RTestVideoFrameBufferStep() sl@0: { sl@0: iTestStepName = _L("MM-MMF-VIDREND-U-0001"); sl@0: } sl@0: sl@0: TVerdict RTestVideoFrameBufferStep::DoTestStepL() sl@0: { sl@0: INFO_PRINTF1(_L("Check TVideoFrameBuffer")); sl@0: sl@0: TVerdict result = EPass; sl@0: sl@0: const TInt KStride = 8; sl@0: const TInt KBufferId = 2; sl@0: const TInt KOffsetInChunk = 4; sl@0: const TInt KChunkSize = 20; sl@0: const TInt KMaxChunkSize = 40; sl@0: RChunk chunk; sl@0: TInt err = chunk.CreateLocal(KChunkSize, KMaxChunkSize); sl@0: if (err != KErrNone) sl@0: { sl@0: ERR_PRINTF2(_L("Error - RChunk::CreateLocal returned %d"), err); sl@0: result = EFail; sl@0: } sl@0: sl@0: TUncompressedVideoFormat testFormat; sl@0: testFormat.iDataFormat = ERgbRawData; sl@0: testFormat.iRgbFormat = ERgb32bit888; sl@0: sl@0: TVideoFrameBuffer buffer(testFormat, KStride, KBufferId, chunk, KOffsetInChunk); sl@0: sl@0: if (buffer.Stride() != KStride) sl@0: { sl@0: ERR_PRINTF2(_L("Error - unexpected stride %d returned"), buffer.Stride()); sl@0: result = EFail; sl@0: } sl@0: else if (buffer.BufferId() != KBufferId) sl@0: { sl@0: ERR_PRINTF2(_L("Error - unexpected buffer id %d returned"), buffer.BufferId()); sl@0: result = EFail; sl@0: } sl@0: else if (buffer.Chunk().Handle() != chunk.Handle()) sl@0: { sl@0: ERR_PRINTF1(_L("Error - unexpected chunk returned")); sl@0: result = EFail; sl@0: } sl@0: else if (buffer.Buffer() != chunk.Base()+KOffsetInChunk) sl@0: { sl@0: ERR_PRINTF1(_L("Error - unexpected buffer")); sl@0: result = EFail; sl@0: } sl@0: else if (!(buffer.Format() == testFormat)) sl@0: { sl@0: ERR_PRINTF1(_L("Error - unexpected format returned")); sl@0: result = EFail; sl@0: } sl@0: sl@0: chunk.Close(); sl@0: return result; sl@0: }