lowlevellibsandfws/pluginfw/Framework/inc/ecompanics.h
changeset 0 e4d67989cc36
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lowlevellibsandfws/pluginfw/Framework/inc/ecompanics.h	Tue Feb 02 02:01:42 2010 +0200
@@ -0,0 +1,110 @@
+// Copyright (c) 2008-2009 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:
+//
+
+#ifndef ECOMPANICS_H
+#define ECOMPANICS_H
+
+/**
+The following enumaration defines the ECOM panic codes used in the ecom.dll and 
+ecomserver.exe binaries. They are provided for debug purposes only to help 
+diagnose problems.
+Server panics have the category - "ECOMServer" and client DLL panics have the
+category - "ECOMClientDLL". ECOM will log a message to RDebug::Print prior to 
+panics to give further information.
+@internalComponent
+*/
+enum TEComPanic
+{
+    EEComPanicUndefined = 0,
+    
+    //------------------------------------------------------------------------
+    
+    EEComPanicClientDllBase = -16900,
+    
+    /** ECOM API used before when there is no open session to ECOM Server.
+    Raised on: UREL & UDEB builds */
+    EEComPanic_LibraryNotInitialised                                = -16900,
+    
+    /** Plug-in implementation claims to support an extended object that
+    requires allocation/deallocation but supplies no release function.
+    Raised on: UDEB builds */
+    EEComPanic_CInstanceInfoExtended_CreateExtObjectL_NoReleaseFunc = -16901,
+    
+    /** Plug-in implementation claims to support an extended object that
+    requires allocation/deallocation but failed to supply a release object.
+    Raised on: UDEB builds */
+    EEComPanic_CInstanceInfoExtended_CreateExtObjectL_NoReleaseObj  = -16902,
+    
+    /** Plug-in implementation claims to support an extended object that
+    requires allocation/deallocation but failed to supply a release object.
+    Raised on: UDEB builds */
+    EEComPanic_CInstanceInfoExtended_DestroyExtObject_NoReleaseObj  = -16903,
+
+    /** Client supplied an implementation instance key which is not known to
+    the ECOM API i.e. it was not returned from a previous call.
+    Raised on: UDEB builds */
+    EEComPanic_InvalidImplementationInstanceKey                     = -16904,
+    
+    EEComPanicClientDllEnd = -16949,  
+      
+    //------------------------------------------------------------------------
+
+    EEComPanicServerBase = -16950,
+
+    /** Fatal leave occurred in the CServerStartupMgr class during startup
+    Raised on: UREL & UDEB builds */
+    EEComPanic_CServerStartupMgr_RunError                           = -16950,
+    
+    /** Fatal leave occurred in the CServerStartupMgr class during 
+    plug-in (re)scanning and registration. e.g. Out of memory  
+    Raised on: UREL & UDEB builds */
+    EEComPanic_CDiscoverer_CIdleScanningTimer_RunError              = -16951,
+     
+    /** Fatal leave occurred in the CIdleScanningTimer class during 
+    plug-in (re)scanning and registration. e.g. Out of memory  
+    Raised on: UREL & UDEB builds */
+    EEComPanic_CDiscoverer_CDirChangeNotifier_RunError              = -16952,
+    
+    /** Input stream used to construct CImplementationInformation has 
+    duplicate extended interfaces UIDs.    
+    Raised on: UDEB builds */
+    EEComPanic_CImlpementationInfromation_DuplicateExIf             = -16953,
+    
+    /** Plug-in resource file contains duplciate extended interface UIDs.
+    Raised on: UDEB builds */
+    EEComPanic_CParseImplementationDataFormatVersion3_DuplicateExIf = -16954,
+    
+    /** Server invariant test. CDllData object previously found in the registry
+    was found to be missing during an update operation following a re-scan.
+    Raised on: UDEB builds */
+    EEComPanic_CRegistryData_UpdateDllDataL_DllRegistrationMissing  = -16955,
+    
+    EEComPanicServerEnd  = -16999    
+    
+    //------------------------------------------------------------------------
+};
+
+// ____________________________________________________________________________
+// FUNCTIONS
+
+/** 
+Function for clean up RExtendedInterfaceArray when leave occurs
+@internalComponent
+*/
+extern void CloseAndDeleteArray(TAny* aPtr);
+
+
+
+#endif // ECOMPANICS_H