diff -r b7e5ed8c1342 -r e71858845f73 ocrsrv_stub/inc/ocrengine.h --- a/ocrsrv_stub/inc/ocrengine.h Tue Sep 07 08:19:48 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,342 +0,0 @@ -/* -* Copyright (c) 2002 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: ocrengine definitions -* -*/ - - -#ifndef OCRENGINE_H -#define OCRENGINE_H - -// INCLUDES -#include "language.h" -#include - -/** Activate language selection */ -enum TLanguageSelected - { - /** One language selected to be active */ - ESignleLanguageSelected = 1, - - /** Two languages selected to be active */ - ETwoLanguageSelected = 2 - }; - -// FORWARD DECLARATIONS -class CEngineAdaptor; -class COCREngineImplBase; - -// CLASS DECLARATION - -/** - * Ocr engine wrapper implementation base - * - * Abstruct for ocr engines - * - * @lib ocrsrv.lib - * @since S60 v3.1 - */ -class COCREngineImplBase : public MOCREngineBase, - public CBase - { -public: - - /** - * Symbian Two-phased constructor. - */ - static COCREngineImplBase* NewL(MOCREngineObserver& aObserver, const TOcrEngineEnv aEngineEnv); - - /** - * Default C++ Destructor - */ - virtual ~COCREngineImplBase(); - -public: // From MOCREngineInterface - - /** - * Cancel recognition operation - * @since S60 v3.1 - * @return None - */ - virtual void CancelOperation(); - - /** - * Get the version of the ocrsrv component - * @since S60 v3.1 - * @return The version of the module - */ - virtual TVersion GetVersion() const; - - /** - * Refresh installed language databases - * @since S60 v3.1 - * @return None - */ - virtual void RefreshInstalledLanguageL(); - - /** - * Set the language for recognition - * @since S60 v3.1 - * @param aActiveLanguage A languages to be activated - * @return None - */ - virtual void SetActiveLanguageL(const RArray& aActiveLanguage); - - /** - * Get the installed file directory - * @since S60 v3.1 - * @param aLanguages Get installed languages - * @return None - */ - virtual void GetInstalledLanguage(RArray& aLanguages) const; - - /** - * Test if the language is supported - * @since S60 v3.1 - * @param aLanguage A language to be tested - * @return ETrue if it's supported - */ - virtual TBool IsLanguageSupported(const TLanguage aLanguage); - - /** - * Release the engine instance - * @since S60 v3.1 - * @return None - */ - void Release(); - - /** - * Get adaptor object - * @since S60 v3.1 - * @return Pointer to the adaptor object - */ - inline CEngineAdaptor* GetAdaptor() const; - - /** - * Test if the engine is active or not - * @since S60 v3.1 - * @return None - */ - virtual TBool IsEngineActive() const; - -protected: - - /** - * Default Symbian 2nd phase constructor - */ - void ConstructL(MOCREngineObserver& aObserver, const TOcrEngineEnv aEngineEnv); - -private: - - /** - * Reset adaptor when active language(s) is changed - * @since S60 v3.1 - * @param aActiveLanguage New language to be activated - * @return None - */ - void ResetAdaptorL(const RArray& aActiveLanguage); - -private: - - /** - * Pointer to the adaptor instance (Own) - */ - CEngineAdaptor* iAdaptor; - - /** - * Pointer to the engine observer (Not Own) - */ - MOCREngineObserver* iObserver; - - /** - * Pointer to the current engine (Own) - */ - COCREngineList* iLanguageEngine; - - /** - * File name of the current loaded Dll - */ - TFileName iCurrentDll; - - /** - * Settings of the engine working aera - */ - TOcrEngineEnv iEngineEnv; - }; - -/** - * Ocr engine wrapper for recognition with layout analysis - * - * Abstruct for ocr engines with layout analysis - * - * @lib ocrsrv.lib - * @since S60 v3.1 - */ -class COCREngineLayoutRecognize : public MOCREngineLayoutRecognize, - public CBase - { - friend class OCREngineFactory; - -public: - /** - * Symbian Two-phased constructor. - */ - static COCREngineLayoutRecognize* NewL(MOCREngineObserver& aObserver, - const TOcrEngineEnv aEngineEnv); - -public: // From MOCREngineWithLayout - - /** - * Layout analysis method - * @since S60 v3.1 - * @param aBitmapHandle An image to analyzed - * @param aSettings Setting for layout analysis - * @return None - */ - virtual void LayoutAnalysisL(const TInt aBitmapHandle, const TOCRLayoutSetting aSettings); - - /** - * Text recognition method - * @since S60 v3.1 - * @param aSetting Setting for recognition - * @param aBlock Block Ids to be recognized - * @return None - */ - virtual void RecognizeL(const TOCRRecognizeSetting aSettings, const RArray& aBlock); - - /** - * Provide base functions - * @since S60 v3.1 - * @return Pointer to the base engine instance - */ - MOCREngineBase* Base() const; - -private: - - /** - * Default Symbian 2nd phase constructor - */ - void ConstructL(MOCREngineObserver& aObserver, const TOcrEngineEnv aEngineEnv); - -protected: - - /** - * Default C++ Destructor - */ - virtual ~COCREngineLayoutRecognize(); - -private: - - /** - * Pointer to the engine base instance (Own) - */ - COCREngineImplBase* iBase; - - /** - * Pointer to the adaptor instance (Not Own) - */ - CEngineAdaptor* iAdaptor; - }; - -/** - * Ocr engine wrapper for recognition with block recognition - * - * Abstruct for ocr engines with block recognition - * - * @lib ocrsrv.lib - * @since S60 v3.1 - */ -class COCREngineRecognizeBlock : public MOCREngineRecognizeBlock, - public CBase - { - friend class OCREngineFactory; - -public: - /** - * Description: Two-phased constructor. - */ - static COCREngineRecognizeBlock* NewL(MOCREngineObserver& aObserver, - const TOcrEngineEnv aEngineEnv); - -public: // From MOCREngineWithoutLayout - - /** - * Recognize block without layout analysis - * @since S60 v3.1 - * @param aBitmapHandle An image to analyzed - * @param aLayoutInfo Layout information - * @return None - */ - virtual void RecognizeBlockL(const TInt aBitmapHandle, - const TOCRLayoutBlockInfo aLayoutInfo); - - /** - * Recognize special region - * @since S60 v3.1 - * @param aBitmapHandle An image to analyzed - * @param aRegionInfo Region information - * @return None - */ - virtual void RecognizeSpecialRegionL(const TInt aBitmapHandle, - const TRegionInfo aRegionInfo); - - /** - * Provide base functions - * @since S60 v3.1 - * @return Pointer to the base engine instance - */ - MOCREngineBase* Base() const; - -private: - - /** - * Default Symbian 2nd phase constructor - */ - void ConstructL(MOCREngineObserver& aObserver, const TOcrEngineEnv aEngineEnv); - - /** - * Check the validity of the given rect - * If the range is invalid, a leave will be raised with KErrArgument - * @since S60 v3.1 - * @param aBitmapHandle A bitmap handle - * @param aRange A given range - * @return None - */ - void CheckRangeL(const TInt aBitmapHandle, const TRect aRange); - -protected: - - /** - * Default C++ Destructor - */ - virtual ~COCREngineRecognizeBlock(); - -private: - - /** - * Pointer to the engine base instance (Own) - */ - COCREngineImplBase* iBase; - - /** - * Pointer to the adaptor instance (Not Own) - */ - CEngineAdaptor* iAdaptor; - }; - -#include "ocrengine.inl" - -#endif // OCRENGINE_H - -// End of File