本文整理汇总了C++中CImplementationInformation::DisplayName方法的典型用法代码示例。如果您正苦于以下问题:C++ CImplementationInformation::DisplayName方法的具体用法?C++ CImplementationInformation::DisplayName怎么用?C++ CImplementationInformation::DisplayName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CImplementationInformation
的用法示例。
在下文中一共展示了CImplementationInformation::DisplayName方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CheckForPhbkSyncPluginL
void CheckForPhbkSyncPluginL()
{
test.Next(_L("Check for PhbkSync test plug-in"));
RImplInfoPtrArray implInfoArray;
CleanupResetAndDestroyPushL(implInfoArray);
REComSession::ListImplementationsL(KUidEcomCntPhBkSyncInterface, implInfoArray);
//Find implementations of KUidEcomCntPhBkSyncInterface
TInt availCount = implInfoArray.Count();
TInt count;
for(count = 0; count < availCount; count++)
{
const TUid firstImplementationFound = implInfoArray[count]->ImplementationUid();
CImplementationInformation *info = implInfoArray[count];
test.Printf(_L("\n"));
test.Printf(_L("PhbkSync plugin #%i, Implementation UID 0x%08X version %i\n"),
count + 1, info->ImplementationUid(), info->Version());
test.Printf(_L("Plugin name = \"%S\"\n"), &(info->DisplayName()));
}
// is telephony's plug-in in the list?
for(count = 0; count < availCount; count++)
{
const TUid firstImplementationFound = implInfoArray[count]->ImplementationUid();
CImplementationInformation *info = implInfoArray[count];
if(info->DisplayName() == KTestPluginName)
{
test.Printf(_L("\n"));
test.Printf(_L("This test has now loaded the test plugin"));
test.Printf(_L("\n"));
availCount = 1;
break;
}
if(info->DisplayName() == KPluginName)
{
test.Printf(_L("\n"));
test.Printf(_L("This test only works with Contacts the test plugin and not the original phonebooksync plugin."));
test.Printf(_L("Depending on the build to removed the plugin in different ways:"));
test.Printf(_L("hardware - delete the line \"ECOM_PLUGIN(phbksyncplugin.dll,1020428c.rsc)\" from phbksync.iby"));
test.Printf(_L("winscw - delete phbksyncplugin.dll from %epocroot%/epoc32/release/winscw/udeb or similarly named directory"));
test.Printf(_L("\n"));
test(0); // stop
break;
}
}
// only continue test if there is exactly one plug-in present
test(availCount == 1);
CleanupStack::PopAndDestroy(&implInfoArray);
}
示例2: InitializeComponentLoader
OMX_ERRORTYPE CSymbianOmxComponentLoader::InitializeComponentLoader()
{
RImplInfoPtrArray ecomArray;
TRAPD(error,REComSession::ListImplementationsL(TUid::Uid(KUidOmxILSymbianComponentIf),ecomArray));
if( error != KErrNone )
{
ecomArray.ResetAndDestroy();
return OMX_ErrorInsufficientResources;
}
TInt index;
CImplementationInformation* info;
TOmxComponentInfo component;
iComponentNameList.Reset();
const TInt KEcomArrayCount = ecomArray.Count();
for( index=0; index<KEcomArrayCount && error == KErrNone; ++index )
{
info = ecomArray[index];
component.iUid = info->ImplementationUid();
if( info->DisplayName().Length() >= OMX_MAX_STRINGNAME_SIZE ||
info->DataType().Length() >= OMX_MAX_ROLESBUFFER_SIZE )
{
error = KErrBadName;
break;
}
component.iComponentName.Copy(info->DisplayName());
component.iRoles.Copy(info->DataType());
error = iComponentNameList.Append(component);
if(error)
{
break;
}
}
ecomArray.ResetAndDestroy();
if( error != KErrNone )
{
if( error == KErrNoMemory )
{
return OMX_ErrorInsufficientResources;
}
return OMX_ErrorUndefined;
}
return OMX_ErrorNone;
}
示例3: ConstructL
void CMMFControllerImplementationInformation::ConstructL(const CImplementationInformation& aImplInfo)
{
iUriSchemes = new(ELeave) CDesC8ArrayFlat(KDesCArrayGranularity);
iUid = aImplInfo.ImplementationUid();
iDisplayName = aImplInfo.DisplayName().AllocL();
iVersion = aImplInfo.Version();
// Parse the opaque data...
TaggedDataParser::ParseTaggedDataL(aImplInfo.OpaqueData(), *this);
}
示例4: PrepareFileName
// ---------------------------------------------------------------------------
// Prepares filename from the displayname of the implementation.
// ---------------------------------------------------------------------------
//
void COMASuplPosTesterModuleCfg::PrepareFileName(TFileName& aOutputFileName,
const CImplementationInformation& aImplInfo)
{
TInt count = 0;
TInt displayNameLength = aImplInfo.DisplayName().Length();
for(count = 0; count < displayNameLength
&& count < KMaxFileName - 12; count++)
{
if(IsValidFileNameChar(aImplInfo.DisplayName().Ptr() + count))
{
aOutputFileName.Append(aImplInfo.DisplayName().Ptr() + count, 1);
}
}
aOutputFileName.Append(_L("_"));
aOutputFileName.Append(aImplInfo.ImplementationUid().Name().Ptr() + 1
, aImplInfo.ImplementationUid().Name().Length() - 2);
//Append file extension
aOutputFileName.Append(_L(".txt"));
}
示例5: LoadBootPluginsL
// -----------------------------------------------------------------------------
// Load EBootstrapCallProvider marked or enabled plugins
// -----------------------------------------------------------------------------
//
void CCCEPluginManager::LoadBootPluginsL()
{
//List implementations
#ifdef _DEBUG
RImplInfoPtrArray implementations;
CConvergedCallProvider::ListImplementationsL(implementations);
CCELOGSTRING2("CCCEPluginManager::GetPluginL: %d Implementation(s) found",
implementations.Count() );
for( TInt i=0; i<implementations.Count(); i++ )
{
CImplementationInformation *info = implementations[i];
CCELOGSTRING3("CCCEPluginManager::GetPluginL: Uid = %d, Name = %S",
info->ImplementationUid().iUid, &info->DisplayName() );
CCELOGSTRING3("CCCEPluginManager::GetPluginL: ->RomBased = %d, RomOnly = %d",
info->RomBased(), info->RomOnly() );
}
implementations.ResetAndDestroy();
implementations.Close();
#endif // _DEBUG
RIdArray serviceIDArray;
CleanupClosePushL( serviceIDArray );
iSPSettings->GetServicesL( serviceIDArray );
const TInt serviceCount = serviceIDArray.Count();
iPrimaryEmergencyCallPlugin = NULL;
TInt err = KErrNone;
CCELOGSTRING2("CCCEPluginManager::LoadBootPluginsL: Service count: %d", serviceCount );
for( TInt service = 0; service < serviceCount; service++ )
{
CCELOGSTRING2("CCCEPluginManager::LoadBootPluginsL: Processing service: %d", service );
CCELOGSTRING2("CCCEPluginManager::LoadBootPluginsL: ServiceID: %d", serviceIDArray[service] );
TRAP( err, LoadBootPluginL( serviceIDArray[service] ) )
CCELOGSTRING2("CCCEPluginManager::LoadBootPluginsL: Result %i", err );
}
CleanupStack::PopAndDestroy();
}
示例6: NewL
/**
CContactSynchroniser object factory method.
This class is copied from the Persistence Layer. It should be refactored into
a shared library if possible.
@return CContactSynchroniser object.
*/
CContactSynchroniser* CContactSynchroniser::NewL()
{
RImplInfoPtrArray implInfoArray;
CleanupResetAndDestroyPushL(implInfoArray);
REComSession::ListImplementationsL(KUidEcomCntPhBkSyncInterface, implInfoArray);
const TInt count = implInfoArray.Count();
__ASSERT_ALWAYS(count > 0, User::Leave(KErrNotSupported));
TInt pluginToBeUsed = 0;
CImplementationInformation *info;
// Scan the list of plugins for the test plugin.
for (TInt plugIn = 0 ; plugIn < count ; ++plugIn)
{
info = implInfoArray[plugIn];
if(info->DisplayName() == KTestPluginName)
{
// We have found the test plugin so use it rather than any other
// plugin.
pluginToBeUsed = plugIn;
break;
}
}
// Create the implementation found for KUidEcomCntPhBkSyncInterface.
const TUid theImplementationID = implInfoArray[pluginToBeUsed]->ImplementationUid();
TAny* ptr(NULL);
ptr = REComSession::CreateImplementationL(theImplementationID, _FOFF(CContactSynchroniser,iDtor_ID_Key));
#ifdef __VERBOSE_DEBUG__
RDebug::Print(_L("[CNTMODEL] CContactSynchroniser::NewL(): Create sync plugin: %S\n"), &info->DisplayName());
#endif
CleanupStack::PopAndDestroy(&implInfoArray);
return reinterpret_cast<CContactSynchroniser*>(ptr);
}