本文整理汇总了C++中NodeAttribute::PostDynCreateInit方法的典型用法代码示例。如果您正苦于以下问题:C++ NodeAttribute::PostDynCreateInit方法的具体用法?C++ NodeAttribute::PostDynCreateInit怎么用?C++ NodeAttribute::PostDynCreateInit使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NodeAttribute
的用法示例。
在下文中一共展示了NodeAttribute::PostDynCreateInit方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: PostBlendInit
// Required for all GLA's
// NB must only be called on attrmaps with copied attributes
// DO NOT CALL on maps with 'live' attributes - ie pointers to attrs in the tree
// (eg a mpa made by MakeAppliedAttrMap(pInk))
void CCAttrMap::PostBlendInit(Path* pPath, CCRuntimeClass* pCreatorClass)
{
INT32 curr = 0;
// NB this function is called on a Blended attr map
// The Blend() function should return false if it doesn't want to be in the blended attr map
// ie default GLAs shouldn't be in here!
do
{
CCRuntimeClass *pType = (CCRuntimeClass *)GeometryLinkedAttributeClasses[curr];
void *pVal;
if( Lookup( pType, pVal ) )
{
if (pVal != NULL)
{
NodeAttribute * pAttr = (NodeAttribute *)pVal;
// call the attributes routine to initialise itself
if(!pAttr->PostDynCreateInit(this, pPath, pCreatorClass))
{
// make sure the node is not going to try and render itself
TRACEUSER( "Ilan", wxT("Dynamically created attribute failed to post init itself. Removing attribute from map.\n") );
// NB map must contain copied attrs
RemoveKey( pType );
// Must cast to NodeAttribute before deleting, otherwise wrong destructor gets called
delete (NodeAttribute*)pVal;
}
}
}
curr++;
}
while(curr<NumGLAs);
}