williamr@2: /*
williamr@4: * Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
williamr@2: * All rights reserved.
williamr@2: * This component and the accompanying materials are made available
williamr@4: * under the terms of "Eclipse Public License v1.0"
williamr@2: * which accompanies this distribution, and is available
williamr@4: * at the URL "http://www.eclipse.org/legal/epl-v10.html".
williamr@2: *
williamr@2: * Initial Contributors:
williamr@2: * Nokia Corporation - initial contribution.
williamr@2: *
williamr@2: * Contributors:
williamr@2: *
williamr@4: * Description:
williamr@2: *
williamr@2: */
williamr@2: 
williamr@4: /** @file
williamr@4: @publishedAll
williamr@4: @released
williamr@4: */
williamr@4: #ifndef XMLENGDOMIMPLEMENTATION_H
williamr@4: #define XMLENGDOMIMPLEMENTATION_H
williamr@2: 
williamr@2: #include <e32base.h>
williamr@2: 
williamr@2: /**
williamr@4: The RXmlEngDOMImplementation interface provides a number of methods for performing 
williamr@4: operations that are independent of any particular instance of the document object model. 
williamr@4:    
williamr@4: http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core.html#ID-102161490
williamr@4: */
williamr@2: class RXmlEngDOMImplementation
williamr@2: {
williamr@2:   public:
williamr@2:     
williamr@2:     
williamr@2: 	/**
williamr@4: 	Open method needed to initialize the DOM library and should be called
williamr@4: 	before using any class/function from this library.  The initialization is
williamr@4: 	required in every client thread in which it used. Calling this method
williamr@4: 	multiple times in a thread is allowed. There should be a call to Close()
williamr@4: 	for every call to Open, per thread.
williamr@4: 
williamr@4: 	@param aHeap This argument not used at present and is ignored in the
williamr@4: 	implementation.
williamr@4: 	@leave - One of the system-wide error codes
williamr@4:     */
williamr@2:     IMPORT_C void OpenL( RHeap* aHeap = NULL );
williamr@2: 
williamr@4: 	/**
williamr@4: 	Close method. It cleans up resources used by the DOM library. Clients
williamr@4: 	should call this method at the end of library usage. The library should not
williamr@4: 	be used after this call. If needed, clients can initialize the library
williamr@4: 	again by calling the Open() method. 
williamr@4: 	
williamr@4:     @param aReserved This parameter is not used
williamr@4:     */
williamr@4:     IMPORT_C void Close(TBool aReserved);
williamr@4: 
williamr@4: 	/**
williamr@4: 	Close method. It cleans up resources used by the DOM library. Clients
williamr@4: 	should call this method at the end of library usage. The library should not
williamr@4: 	be used after this call. If needed, clients can initialize the library
williamr@4: 	again by calling the Open() method. 
williamr@4: 	*/	
williamr@4:     IMPORT_C void Close();
williamr@2: };
williamr@2: 
williamr@4: #endif /* XMLENGDOMIMPLEMENTATION_H */
williamr@4: