1 // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
14 // Implements some of the ECOM Core Dump Writer interface.
15 // The rest is implemented by the inheritors.
27 // Set default to be first implementation found by resolver
28 _LIT8(KDefaultImpl, "*");
30 inline CCrashDataSave::~CCrashDataSave()
32 // Destroy any instance variables and then
33 // inform the framework that this specific
34 // instance of the interface has been destroyed.
35 REComSession::DestroyedImplementation(iDtor_ID_Key);
38 inline CCrashDataSave* CCrashDataSave::NewL()
40 // Set up the interface find for the default resolver.
41 TEComResolverParams resolverParams;
42 resolverParams.SetDataType(KDefaultImpl());
43 resolverParams.SetGenericMatch(ETrue); // Allow wildcard matching
45 // Set up some empty initialisation parameters
46 TExampleInterfaceInitParams initParams;
47 initParams.integer = 0;
48 initParams.descriptor = NULL;
50 return reinterpret_cast<CCrashDataSave*>(
51 REComSession::CreateImplementationL(KCCrashDataSaveUid,
52 _FOFF(CCrashDataSave, iDtor_ID_Key),
57 inline CCrashDataSave* CCrashDataSave::NewL(const TDesC8& aCue)
59 TEComResolverParams resolverParams;
60 resolverParams.SetDataType(aCue);
61 resolverParams.SetGenericMatch(ETrue);
62 TAny* fileWriter = REComSession::CreateImplementationL(KCCrashDataSaveUid, _FOFF(CCrashDataSave, iDtor_ID_Key),
64 return reinterpret_cast<CCrashDataSave*>(fileWriter);
67 inline CCrashDataSave* CCrashDataSave::NewL(const TUid& aUid)
69 TAny* fileWriter = REComSession::CreateImplementationL(aUid, _FOFF(CCrashDataSave, iDtor_ID_Key));
70 return reinterpret_cast<CCrashDataSave*>(fileWriter);
73 inline void CCrashDataSave::ListAllImplementationsL(RImplInfoPtrArray& aImplInfoArray)
75 REComSession::ListImplementationsL(KCCrashDataSaveUid, aImplInfoArray);