A3DSDKBim.h

Types

A3DBIMDataData

A3DBIMRelContainedInSpatialStructureData

A3DBIMRelFillsElementData

A3DBIMRelSpaceBoundaryData

A3DBIMRelAggregatesData

A3DBIMRelAssignsToGroupData

A3DBIMRelVoidsElementData

A3DBIMRelConnectsPathElementsData

A3DBIMRootData

Functions

A3DStatus

A3DBIMDataGet

A3DStatus

A3DBIMRelContainedInSpatialStructureGet

A3DStatus

A3DBIMRelFillsElementGet

A3DStatus

A3DBIMRelSpaceBoundaryGet

A3DStatus

A3DBIMRelAggregatesGet

A3DStatus

A3DBIMRelAssignsToGroupGet

A3DStatus

A3DBIMRelVoidsElementGet

A3DStatus

A3DBIMRelConnectsPathElementsGet

A3DStatus

A3DBIMRootGet

A3DStatus

A3DAsmModelFileExportToIfcXMLFile

Detailed Description

Author

Tech Soft 3D

Version

24.2

Date

March 2024

Copyright

Copyright (c) 2010 - 2024 by Tech Soft 3D, Inc. All rights reserved.

Function Documentation

A3DStatus A3DBIMDataGet(const A3DBIMData *pDBIMData, A3DBIMDataData *pData)

Retrieves data of an A3DBIMData entity.

In case of success, the pData contains heap allocated memory your are responsible for. To free the memory on pData, call A3DBIMDataGet with pDBIMData set to 0.

Version

14.2

Memory Management

See also

A3DBIMDataData

Parameters
  • pDBIMData[in] The BIM Data entity to get data from

  • pData[out] A pointer to the data structure to fill in

Return values
  • A3D_SUCCESS – In case of success.

  • A3D_INITIALIZE_NOT_CALLED – if the library is not initialized.

  • A3D_INVALID_DATA_STRUCT_NULL – if pData is null

  • A3D_INVALID_DATA_STRUCT_SIZE – if pData is incorrectly initialized

  • A3D_INVALID_ENTITY_NULL – if pDBIMDatais null

  • A3D_INVALID_ENTITY_TYPE – if pdBIMData references an invalid entity type

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DBIMRelContainedInSpatialStructureGet(const A3DBIMRelContainedInSpatialStructure *pRelationship, A3DBIMRelContainedInSpatialStructureData *pData)

Retrieves the data of an A3DBIMRelContainedInSpatialStructure entity.

In case of success, the pData contains heap allocated memory your are responsible for. To free the memory on pData, call A3DBIMRelContainedInSpatialStructureGet with pRelationship set to 0.

Version

14.2

Memory Management

See also

A3DBIMDataData

Parameters
  • pRelationship[in] The relationship entity to get data from

  • pData[out] A pointer to the data structure to fill in

Return values
  • A3D_SUCCESS – In case of success.

  • A3D_INITIALIZE_NOT_CALLED – if the library is not initialized.

  • A3D_INVALID_DATA_STRUCT_NULL – if pData is null

  • A3D_INVALID_DATA_STRUCT_SIZE – if pData is incorrectly initialized

  • A3D_INVALID_ENTITY_NULL – if pRelationshipis null

  • A3D_INVALID_ENTITY_TYPE – if pRelationship references an invalid entity type

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DBIMRelFillsElementGet(const A3DBIMRelFillsElement *pRelationship, A3DBIMRelFillsElementData *pData)

Retrieves the data of an A3DBIMRelFillsElement entity.

In case of success, the pData contains heap allocated memory your are responsible for. To free the memory on pData, call A3DBIMRelFillsElementGet with pRelationship set to 0.

Version

14.2

Memory Management

See also

A3DBIMDataData

Parameters
  • pRelationship[in] The relationship entity to get data from

  • pData[out] A pointer to the data structure to fill in

