diff -r 000000000000 -r 951a5db380a0 videoeditorengine/vedengine/videoprocessor/inc/yuvconverter.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/videoeditorengine/vedengine/videoprocessor/inc/yuvconverter.h Fri Jan 29 14:08:33 2010 +0200 @@ -0,0 +1,59 @@ +/* +* Copyright (c) 2010 Ixonos Plc. +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the "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: +* Ixonos Plc +* +* Description: +* The YUV-to-something converter base class CYuvConverter definition. +* +*/ + + + +#ifndef __YUVCONVERTER_H__ +#define __YUVCONVERTER_H__ + + +// INCLUDES + +#ifndef __E32BASE_H__ +#include +#endif + + +// CLASS DEFINITIONS + +class CYuvConverter : public CBase +{ +public: + // CBase provides a virtual destructor + + // Second-phase constructor + virtual void ConstructL(TUint aWidth, TUint aHeight, TUint aMaxWidth, TUint aMaxHeight) = 0; + + // Set conversion gamma + virtual void SetGamma(TInt aGamma) = 0; + + // Set Brightness & Contrast setting. All yuv2rgb classes may not support. + // This might suit better than SetGamma for displays typically used in Series60 devices. + virtual void SetBrightnessContrast(TInt ) { }; + + // Do the conversion + virtual void Convert(const TUint8 *aYBuf, const TUint8 *aUBuf, + const TUint8 *aVBuf, + TUint aBufWidth, TUint aBufHeight, + TUint8 *aTarget, TUint aTargetScanlineLength) = 0; +}; + +#endif // __YUVCONVERTER_H__ + +// End of File