本文整理汇总了C++中TSharedRef::GetEntryIterator方法的典型用法代码示例。如果您正苦于以下问题:C++ TSharedRef::GetEntryIterator方法的具体用法?C++ TSharedRef::GetEntryIterator怎么用?C++ TSharedRef::GetEntryIterator使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TSharedRef
的用法示例。
在下文中一共展示了TSharedRef::GetEntryIterator方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: AppendArchiveData
void UGenerateGatherArchiveCommandlet::AppendArchiveData( TSharedRef< const FInternationalizationArchive > InArchiveToAppend, TSharedRef< FInternationalizationArchive > ArchiveCombined )
{
for(TArchiveEntryContainer::TConstIterator It( InArchiveToAppend->GetEntryIterator() ); It; ++It)
{
const TSharedRef<FArchiveEntry> EntryToAppend = It.Value();
ArchiveCombined->AddEntry( EntryToAppend );
}
}
示例2: GenerateStructuredData
void FJsonInternationalizationArchiveSerializer::GenerateStructuredData( TSharedRef< const FInternationalizationArchive > InInternationalizationArchive, TSharedPtr<FStructuredArchiveEntry> RootElement )
{
//Loop through all the unstructured archive entries and build up our structured hierarchy
for(TArchiveEntryContainer::TConstIterator It( InInternationalizationArchive->GetEntryIterator() ); It; ++It)
{
const TSharedRef< FArchiveEntry > UnstructuredArchiveEntry = It.Value();
TArray< FString > NamespaceTokens;
// Tokenize the namespace by using '.' as a delimiter
int32 NamespaceTokenCount = UnstructuredArchiveEntry->Namespace.ParseIntoArray( NamespaceTokens, *NAMESPACE_DELIMITER, true );
TSharedPtr< FStructuredArchiveEntry > StructuredArchiveEntry = RootElement;
//Loop through all the namespace tokens and find the appropriate structured entry, if it does not exist add it. At the end StructuredArchiveEntry
// will point to the correct hierarchy entry for a given namespace
for( int32 TokenIndex = 0; TokenIndex < NamespaceTokenCount; ++TokenIndex )
{
TSharedPtr<FStructuredArchiveEntry> FoundNamespaceEntry;
for( int SubNamespaceIndex = 0; SubNamespaceIndex < StructuredArchiveEntry->SubNamespaces.Num(); SubNamespaceIndex++ )
{
if( StructuredArchiveEntry->SubNamespaces[SubNamespaceIndex]->Namespace == NamespaceTokens[TokenIndex] )
{
FoundNamespaceEntry = StructuredArchiveEntry->SubNamespaces[SubNamespaceIndex];
break;
}
}
if( !FoundNamespaceEntry.IsValid() )
{
int32 index = StructuredArchiveEntry->SubNamespaces.Add( MakeShareable( new FStructuredArchiveEntry( NamespaceTokens[TokenIndex] ) ) );
FoundNamespaceEntry = StructuredArchiveEntry->SubNamespaces[index];
}
StructuredArchiveEntry = FoundNamespaceEntry;
}
// We add the unstructured Archive entry to the hierarchy
StructuredArchiveEntry->ArchiveEntries.AddUnique( UnstructuredArchiveEntry );
}
}