diff -r afc583cfa176 -r da2ae96f639b contentmgmt/referencedrmagent/tcaf/source/cafstep.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/contentmgmt/referencedrmagent/tcaf/source/cafstep.h Mon Oct 12 10:17:04 2009 +0300 @@ -0,0 +1,116 @@ +/* +* Copyright (c) 2002-2009 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: +* +*/ + + + + +#if (!defined __CAF_STEP_H__) +#define __CAF_STEP_H__ +#include + +class CCAFServer; +class CApaDataRecognizerType; + + +//Base class used to provide utility functions availble to test step classes +class CCAFStep : public CTestStep + { +public: + CCAFStep(); + virtual ~CCAFStep(); + + /* + * Convert a 16-bit descriptor to an 8-bit descriptor + * A new HBufC8 is allocated to store the new version of the descriptor + * @param source a descriptor derived from TDesC16 + * @return a new HBufC8 with a copy of the data in source + */ + HBufC8* ConvertDes16toHBufC8LC(TDesC& source); + + /* + * Convert a 8-bit descriptor to an 16-bit descriptor + * A new HBufC16 is allocated to store the new version of the descriptor + * @param source a descriptor derived from TDesC8 + * @return a new HBufC16 with a copy of the data in source + */ + HBufC16* ConvertDes8toHBufC16LC(TDesC8& source); + +#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT + + /* + * Utility method which creates dummy header data for WMDRM operations. + * @return A new HBufC8 allocated which contains the header data. + */ + HBufC8* CreateWmdrmHeaderLC(); + +#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT + + /* + * Load CAFRECOGNIZER.MDL and create an instance of CApaCafRecognizer that can be used + * by derived classes + */ + void LoadCafRecognizerL(); + + /* + * Delete the instance of CApaCafRecognizer and unload the CAFRECOGNIZER.MDL library + */ + void UnLoadCafRecognizer(); + + /* + * Implementation of CTestStep virtual functions, create and install a CActiveScheduler + */ + virtual TVerdict doTestStepPreambleL(); + + /* + * Implementation of CTestStep virtual functions, uninstalls and removes the CActiveScheduler + */ + virtual TVerdict doTestStepPostambleL(); + + /* delete a file */ + TInt Delete(const TDesC& aFile); + +protected: + /* + * Open the file and read data into the buffer up until the length of the buffer + * aBuffer.Length() will be set to the length of data read + * @param aFileName the file to read from + * @param aBuffer the buffer to read into + */ + void ReadBufferL(TDesC16& aFileName, TDes8& aBuffer); + + /* Starts the Apparc server (for use by CSupplier tests) + */ + void StartApparcServerL(); + + CApaDataRecognizerType *iRecognizer; + + /** Is called to initialise the following parameters + */ + void InitialiseFileHandleParametersL(); + + RFs iFs; + RFile iFile; + TPtrC iUri; + TPtrC iUniqueId; + TInt iExpectedResult; + +private: + CActiveScheduler *iActiveScheduler; + TUid iDtorIDKey; + }; + +#endif