Code
 
 
 

Declarations

The object and variable declarations are the following:

FdoIGeometryCapabilities * geometryCapabilities;
GisInt32 numGeometryTypes = 0;
GisGeometryType * geometryTypes;
GisInt32 numGeometryComponnentTypes = 0;
GisGeometryComponentType * geometryComponentTypes;
GisInt32 dimensionalities = 0;

Method calls

The method calls are the following:

geometryCapabilities = connection->GetGeometryCapabilities();
geometryTypes = geometryCapabilities->
  GetGeometryTypes(numGeometryTypes);

// loop through geometryTypes

geometryComponentTypes = geometryCapabilities->
  GetGeometryComponentTypes(numGeometryComponentTypes);

// loop through geometryComponentTypes

dimensionalities = geometryCapabilities->GetDimensionalities();

// GisDimensinality_XY is 0 and so is always a given

if (dimensionalities & GisDimensionality_Z) {

  // do whatever

}
if (dimensionalities & GisDimensionality_M) {

  // do whatever

}