sdaiGetMemberCount

Returns the number of elements within an aggregation.

Syntax

public const string ifcenginedll = @"ifcengine.dll";

[DllImport(ifcenginedll, EntryPoint = "sdaiGetMemberCount")]
public static extern Int32 sdaiGetMemberCount(int_t aggregate);    

Property aggregate

Size: 32 bit / 4 byte (reference)
...

Example (based on pure API calls)

Here you can find code snippets that show how the API call sdaiGetMemberCount can be used.

using RDF;      //  include at least IFCEngine.cs within your solution

void GetColumns(Int64 model)
{
    Int64 ifcColumnInstances = RDF.IFCEngine.sdaiGetEntityExtentBN(model, "IFCCOLUMN"),
          noIfcColumnInstances = RDF.IFCEngine.sdaiGetMemberCount(ifcColumnInstances);
    if (noIfcColumnInstances != 0)
    {
        for (Int64 i = 0; i < noIfcColumnInstances; i++)
        {
            Int64 ifcColumnInstance = 0;
            RDF.IFCEngine.sdaiGetAggrByIndex(ifcColumnInstances, i, RDF.IFCEngine.sdaiINSTANCE, out ifcColumnInstance);

            string globalId;
            RDF.IFCEngine.sdaiGetAttrBN(ifcColumnInstance, "GlobalId", RDF.IFCEngine.sdaiUNICODE, out globalId);

            string name;
            RDF.IFCEngine.sdaiGetAttrBN(ifcColumnInstance, "Name", RDF.IFCEngine.sdaiUNICODE, out name);

            string description;
            RDF.IFCEngine.sdaiGetAttrBN(ifcColumnInstance, "Description", RDF.IFCEngine.sdaiUNICODE, out description);
        }
    }
}