本文整理汇总了C++中Asset::GetName方法的典型用法代码示例。如果您正苦于以下问题:C++ Asset::GetName方法的具体用法?C++ Asset::GetName怎么用?C++ Asset::GetName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Asset
的用法示例。
在下文中一共展示了Asset::GetName方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ReleaseAsset
void AssetManager::ReleaseAsset( AssetHandle* handle)
{
AssetIter iter = mAssetContainer.find(handle->GetId());
Asset* pAsset = iter->second;
if(pAsset->GetUseCounter())
{
pAsset->SubtractUseConter();
if (pAsset->GetUseCounter() == 0 && pAsset->IsAutoUnloading())
{
IdIter idIterator = mAssetNameReferece.find(pAsset->GetName());
mAssetNameReferece.erase(idIterator);
mAssetContainer.erase(iter);
delete(pAsset);
numOfAssets--;
}
handle->SetAssetPtr(0);
}
}
示例2: FindChildOf
/// Search for a direct child of the specified object with the given name.
///
/// @param[in] pObject Asset for which to locate a child, or null to search through top-level objects.
/// @param[in] name Asset name.
/// @param[in] instanceIndex Asset instance index.
///
/// @return Pointer to the child object if found, null if not found.
Asset* Asset::FindChildOf( const Asset* pObject, Name name, uint32_t instanceIndex )
{
HELIUM_ASSERT( !name.IsEmpty() );
if( name.IsEmpty() )
{
return NULL;
}
ScopeReadLock scopeLock( sm_objectListLock );
for( Asset* pChild = ( pObject ? pObject->m_wpFirstChild : sm_wpFirstTopLevelObject );
pChild != NULL;
pChild = pChild->m_wpNextSibling )
{
if( pChild->GetName() == name && pChild->GetInstanceIndex() == instanceIndex )
{
return pChild;
}
}
return NULL;
}
示例3: GetValue
void ProjectViewModel::GetValue( wxVariant& variant, const wxDataViewItem& item, unsigned int column ) const
{
if ( !item.IsOk() || ( column >= m_ColumnLookupTable.size() ) )
{
return;
}
Asset *node = static_cast< Asset* >( item.GetID() );
if ( !node )
{
return;
}
switch( m_ColumnLookupTable.at( column ) )
{
default:
break;
case ProjectModelColumns::Name:
{
uint32_t docStatus = DocumentStatus::Default; // node->GetDocumentStatus();
String assetString( *node->GetName() );
wxString name = *assetString;
if ( HasFlags<uint32_t>( docStatus, DocumentStatus::Changed ) )
{
name = wxString( TXT( '*' ) ) + name;
}
wxBitmap bitmap = wxArtProvider::GetBitmap( GetArtIDFromPath( node->GetPath() ), wxART_OTHER, wxSize(16, 16) );
if ( docStatus > 0 )
{
wxImage image = bitmap.ConvertToImage();
HELIUM_ASSERT( image.Ok() );
int overlayWidth = image.GetWidth() / 2;
int overlayHeight = image.GetHeight() / 2;
wxImage overlayImage;
if ( HasFlags<uint32_t>( docStatus, DocumentStatus::Saving ) )
{
overlayImage = wxArtProvider::GetBitmap( ArtIDs::Status::Busy, wxART_OTHER, wxSize( overlayWidth, overlayHeight ) ).ConvertToImage();
HELIUM_ASSERT( overlayImage.Ok() );
}
else if ( HasFlags<uint32_t>( docStatus, DocumentStatus::Loading ) )
{
overlayImage = wxArtProvider::GetBitmap( ArtIDs::Status::Busy, wxART_OTHER, wxSize( overlayWidth, overlayHeight ) ).ConvertToImage();
HELIUM_ASSERT( overlayImage.Ok() );
}
else if ( HasFlags<uint32_t>( docStatus, DocumentStatus::Changed ) )
{
overlayImage = wxArtProvider::GetBitmap( ArtIDs::Actions::Edit, wxART_OTHER, wxSize( overlayWidth, overlayHeight ) ).ConvertToImage();
HELIUM_ASSERT( overlayImage.Ok() );
}
if ( overlayImage.Ok() )
{
if ( overlayImage.GetWidth() != overlayWidth || overlayImage.GetHeight() != overlayHeight )
{
overlayImage.Rescale( overlayWidth, overlayHeight );
}
int x = 0;
int y = 0;
IconArtFile::CalculatePlacement( image, overlayImage, OverlayQuadrants::BottomRight, x, y );
image.Paste( overlayImage, x, y );
}
bitmap = wxBitmap( image );
}
wxIcon icon;
icon.CopyFromBitmap( bitmap );
variant << wxDataViewIconText( name, icon );
}
break;
//case ProjectModelColumns::Icon:
// {
// int32_t imageID = GlobalFileIconsTable().GetIconIDFromPath( node->GetPath() );
// wxVariant bitmapVariant;
// bitmapVariant.
// variant = GlobalFileIconsTable().GetSmallImageList()->GetBitmap( imageID );
// }
// break;
case ProjectModelColumns::Details:
{
variant = std::string( TXT( "" ) );
}
break;
case ProjectModelColumns::FileSize:
{
variant = std::string( TXT( "" ) );
//.........这里部分代码省略.........
示例4: if
void SceneView3D::HandleDragEnterWidget(StringHash eventType, VariantMap& eventData)
{
using namespace DragEnterWidget;
UIWidget* widget = static_cast<UIWidget*>(eventData[P_WIDGET].GetPtr());
if (widget != this)
return;
UIDragObject* dragObject = static_cast<UIDragObject*>(eventData[P_DRAGOBJECT].GetPtr());
Object* object = dragObject->GetObject();
if (!object)
return;
if (object->GetType() == Asset::GetTypeStatic())
{
Asset* asset = (Asset*) object;
AssetImporter* importer = asset->GetImporter();
if (!importer)
return;
StringHash importerType = importer->GetType();
if (importerType == PrefabImporter::GetTypeStatic())
{
dragNode_ = scene_->CreateChild(asset->GetName());
PrefabComponent* pc = dragNode_->CreateComponent<PrefabComponent>();
pc->SetPrefabGUID(asset->GetGUID());
}
else if (importerType == ModelImporter::GetTypeNameStatic())
{
dragNode_ = scene_->CreateChild();
SharedPtr<File> file(new File(context_, asset->GetCachePath()));
SharedPtr<XMLFile> xml(new XMLFile(context_));
if (!xml->Load(*file))
return;
dragNode_->LoadXML(xml->GetRoot());
dragNode_->SetName(asset->GetName());
}
else if (importerType == SpriterImporter::GetTypeNameStatic())
{
AnimationSet2D* animationSet = GetSubsystem<ResourceCache>()->GetResource<AnimationSet2D>(asset->GetPath());
String animationName;
if (animationSet && animationSet->GetNumAnimations())
{
animationName = animationSet->GetAnimation(0)->GetName();
}
dragNode_ = scene_->CreateChild(asset->GetName());
AnimatedSprite2D* sprite = dragNode_->CreateComponent<AnimatedSprite2D>();
if (!animationName.Length())
sprite->SetAnimationSet(animationSet);
else
sprite->SetAnimation(animationSet, animationName);
}
else if (importerType == TextureImporter::GetTypeNameStatic())
{
dragNode_ = scene_->CreateChild(asset->GetName());
Sprite2D* spriteGraphic = GetSubsystem<ResourceCache>()->GetResource<Sprite2D>(asset->GetPath());
StaticSprite2D* sprite = dragNode_->CreateComponent<StaticSprite2D>();
sprite->SetSprite(spriteGraphic);
}
if (dragNode_.NotNull())
{
Input* input = GetSubsystem<Input>();
IntVector2 pos = input->GetMousePosition();
UpdateDragNode(pos.x_, pos.y_);
}
//LOGINFOF("Dropped %s : %s on SceneView3D", asset->GetPath().CString(), asset->GetGUID().CString());
}
}