Assimp  v4.1. (December 2018)
X3DImporter_Metadata.cpp File Reference

Parsing data from nodes of "Metadata" set of X3D. More...

Namespaces

 Assimp
 MACHINE-GENERATED by scripts/ICFImporter/CppGenerator.py.
 

Macros

#define MACRO_METADATA_FINDCREATE(pDEF_Var, pUSE_Var, pReference, pValue, pNE, pMetaClass, pMetaName, pType)
 Find element by "USE" or create new one. More...
 

Detailed Description

Parsing data from nodes of "Metadata" set of X3D.

Date
2015-2016
Author
smal..nosp@m.root.nosp@m.@gmai.nosp@m.l.co.nosp@m.m

Macro Definition Documentation

◆ MACRO_METADATA_FINDCREATE

#define MACRO_METADATA_FINDCREATE (   pDEF_Var,
  pUSE_Var,
  pReference,
  pValue,
  pNE,
  pMetaClass,
  pMetaName,
  pType 
)
Value:
/* if "USE" defined then find already defined element. */ \
if(!pUSE_Var.empty()) \
{ \
MACRO_USE_CHECKANDAPPLY(pDEF_Var, pUSE_Var, pType, pNE); \
} \
else \
{ \
pNE = new pMetaClass(NodeElement_Cur); \
if(!pDEF_Var.empty()) pNE->ID = pDEF_Var; \
\
((pMetaClass*)pNE)->Reference = pReference; \
((pMetaClass*)pNE)->Value = pValue; \
/* also metadata node can contain childs */ \
if(!mReader->isEmptyElement()) \
ParseNode_Metadata(pNE, pMetaName);/* in that case node element will be added to child elements list of current node. */ \
else \
NodeElement_Cur->Child.push_back(pNE);/* else - add element to child list manually */ \
\
NodeElement_List.push_back(pNE);/* add new element to elements list. */ \
}/* if(!pUSE_Var.empty()) else */ \
\
do {} while(false)
Stores a bundle of references.
Definition: OpenDDLCommon.h:161

Find element by "USE" or create new one.

Parameters
[in]pDEF_Var- variable name with "DEF" value.
[in]pUSE_Var- variable name with "USE" value.
[in]pReference- variable name with "reference" value.
[in]pValue- variable name with "value" value.
[in,out]pNE- pointer to node element.
[in]pMetaClass- Class of node.
[in]pMetaName- Name of node.
[in]pType- type of element to find.