A3DMiscAttributeData

struct A3DMiscAttributeData

A structure that specifies descriptive names and modeller data.

2.0

The``A3DMiscAttributeData``structure specifies a descriptive name as a character string or integer. It can also reference an array of``A3DMiscSingleAttributeData``structure, which specifies modeler data.

If``m_bTitleIsInt``is``A3DTrue``,``m_pcTitle``will be parsed as an``A3DUns32``.

A3DVoidsetAttributesSample(A3DEntity*pEntity)
{
A3DMiscAttribute*pAttributes[2];

//----------------------------------------------------------------
//creationofthefirstA3DMiscAttributeData

A3DMiscSingleAttributeDatapSingleAttributes[2];
//creationofthefirstA3DMiscSingleAttribute
A3DMiscSingleAttributeDatasSingleAttributeData1=A3D_MAKE_DATA(A3DMiscSingleAttributeData);
sSingleAttributeData1.m_eType=kA3DModellerAttributeTypeString;
sSingleAttributeData1.m_pcTitle=(char*)"Firstsingleattribute";
sSingleAttributeData1.m_pcData=(char*)"Simpleattribute1demonstration";
pSingleAttributes[0]=sSingleAttributeData1;
//creationofthesecondA3DMiscSingleAttribute
A3DMiscSingleAttributeDatasSingleAttributeData2=A3D_MAKE_DATA(A3DMiscSingleAttributeData);
sSingleAttributeData2.m_eType=kA3DModellerAttributeTypeString;
sSingleAttributeData2.m_pcTitle=(char*)"Secondsingleattribute";
sSingleAttributeData2.m_pcData=(char*)"Simpleattribute2demonstration";
pSingleAttributes[1]=sSingleAttributeData2;

//creationofthefirstA3DMiscAttribute
A3DMiscAttributeDatasAttributeData1=A3D_MAKE_DATA(A3DMiscAttributeData);
sAttributeData1.m_pcTitle="Firstattribute";
sAttributeData1.m_bTitleIsInt=false;
sAttributeData1.m_pSingleAttributesData=pSingleAttributes;
sAttributeData1.m_uiSize=2;
A3DMiscAttributeCreate(&sAttributeData1,&pAttributes[0]);

//----------------------------------------------------------------
//creationofthesecondA3DMiscAttribute
A3DMiscAttributeDatasAttributeData2=A3D_MAKE_DATA(A3DMiscAttributeData);
A3DUns32uiTitleAsInt=12345;
sAttributeData2.m_pcTitle=(A3DUTF8Char*)(&uiTitleAsInt);
sAttributeData2.m_bTitleIsInt=true;
sAttributeData2.m_uiSize=0;
A3DMiscAttributeCreate(&sAttributeData2,&pAttributes[1]);


//----------------------------------------------------------------
//creationoftheA3DRootBase
A3DRootBaseDatasRootData=A3D_MAKE_DATA(A3DRootBaseData);
sRootData.m_pcName=(char*)"Rootbaseinformation";
sRootData.m_ppAttributes=pAttributes;
sRootData.m_uiSize=2;
A3DRootBaseSet(pEntity,&sRootData);

for(A3DUns32i=0;i<sRootData.m_uiSize;++i)
{
A3DEntityDelete(sRootData.m_ppAttributes[i]);
}
}

Variables

A3DBool A3DMiscAttributeData.m_bTitleIsInt

A value of``A3DTrue``indicates that``m_pcTitle``member represents an integer.

A3DUTF8Char *A3DMiscAttributeData.m_pcTitle

Title as string.

A3DUns32 A3DMiscAttributeData.m_uiSize

Size of m_asSingleAttributesData.

A3DMiscSingleAttributeData *A3DMiscAttributeData.m_asSingleAttributesData

Pointer to an array of single attribute structures.