homescreenpluginsrv/inc/hspsdefinitionengineinterface.h
changeset 0 79c6a41cd166
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/homescreenpluginsrv/inc/hspsdefinitionengineinterface.h	Thu Dec 17 08:54:17 2009 +0200
@@ -0,0 +1,97 @@
+/*
+* Copyright (c) 2005,2006 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:  DefinitionEngine class interface 
+*
+*/
+
+
+#ifndef C_hspsDEFINITIONENGINEINTERFACE_H
+#define C_hspsDEFINITIONENGINEINTERFACE_H
+
+#include <e32base.h>
+
+// CLASS FORWARD
+class RFs;
+class ChspsODT;
+
+
+// CLASS DECLARATION
+/**
+ *  Definition Enginen plugin interface class.
+ *
+ * @lib hspsdefinitionengineinterface.lib
+ * @since S60 5.0
+ * @ingroup group_hspsdefinitionengine
+ */
+class ChspsDefinitionEngineInterface : public CBase
+    {
+    public:
+        struct TError
+            {
+            TInt iDefEngError;
+            TInt iSubComponentError;
+            };
+
+    public:
+	
+        /**
+        * Two-phased constructor.
+        * 
+        * @since S60 5.0
+        * @param aPluginId  Name of implementation.
+        */
+     	IMPORT_C static ChspsDefinitionEngineInterface* NewL(const TDesC8& aPluginId );
+        
+        /**
+        * Destructor
+        */
+        IMPORT_C virtual ~ChspsDefinitionEngineInterface();
+
+
+    public: // New functions
+        /**
+        * Parses the given XML file. Inserts all nodes to DOM tree,
+        * parses the CSS file and assignes all properties to the nodes
+        * @since Series 60 3.1
+        * @param aFsSession: file server session
+        * @param aXMLFileName: XML file to parse
+        * @param ahspsOdt: ODT structure, which contains the DomDocument
+        * @return: Error code 
+        */
+        virtual TError CreateDOM( 
+            RFs& aFsSession,
+            const TDesC& aXMLFileName,
+            ChspsODT& ahspsOdt )=0;
+
+       /**
+        * Parses the given DTD file. Replaces all entity referencies 
+        * in the skeleton DOM tree. Returns Localized DOM if it was successfull 
+        * @since Series 60 3.1
+        * @param aFsSession: file server session
+        * @param aDTDFileName: Input DTD file for a certain language
+        * @param ahspsOdt: Input/Output ODT structure, which contains the DomDocument.
+        */
+       virtual void ApplyLanguageL(
+            RFs& aFsSession,
+            const TDesC& aDTDFileName,
+            ChspsODT& ahspsOdt )=0;
+
+	private:
+		TUid iDtorKey;
+    
+    };
+
+#endif      
+            
+// End of File