diff -r 61bc0f252b2b -r bac7acad7cb3 camerauis/cameraapp/generic/src/CamIndicatorResourceReader.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/camerauis/cameraapp/generic/src/CamIndicatorResourceReader.cpp Wed Sep 01 12:30:54 2010 +0100 @@ -0,0 +1,95 @@ +/* +* 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 "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 FILES +#include +#include + +#include "CamIndicatorResourceReader.h" +#include "CamIndicatorData.h" +#include "camlogging.h" + +// CONSTANTS + +// ================= MEMBER FUNCTIONS ======================= + +// --------------------------------------------------------------------------- +// CCamIndicatorResourceReader::NewLC +// Symbian OS two-phased constructor +// --------------------------------------------------------------------------- +// +CCamIndicatorResourceReader* CCamIndicatorResourceReader::NewLC( TResourceReader& aReader ) + { + CCamIndicatorResourceReader* self = new ( ELeave) CCamIndicatorResourceReader(); + CleanupStack::PushL( self ); + self->ConstructL( aReader ); + return self; + } + +// Destructor +CCamIndicatorResourceReader::~CCamIndicatorResourceReader() + { + PRINT( _L("Camera => ~CCamIndicatorResourceReader") ); + if ( iIndicatorArray ) + { + iIndicatorArray->ResetAndDestroy(); + delete iIndicatorArray; + } + PRINT( _L("Camera <= ~CCamIndicatorResourceReader") ); + } + +// --------------------------------------------------------- +// CCamIndicatorResourceReader::ConstructL +// Symbian OS 2nd phase constructor +// --------------------------------------------------------- +// +void CCamIndicatorResourceReader::ConstructL( TResourceReader& aReader ) + { + iIndicatorArray = new ( ELeave ) CArrayPtrFlat ( 3 ); + + TInt ii; + TInt numindicators = aReader.ReadInt16(); + for ( ii = 0; ii < numindicators; ii++ ) + { + CCamIndicatorData* data = CCamIndicatorData::NewLC( aReader ); + iIndicatorArray->AppendL( data ); + CleanupStack::Pop( data ); + } + } + +// --------------------------------------------------------------------------- +// CCamIndicatorResourceReader::CCamIndicatorResourceReader +// C++ constructor +// --------------------------------------------------------------------------- +// +CCamIndicatorResourceReader::CCamIndicatorResourceReader() + { + } + +// --------------------------------------------------------------------------- +// CCamIndicatorResourceReader::IndicatorData +// return indicator data +// --------------------------------------------------------------------------- +// +CArrayPtrFlat& CCamIndicatorResourceReader::IndicatorData() + { + return *iIndicatorArray; + } + +// End of File