lowlevellibsandfws/pluginfw/Framework/frame/RegistryData.h
changeset 22 ddc455616bd6
parent 0 e4d67989cc36
child 45 4b03adbd26ca
equal deleted inserted replaced
18:47c74d1534e1 22:ddc455616bd6
   250 							  TInt				aImplPosInContainerArray,
   250 							  TInt				aImplPosInContainerArray,
   251 							  CImplementationData* aNewImpl,
   251 							  CImplementationData* aNewImpl,
   252 							  TBool aLegitimateImpl);
   252 							  TBool aLegitimateImpl);
   253 	static void ResetTInterfaceIndex(TAny* aObject);
   253 	static void ResetTInterfaceIndex(TAny* aObject);
   254 
   254 
   255 	/** Remove the pointer from iImplIndex */
   255 	/** Remove the pointer from iImplIndex based on the impl address*/
   256 	TBool RemoveImplFromImplIndex(CImplementationData* aPtr) const;
   256     TBool RemoveImplByAddrFromImplIndex(CImplementationData* aPtr) const;
       
   257 
       
   258     /** Used to restore the impIndex sanity in case of a leave */
       
   259 	static void RemoveImplFromImplIndexCleanUp(TAny* aPtr);
       
   260 	
   257 	/** Insert aNewImpl into iImplIndex. */
   261 	/** Insert aNewImpl into iImplIndex. */
   258 	TInt InsertImplIntoImplIndex(CImplementationData* aNewImpl) const;
   262 	TInt InsertImplIntoImplIndex(CImplementationData* aNewImpl) const;
   259 	/** Store change in drive state - addition or removal*/
   263 	/** Store change in drive state - addition or removal*/
   260 	void DriveChanged(const TDriveUnit& aDrive, TBool aDriveRemoved);
   264 	void DriveChanged(const TDriveUnit& aDrive, TBool aDriveRemoved);
   261 
   265 
   488 void CRegistryData::TImplContainer::Reset()
   492 void CRegistryData::TImplContainer::Reset()
   489  	{
   493  	{
   490  	iUnusedImpls.Reset();
   494  	iUnusedImpls.Reset();
   491    	}
   495    	}
   492 
   496 
       
   497     
       
   498     class TCleanupImplIndexEntry
       
   499         {
       
   500         public:
       
   501         TCleanupImplIndexEntry(CRegistryData* aRegData, CRegistryData::CImplementationData* aImpl)
       
   502         : iRegistryData(aRegData), iImplEntry(aImpl)   
       
   503         {}
       
   504         CRegistryData*         iRegistryData;
       
   505         CRegistryData::CImplementationData*   iImplEntry;
       
   506         };
   493 #endif //__REGISTRYDATA_H__
   507 #endif //__REGISTRYDATA_H__