00001 // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies). 00002 // All rights reserved. 00003 // This component and the accompanying materials are made available 00004 // under the terms of "Eclipse Public License v1.0" 00005 // which accompanies this distribution, and is available 00006 // at the URL "http://www.eclipse.org/legal/epl-v10.html". 00007 // 00008 // Initial Contributors: 00009 // Nokia Corporation - initial contribution. 00010 // 00011 // Contributors: 00012 // 00013 // Description: 00014 // 00015 00016 #ifndef __EXAMPLERESOLVER_H__ 00017 #define __EXAMPLERESOLVER_H__ 00018 00019 #include <resolver.h> 00020 #include <publicregistry.h> 00021 00022 class TEComResolverParams; 00023 00024 // Example resolver's UID 00025 const TUid KExResolverUid = {0x10009DD0}; 00026 00033 class CExampleResolver : public CResolver 00034 { 00035 public: 00036 // Factory function: 00037 static CExampleResolver* NewL(MPublicRegistry & aRegistry); 00038 ~CExampleResolver(); 00039 00046 TUid IdentifyImplementationL(TUid aInterfaceUid, 00047 const TEComResolverParams& aAdditionalParameters) const; 00048 00056 RImplInfoArray* ListAllL(TUid aInterfaceUid, 00057 const TEComResolverParams& aAdditionalParameters) const; 00058 00059 private: 00060 // Ctor 00061 explicit CExampleResolver(MPublicRegistry& aRegistry); 00062 00070 TUid Resolve(const RImplInfoArray& aImplementationsInfo, 00071 const TEComResolverParams& aAdditionalParameters) const; 00072 00089 TBool Match(const TDesC8& aImplementationType, 00090 const TDesC8& aMatchType, 00091 TBool aUseWildcards) const; 00092 00093 private: 00094 mutable RImplInfoArray* iImplementationInfoArray; 00095 }; 00096 00097 #endif // __EXAMPLERESOLVER_H__ 00098
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.