Return values
  • A3D_SUCCESS – In case of success.

  • A3D_INITIALIZE_NOT_CALLED – if the library is not initialized.

  • A3D_INVALID_DATA_STRUCT_NULL – if pData is null

  • A3D_INVALID_DATA_STRUCT_SIZE – if pData is incorrectly initialized

  • A3D_INVALID_ENTITY_NULL – if pRelationshipis null

  • A3D_INVALID_ENTITY_TYPE – if pRelationship references an invalid entity type

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DBIMRelSpaceBoundaryGet(const A3DBIMRelSpaceBoundary *pRelationship, A3DBIMRelSpaceBoundaryData *pData)

Retrieves the data of an A3DBIMRelSpaceBoundary entity.

In case of success, the pData contains heap allocated memory your are responsible for. To free the memory on pData, call A3DBIMRelSpaceBoundaryGet with pRelationship set to 0.

Version

14.2

Memory Management

See also

A3DBIMDataData

Parameters
  • pRelationship[in] The relationship entity to get data from

  • pData[out] A pointer to the data structure to fill in

Return values
  • A3D_SUCCESS – In case of success.

  • A3D_INITIALIZE_NOT_CALLED – if the library is not initialized.

  • A3D_INVALID_DATA_STRUCT_NULL – if pData is null

  • A3D_INVALID_DATA_STRUCT_SIZE – if pData is incorrectly initialized

  • A3D_INVALID_ENTITY_NULL – if pRelationshipis null

  • A3D_INVALID_ENTITY_TYPE – if pRelationship references an invalid entity type

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DBIMRelAggregatesGet(const A3DBIMRelAggregates *pRelationship, A3DBIMRelAggregatesData *pData)

Retrieves the data of an A3DBIMRelAggregates entity.

In case of success, the pData contains heap allocated memory your are responsible for. To free the memory on pData, call A3DBIMRelAggregatesGet with pRelationship set to 0.

Version

14.2

Memory Management

See also

A3DBIMDataData

Parameters
  • pRelationship[in] The relationship entity to get data from

  • pData[out] A pointer to the data structure to fill in

Return values
  • A3D_SUCCESS – In case of success.

  • A3D_INITIALIZE_NOT_CALLED – if the library is not initialized.

  • A3D_INVALID_DATA_STRUCT_NULL – if pData is null

  • A3D_INVALID_DATA_STRUCT_SIZE – if pData is incorrectly initialized

  • A3D_INVALID_ENTITY_NULL – if pRelationshipis null

  • A3D_INVALID_ENTITY_TYPE – if pRelationship references an invalid entity type

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DBIMRelAssignsToGroupGet(const A3DBIMRelAssignsToGroup *pRelationship, A3DBIMRelAssignsToGroupData *pData)

Retrieves the data of an A3DBIMRelAssignsToGroup entity.

In case of success, the pData contains heap allocated memory your are responsible for. To free the memory on pData, call A3DBIMRelAssignsToGroupGet with pRelationship set to 0.

Version

24.1

Memory Management

See also

A3DBIMDataData

Parameters
  • pRelationship[in] The relationship entity to get data from

  • pData[out] A pointer to the data structure to fill in

Return values
  • A3D_SUCCESS – In case of success.

  • A3D_INITIALIZE_NOT_CALLED – if the library is not initialized.

  • A3D_INVALID_DATA_STRUCT_NULL – if pData is null

  • A3D_INVALID_DATA_STRUCT_SIZE – if pData is incorrectly initialized

  • A3D_INVALID_ENTITY_NULL – if pRelationshipis null

  • A3D_INVALID_ENTITY_TYPE – if pRelationship references an invalid entity type

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DBIMRelVoidsElementGet(const A3DBIMRelVoidsElement *pRelationship, A3DBIMRelVoidsElementData *pData)

Retrieves the data of an A3DBIMRelVoidsElement entity.

