A structure that specifies descriptive names and modeller data. More...

Data Fields

A3DMiscSingleAttributeDatam_asSingleAttributesData
 
A3DBool m_bTitleIsInt
 
A3DUTF8Charm_pcTitle
 
A3DUns32 m_uiSize
 

Detailed Description

A structure that specifies descriptive names and modeller data.

Version
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.

A3DVoid setAttributesSample(A3DEntity* pEntity)
{
A3DMiscAttribute* pAttributes[2];
// ----------------------------------------------------------------
// creation of the first A3DMiscAttributeData
A3DMiscSingleAttributeData pSingleAttributes[2];
// creation of the first A3DMiscSingleAttribute
A3DMiscSingleAttributeData sSingleAttributeData1;
sSingleAttributeData1.m_eType = kA3DModellerAttributeTypeString;
sSingleAttributeData1.m_pcTitle = (char*) "First single attribute";
sSingleAttributeData1.m_pcData = (char*) "Simple attribute 1 demonstration";
pSingleAttributes[0] = sSingleAttributeData1;
// creation of the second A3DMiscSingleAttribute
A3DMiscSingleAttributeData sSingleAttributeData2;
sSingleAttributeData2.m_eType = kA3DModellerAttributeTypeString;
sSingleAttributeData2.m_pcTitle = (char*) "Second single attribute";
sSingleAttributeData2.m_pcData = (char*) "Simple attribute 2 demonstration";
pSingleAttributes[1] = sSingleAttributeData2;
// creation of the first A3DMiscAttribute
A3DMiscAttributeData sAttributeData1;
sAttributeData1.m_pcTitle = "First attribute";
sAttributeData1.m_bTitleIsInt = false;
sAttributeData1.m_pSingleAttributesData = pSingleAttributes;
sAttributeData1.m_uiSize = 2;
A3DMiscAttributeCreate(&sAttributeData1, &pAttributes[0]);
// ----------------------------------------------------------------
// creation of the second A3DMiscAttribute
A3DMiscAttributeData sAttributeData2;
A3DUns32 uiTitleAsInt = 12345;
sAttributeData2.m_pcTitle = (A3DUTF8Char*)(&uiTitleAsInt);
sAttributeData2.m_bTitleIsInt = true;
sAttributeData2.m_uiSize = 0;
A3DMiscAttributeCreate(&sAttributeData2, &pAttributes[1]);
// ----------------------------------------------------------------
// creation of the A3DRootBase
A3DRootBaseData sRootData;
sRootData.m_pcName = (char*) "Root base information";
sRootData.m_ppAttributes = pAttributes;
sRootData.m_uiSize = 2;
A3DRootBaseSet(pEntity, &sRootData);
for(A3DUns32 i = 0; i < sRootData.m_uiSize; ++i)
{
}
}

Field Documentation

◆ m_bTitleIsInt

A3DBool A3DMiscAttributeData::m_bTitleIsInt

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

◆ m_pcTitle

A3DUTF8Char* A3DMiscAttributeData::m_pcTitle

Title as string.

◆ m_uiSize

A3DUns32 A3DMiscAttributeData::m_uiSize

Size of m_asSingleAttributesData.

◆ m_asSingleAttributesData

A3DMiscSingleAttributeData* A3DMiscAttributeData::m_asSingleAttributesData

Pointer to an array of single attribute structures.

A3DStatus A3DRootBaseSet(A3DRootBase *pRootBase, const A3DRootBaseData *pData)
Adds an A3DRootBaseData structure to an existing PRC entity.
#define A3D_INITIALIZE_DATA(MAC_TYPE, MAC_VALUE)
Definition: A3DSDKInitializeFunctions.h:31
A3DUns32 m_uiSize
Definition: A3DSDKRootEntities.h:159
A3DBool m_bTitleIsInt
Definition: A3DSDKRootEntities.h:476
A3DStatus A3DMiscAttributeCreate(const A3DMiscAttributeData *pData, A3DMiscAttribute **ppAttribute)
Creates an A3DMiscAttribute from A3DMiscAttributeData structure.
A structure that specifies descriptive names and modeller data.
Definition: A3DSDKRootEntities.h:473
A3DUns32 m_uiSize
Definition: A3DSDKRootEntities.h:478
A structure that specifies modeler data attribute.
Definition: A3DSDKRootEntities.h:391
void A3DEntity
Definition: A3DSDKTypes.h:368
@ kA3DModellerAttributeTypeString
Definition: A3DSDKEnums.h:516
char A3DUTF8Char
Definition: A3DSDKTypes.h:59
A3DUTF8Char * m_pcData
Definition: A3DSDKRootEntities.h:397
void A3DMiscAttribute
Definition: A3DSDKTypes.h:752
A3DEModellerAttributeType m_eType
Definition: A3DSDKRootEntities.h:396
A3DMiscAttribute ** m_ppAttributes
Definition: A3DSDKRootEntities.h:160
unsigned int A3DUns32
Definition: A3DSDKTypes.h:47
A3DStatus A3DEntityDelete(A3DEntity *pEntity)
Recursively deletes the entity and its child entities.
A3DUTF8Char * m_pcName
Definition: A3DSDKRootEntities.h:161
void A3DVoid
Definition: A3DSDKTypes.h:36
A structure representing a hierarchy of descriptive names and modeler data that applies to any PRC en...
Definition: A3DSDKRootEntities.h:156
A3DUTF8Char * m_pcTitle
Definition: A3DSDKRootEntities.h:395
A3DUTF8Char * m_pcTitle
Definition: A3DSDKRootEntities.h:477