srsf/sisrscontrollerplugin/src/sicommondb.h
branchRCL_3
changeset 18 cad71a31b7fc
parent 17 8ce15fced3a6
child 19 e36f3802f733
--- a/srsf/sisrscontrollerplugin/src/sicommondb.h	Thu Aug 19 09:56:14 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,241 +0,0 @@
-/*
-* Copyright (c) 2004-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:  This class is the baseclass for all SI Controller Plugin DB classes.
-*				It implements the common database functionalities.
-*
-*/
-
-
-#ifndef SICOMMONDB_H
-#define SICOMMONDB_H
-
-//  INCLUDES
-#include <d32dbms.h>
-#include <e32svr.h>
-#include <sysutil.h> // Critical Level check
-#include <f32file.h>
-#include "s32strm.h" // Streams
-#include "s32mem.h"  // Buffer streams
-#include "nsssispeechrecognitiondatacommon.h"
-#include "nsssispeechrecognitiondatadevasr.h"
-
-// CONSTANTS
-const TInt KSDDatabaseDrive = EDriveC;
-
-_LIT(KClientUidColumn, "clientUid");
-_LIT(KUsedColumn, "used");
-_LIT(KCounterColumn, "counter");
-
-_LIT(KOpenParen, " (");
-_LIT(KCloseParen, ")");
-_LIT(KEqual, " = ");
-_LIT(KNext, ", ");
-
-
-_LIT(KSIGrammarTable, "siGrammarTable");
-_LIT(KBinaryGrammarColumn, "BinaryGrammarId");
-_LIT(KBinaryGrammarColumnSize, "BinaryGrammarSize");
-_LIT(KGrammarIdTable, "siGrammarIdTable");
-_LIT(KGrammarIdColumn, "grammarId");
-_LIT(KGrammarIndex, "grammarIndex");
-
-_LIT(KSILexiconTable, "siLexiconTable");
-_LIT(KBinaryLexiconColumn, "BinaryLexiconId");
-_LIT(KBinaryLexiconColumnSize, "BinaryLexiconSize");
-_LIT(KLexiconIdTable, "siLexiconIdTable");
-_LIT(KLexiconIdColumn, "lexiconId");
-_LIT(KLexiconIndex, "lexiconIndex");
-
-_LIT(KSIModelBankTable, "siModelBankTable");
-_LIT(KBinaryModelBankColumn, "BinaryModelBankId");
-_LIT(KBinaryModelBankColumnSize, "BinaryModelBankSize");
-_LIT(KModelBankIdTable, "siModelBankIdTable");
-_LIT(KModelBankTable, "siModelBankTable");
-_LIT(KModelBankIdColumn, "modelBankId");
-
-_LIT(KHmmColumn, "hmm");
-_LIT(KHmmChecksumColumn, "hmmChecksum");
-_LIT(KModelBankIndex, "modelBankIndex");
-_LIT(KModelIndex, "modelIndex");
-
-const TInt KNotUsed = 0;
-const TInt KUsed = 1;
-const TSIModelID KModelID=1;
-// CLASS DECLARATION
-
-/**
-*  This class is the base class for all SI Controller Plugin DB classes.
-*  It provides the common functionality for the DB classes.
-*
-*  @lib SIControllerPlugin.lib
-*  @since 2.0
-*/
-class CSICommonDB : public CBase
-    {
-    public:  // Constructors and destructor
-
-        /**
-        * C++ default constructor.
-        */
-        CSICommonDB( RDbNamedDatabase& aDatabase, RDbs& aDbSession, TInt aDrive );
-
- 		/**
-        * Destructor.
-        */
-        virtual ~CSICommonDB();
-
-    public: // New functions
-
-        /**
-        * Checks if the specified ID table exists or not.  If it doesn't exist, it creates one.
-        * @since 2.0
-        * @param	aIdTable		descriptor containing tabel name
-		* @param	aIdColumn		descriptor containing ID column name
-		* @param	aIndex			descriptor containing table index name
-        * @return	-
-        */
-		void CreateIDTableL( const TDesC& aIdTable, const TDesC& aIdColumn, const TDesC& aIndex );
-
-        /**
-        * Creates a new ID in the specified table.
-        * @since 2.0
-        * @param	aTableName		descriptor containing table name
-		* @param	aIdColumn		descriptor containing ID column name
-		* @param	aClientUid		client Uid for data ownership
-        * @return	A new ID
-        */
-		TUint32 CreateNewIDL( const TDesC& aTableName, const TDesC& aIdColumn, TUid aClientUid );
-
-        /**
-        * Returns the counter column value after searching for the aKey in the specified table.
-        * @since 2.0
-        * @param	aTableName		descriptor containing tabel name
-		* @param	aIndex			descriptor containing table index name
-		* @param	aKey			key to search in the table
-        * @return	Counter
-        */
-		TInt CountL( const TDesC& aTableName, const TDesC& aIndex, TUint aKey );
-
-        /**
-        * Checks if an unused Id exists in the given table.  If found, row is set to
-		* the found row.
-        * @since 2.0
-        * @param	"RDbTable& aDbTable"
-        * @return	ETrue if found
-        */
-        TBool FindUnusedIDL( RDbTable& aDbTable );
-
-        /**
-        * Returns all Ids in the specified table that belong to the specified client.
-        * @since 2.0
-        * @param	aTableName		descriptor containing table name
-		* @param	aIdColumn		descriptor containing ID column name
-        * @param	aClientUid		client's Uid for data ownership
-		* @param	aIDs			reference where Ids are stored
-        */
-		void GetAllClientIDsL( const TDesC& aIdTable, const TDesC& aIdColumn, TUid aClientUid, RArray<TUint32>& aIDs );
-
-        /**
-        * Returns all Ids in the specified table.
-        * @since 2.0
-        * @param	aTableName		descriptor containing table name
-		* @param	aIdColumn		descriptor containing ID column name
-		* @param	aIDs			reference where Ids are stored
-        */
-		void GetAllIDsL( const TDesC& aIdTable, const TDesC& aIdColumn, RArray<TUint32>& aIDs );
-
-        /**
-        * Checks if the specified key exists in the specified table.
-        * @since 2.0
-        * @param	aTableName		descriptor containing tabel name
-		* @param	aIndex			descriptor containing table index name
-		* @param	aKey			key to search in the table
-        * @return	ETrue if found.
-        */
-		TBool IsValidL( const TDesC& aTableName, const TDesC& aIndex, TUint aKey );
-
-        /**
-        * Sets the specified ID as unused in the specified table.
-        * @since 2.0
-        * @param	aTableName		descriptor containing tabel name
-		* @param	aIdColumn		descriptor containing ID column name
-		* @param	aId				ID to be marked as unused
-        */
-		void ReleaseIdL( const TDesC& aTableName, const TDesC& aIdColumn, TUint32 aId );
-
-        /**
-        * Updates the counter value after finding the aKey in the specified table.
-        * @since 2.0
-        * @param	aTableName		descriptor containing tabel name
-		* @param	aIndex			descriptor containing table index name
-		* @param	aKey			key to search in the table
-		* @param	aIncrement		Increment if ETrue, decrement otherwise.
-        */
-		void UpdateCounterL( const TDesC& aTableName, const TDesC& aIndex, TUint aKey,
-					TBool aIncrement );
-
-        /**
-        * Checks for data ownership.  Leaves with KErrAsrDataRightViolation if not
-		* owned by this client.
-        * @since 2.0
-		* @param	aClientUid		client's Uid for data ownership
-        * @param	aTableName		descriptor containing tabel name
-		* @param	aIndex			descriptor containing table index name
-		* @param	aKey			key to search in the table
-        */
-		void VerifyOwnershipL( TUid aClientUid, const TDesC& aTableName, const TDesC& aIndex,
-					TUint aKey );
-
-    public:    // Data
-
-		// Database
-        RDbNamedDatabase& iDb;
-
-        // DB session
-        RDbs& iDbSession;
-
-        // drive
-        TInt iDrive;
-        
-    private:  // New functions
-    
-        /**
-        * Creates a new ID in the specified table.
-        * @since 2.0
-        * @param	aTableName		descriptor containing table name
-		* @param	aIdColumn		descriptor containing ID column name
-		* @param	aClientUid		client Uid for data ownership
-        * @return	A new ID
-        */
-		TUint32 DoCreateNewIDL( const TDesC& aTableName, const TDesC& aIdColumn, TUid aClientUid );
-		
-		/**
-        * Sets the specified ID as unused in the specified table.
-        * @since 2.0
-        * @param	aTableName		descriptor containing tabel name
-		* @param	aIdColumn		descriptor containing ID column name
-		* @param	aId				ID to be marked as unused
-        */
-		void DoReleaseIdL( const TDesC& aTableName, const TDesC& aIdColumn, TUint32 aId );
-		
-    private:  // Data
-    
-        // Mutex for DB write lock
-        // Makes sure that only one process gets the DB lock
-        RMutex iMutex;
-    };
-
-#endif // SICOMMONDB_H
-
-// End of File