In case of success, the pData contains heap allocated memory your are responsible for. To free the memory on pData, call A3DBIMRelVoidsElementGet with pRelationship set to 0.

Version

14.2

Memory Management

See also

A3DBIMDataData

Parameters
  • pRelationship[in] The relationship entity to get data from

  • pData[out] A pointer to the data structure to fill in

Return values
  • A3D_SUCCESS – In case of success.

  • A3D_INITIALIZE_NOT_CALLED – if the library is not initialized.

  • A3D_INVALID_DATA_STRUCT_NULL – if pData is null

  • A3D_INVALID_DATA_STRUCT_SIZE – if pData is incorrectly initialized

  • A3D_INVALID_ENTITY_NULL – if pDBIMDatais null

  • A3D_INVALID_ENTITY_TYPE – if pdBIMData references an invalid entity type

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DBIMRelConnectsPathElementsGet(const A3DBIMRelConnectsPathElements *pRelationship, A3DBIMRelConnectsPathElementsData *pData)

Retrieves the data of an A3DBIMRelConnectsPathElements entity.

In case of success, the pData contains heap allocated memory your are responsible for. To free the memory on pData, call A3DBIMRelConnectsPathElementsGet with pRelationship set to 0.

Version

14.2

Memory Management

See also

A3DBIMDataData

Parameters
  • pRelationship[in] The relationship entity to get data from

  • pData[out] A pointer to the data structure to fill in

Return values
  • A3D_SUCCESS – In case of success.

  • A3D_INITIALIZE_NOT_CALLED – if the library is not initialized.

  • A3D_INVALID_DATA_STRUCT_NULL – if pData is null

  • A3D_INVALID_DATA_STRUCT_SIZE – if pData is incorrectly initialized

  • A3D_INVALID_ENTITY_NULL – if pDBIMDatais null

  • A3D_INVALID_ENTITY_TYPE – if pdBIMData references an invalid entity type

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DBIMRootGet(const A3DBIMRoot *pRoot, A3DBIMRootData *pData)

Retrieves the data of an A3DBIMRoot entity.

In case of success, the pData contains heap allocated memory your are responsible for. To free the memory on pData, call A3DBIMRootGet with pRelationship set to 0.

Version

14.2

Memory Management

See also

A3DBIMRootData

See also

A3DBIMDataData

Parameters
  • pRoot[in] The relationship entity to get data from

  • pData[out] A pointer to the data structure to fill in

Return values
  • A3D_SUCCESS – In case of success.

  • A3D_INITIALIZE_NOT_CALLED – if the library is not initialized.

  • A3D_INVALID_DATA_STRUCT_NULL – if pData is null

  • A3D_INVALID_DATA_STRUCT_SIZE – if pData is incorrectly initialized

  • A3D_INVALID_ENTITY_NULL – if pDBIMDatais null

  • A3D_INVALID_ENTITY_TYPE – if pdBIMData references an invalid entity type

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DAsmModelFileExportToIfcXMLFile(const A3DAsmModelFile *pA3DAsmModelFile, const A3DUTF8Char *pcXMLFileName)

Exports all the BIM data of a given model file into an XML file.

Parameters
  • pA3DAsmModelFile[in] The model file to export BIM data from

  • pcXMLFileName[out] A valid path to a non existing file

Return values
  • A3D_SUCCESS – In case of success.

  • A3D_INITIALIZE_NOT_CALLED – if the library is not initialized.

  • A3D_INVALID_DATA_STRUCT_NULL – if pData is null

  • A3D_INVALID_DATA_STRUCT_SIZE – if pData is incorrectly initialized

  • A3D_INVALID_ENTITY_NULL – if pDBIMDatais null

  • A3D_INVALID_ENTITY_TYPE – if pdBIMData references an invalid entity type

  • A3D_BIMDATA_EMPTY – if the model file contains no BIM Data

Returns

A3D_SUCCESS or an error code