diff -r 7f25ef56562d -r 29ddb8a72f0e graphicsapitest/graphicssvs/bitgdi/src/T_DataPolygonFiller.cpp --- a/graphicsapitest/graphicssvs/bitgdi/src/T_DataPolygonFiller.cpp Wed Jun 23 19:41:15 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,318 +0,0 @@ -/* -* Copyright (c) 2005-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: -* -*/ - - -#include "T_DataPolygonFiller.h" -#include "T_GraphicsUtil.h" - -_LIT(KDataClassname, "CPolygonFiller"); - -/// Fields -_LIT(KFldScanLine, "scanline"); -_LIT(KFldPointList, "pointlist"); -_LIT(KFldFillRule, "fillrule"); -_LIT(KFldUsage, "usage"); -_LIT(KFldnumPoints, "numpoints"); -_LIT(KFldExpectedScanLine, "expectedscanline"); -_LIT(KFldExpectedStart, "expectedstart"); -_LIT(KFldExpectedEnd, "expectedend"); -_LIT(KFldExpectedExists, "expectedexists"); -/// Commands -_LIT(KCmdnewL, "new"); -_LIT(KCmdConstructL, "Construct"); -_LIT(KCmdDestructorGeneral, "~"); -_LIT(KCmdDestructor, "~CPolygonFiller"); -_LIT(KCmdReset, "Reset"); -_LIT(KCmdGetNextPixelRun, "GetNextPixelRun"); -_LIT(KCmdGetNextPixelRunOnSpecifiedScanLine, "GetNextPixelRunOnSpecifiedScanLine"); - -//Log -_LIT(KLogErrNum, "Error=%d"); -_LIT(KLogInfoCmdnewL, "execute new CPolygonFiller()"); -_LIT(KLogMissingParameter, "Missing parameter '%S'"); -_LIT(KLogInfoCmdDestructor1, "execute ~CPolygonFiller()"); -_LIT(KLogInfoCmdConstruct1, "execute Construct(TPoint*, TInt, TFillRule,TUsage)"); -_LIT(KLogInfoCmdConstruct2, "execute Construct(CArrayFix*, TFillRule,TUsage)"); -_LIT(KLogInfoCmdReset, "execute Reset()"); -_LIT(KLogInfoCmdGetNextPixelRun, "execute GetNextPixelRun()"); -_LIT(KLogInfoCmdGetNextPixelRunOnSpecifiedScanLine, "execute GetNextPixelRunOnSpecifiedScanLine()"); -_LIT(KLogInfoNotCheckThePosition, "Won't check the position on the scan line in the test case"); -CT_DataPolygonFiller* CT_DataPolygonFiller::NewL() - { - CT_DataPolygonFiller* ret = new (ELeave) CT_DataPolygonFiller(); - CleanupStack::PushL(ret); - ret->ConstructL(); - CleanupStack::Pop(ret); - return ret; - } - -CT_DataPolygonFiller::CT_DataPolygonFiller() -: iPolygonFiller(NULL) - { - } - -void CT_DataPolygonFiller::ConstructL() - { - iPointsArray=NULL; - iPoints=NULL; - } - -CT_DataPolygonFiller::~CT_DataPolygonFiller() - { - DestroyData(); - - delete iPointsArray; - iPointsArray=NULL; - - delete[] iPoints; - iPoints=NULL; - } - -TAny* CT_DataPolygonFiller::GetObject() - { - return iPolygonFiller; - } - -void CT_DataPolygonFiller::SetObjectL(TAny* aAny) - { - DestroyData(); - iPolygonFiller = static_cast (aAny); - } - -void CT_DataPolygonFiller::DisownObjectL() - { - iPolygonFiller = NULL; - } - -void CT_DataPolygonFiller::DestroyData() - { - DoCmdDestructor(); - } - - -/** -* Process a command read from the ini file -* -* @param aCommand the command to process -* @param aSection the entry in the ini file requiring the command to be processed -* @return ETrue if the command is processed -*/ -TBool CT_DataPolygonFiller::DoCommandL(const TTEFFunction& aCommand, const TTEFSectionName& aSection, const TInt) - { - TBool ret = ETrue; - - if ( aCommand==KCmdDestructorGeneral || aCommand==KCmdDestructor ) - { - DoCmdDestructor(); - } - else if ( aCommand==KCmdnewL || aCommand==KDataClassname ) - { - DoCmdnewL(); - } - else if(aCommand==KCmdConstructL) - { - DoCmdConstructL(aSection); - } - else if ( aCommand==KCmdReset ) - { - DoCmdReset(); - } - else if ( aCommand==KCmdGetNextPixelRun ) - { - DoCmdGetNextPixelRun(aSection); - } - else if ( aCommand==KCmdGetNextPixelRunOnSpecifiedScanLine ) - { - DoCmdGetNextPixelRunOnSpecifiedScanLine(aSection); - } - else - { - ret=EFalse; - } - return ret; - } - -void CT_DataPolygonFiller::DoCmdnewL() - { - DestroyData(); - TInt err = KErrNone; - INFO_PRINTF1(KLogInfoCmdnewL); - TRAP(err, iPolygonFiller = new (ELeave) CPolygonFiller()); - if ( err!=KErrNone ) - { - ERR_PRINTF2(KLogErrNum, err); - SetError(err); - } - } - -void CT_DataPolygonFiller::DoCmdConstructL(const TDesC& aSection) - { - TBool dataOk=ETrue; - TInt datNumPoints=0; - TInt err=0; - CGraphicsContext::TFillRule datFillRule=CGraphicsContext::EAlternate; - CPolygonFiller::TUsage datUsage=CPolygonFiller::EGetAllPixelRunsSequentially; - - CT_GraphicsUtil::ReadFillRule(*this, aSection, KFldFillRule, datFillRule); - CT_GraphicsUtil::ReadTUsage(*this,aSection,KFldUsage,datUsage); - -//Use TPoint parameter to construct if the number of points in the list is assigned. - if (GetIntFromConfig(aSection, KFldnumPoints, datNumPoints)) - { - iPoints=new (ELeave) TPoint[datNumPoints]; - if ( !GetPointListFromConfig(aSection, KFldPointList, datNumPoints, iPoints)) - { - ERR_PRINTF2(KLogMissingParameter, &KFldPointList()); - SetBlockResult(EFail); - } - else - { - // Execute command and log parameters - INFO_PRINTF1(KLogInfoCmdConstruct1); - iPolygonFiller->Construct(iPoints, datNumPoints, datFillRule, datUsage); - } - } - else - { - iPointsArray=new (ELeave) CArrayFixFlat(1); - TBool hasPointList=GetPointListFromConfigL(aSection, KFldPointList, *iPointsArray); - - if ( !hasPointList ) - { - ERR_PRINTF2(KLogMissingParameter, &KFldPointList()); - SetBlockResult(EFail); - } - else - { - // Execute command and log parameters - INFO_PRINTF1(KLogInfoCmdConstruct2); - iPolygonFiller->Construct(iPointsArray,datFillRule,datUsage); - } - } - } - -void CT_DataPolygonFiller::DoCmdDestructor() - { - INFO_PRINTF1(KLogInfoCmdDestructor1); - delete iPolygonFiller; - iPolygonFiller = NULL; - } - -void CT_DataPolygonFiller::DoCmdReset() - { - INFO_PRINTF1(KLogInfoCmdReset); - iPolygonFiller->Reset(); - } - -void CT_DataPolygonFiller::DoCmdGetNextPixelRun(const TDesC& aSection) - { - TBool relExists,expectedExists; - TInt relScanLine,relStart,relEnd,expectedScanLine,expectedStart,expectedEnd; - INFO_PRINTF1(KLogInfoCmdGetNextPixelRun); - iPolygonFiller->GetNextPixelRun(relExists,relScanLine,relStart,relEnd); - //Verify the scanline is expected - if(!GetBoolFromConfig(aSection,KFldExpectedExists,expectedExists)) - { - ERR_PRINTF2(KLogMissingParameter, &KFldExpectedExists); - SetBlockResult(EFail); - } - else if(relExists!=expectedExists) - { - ERR_PRINTF3(_L("The returned Exists value is not as expected, expected: %d, result: %d"), expectedExists , relExists); - SetBlockResult(EFail); - } - if(!GetIntFromConfig(aSection,KFldExpectedScanLine,expectedScanLine)) - { - ERR_PRINTF2(KLogMissingParameter, &KFldExpectedScanLine); - SetBlockResult(EFail); - } - else if(relScanLine!=expectedScanLine) - { - ERR_PRINTF3(_L("The returned Scanline value is not as expected, expected: %d, result: %d"), expectedScanLine , relScanLine); - SetBlockResult(EFail); - } - //Verify the start position on the scan line - if(!GetIntFromConfig(aSection,KFldExpectedStart,expectedStart)) - { - INFO_PRINTF1(KLogInfoNotCheckThePosition); - - } - else if(relStart!=expectedStart) - { - ERR_PRINTF3(_L("The returned Start Position value is not as expected, expected: %d, result: %d"), expectedStart , relStart); - SetBlockResult(EFail); - } - //Verify the end position on the scan line - if(!GetIntFromConfig(aSection,KFldExpectedEnd,expectedEnd)) - { - INFO_PRINTF1(KLogInfoNotCheckThePosition); - - } - else if(relEnd!=expectedEnd) - { - ERR_PRINTF3(_L("The returned End Position value is not as expected, expected: %d, result: %d"), expectedEnd , relEnd); - SetBlockResult(EFail); - } - } - -void CT_DataPolygonFiller::DoCmdGetNextPixelRunOnSpecifiedScanLine(const TDesC& aSection) - { - TInt datScanLine=0; - TBool relExists,expectedExists; - TInt relStart,relEnd,expectedStart,expectedEnd; - - if (!GetIntFromConfig(aSection, KFldScanLine, datScanLine)) - { - ERR_PRINTF2(KLogMissingParameter, &KFldScanLine); - SetBlockResult(EFail); - } - INFO_PRINTF1(KLogInfoCmdGetNextPixelRunOnSpecifiedScanLine); - iPolygonFiller->GetNextPixelRunOnSpecifiedScanLine(relExists,datScanLine,relStart,relEnd); - if(!GetBoolFromConfig(aSection,KFldExpectedExists,expectedExists)) - { - ERR_PRINTF2(KLogMissingParameter, &KFldExpectedExists); - SetBlockResult(EFail); - } - else if(relExists!=expectedExists) - { - ERR_PRINTF3(_L("The returned Exists value is not as expected, expected: %d, result: %d"), expectedExists , relExists); - SetBlockResult(EFail); - } - //Verify the start position on the scan line - if(!GetIntFromConfig(aSection,KFldExpectedStart,expectedStart)) - { - INFO_PRINTF1(KLogInfoNotCheckThePosition); - - } - else if(relStart!=expectedStart) - { - ERR_PRINTF3(_L("The returned Start Position value is not as expected, expected: %d, result: %d"), expectedStart , relStart); - SetBlockResult(EFail); - } - //Verify the end position on the scan line - if(!GetIntFromConfig(aSection,KFldExpectedEnd,expectedEnd)) - { - INFO_PRINTF1(KLogInfoNotCheckThePosition); - - } - else if(relEnd!=expectedEnd) - { - ERR_PRINTF3(_L("The returned End Position value is not as expected, expected: %d, result: %d"), expectedEnd , relEnd); - SetBlockResult(EFail); - } - } -