本文整理汇总了C++中Attachment::getId方法的典型用法代码示例。如果您正苦于以下问题:C++ Attachment::getId方法的具体用法?C++ Attachment::getId怎么用?C++ Attachment::getId使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Attachment
的用法示例。
在下文中一共展示了Attachment::getId方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: handleAttachmentMapElementPreWrite
/*! Callback called for each element in an AttachmentMap (this is used by
preWriteAttachmentMapField).
*/
void OSBCommonElement::handleAttachmentMapElementPreWrite(
FieldContainer *refedFC)
{
OSG_OSB_LOG(("OSBCommonElement::handleAttachmentMapElementPreWrite\n"));
if(refedFC == NULL)
return;
Attachment *refedAtt = dynamic_cast<Attachment *>(refedFC);
// skip attachments marked as 'internal'
if(refedAtt == NULL ||
refedAtt->getSFInternal()->getValue() == true )
{
return;
}
OSBRootElement *root = editRoot();
UInt32 refedId = refedAtt->getId ();
const std::string &typeName = refedAtt->getType().getName();
// only schedule a container once
if(root->getIdSet().count(refedId) > 0)
return;
OSBElementBase *elem = OSBElementFactory::the()->acquire(typeName, root);
root->editIdSet ().insert (refedId);
root->editElementList().push_back(elem );
elem->setContainer(refedAtt);
elem->preWrite (refedAtt);
}