GetModelMetaInfo

This function is meant for debugging purposes and return statistics during processing.
The return value represents the number of active models within the session (or zero if the model was not recognized).

Syntax

public const string enginedll = @"engine.dll";

[DllImport(enginedll, EntryPoint = "GetModelMetaInfo")]
public static extern Int64 GetModelMetaInfo(Int64 model, out Int64 activeClasses, out Int64 removedClasses, out Int64 activeProperties, out Int64 removedProperties, out Int64 activeInstances, out Int64 removedInstances, out Int64 inactiveInstances);

[DllImport(enginedll, EntryPoint = "GetModelMetaInfo")]
public static extern Int64 GetModelMetaInfo(Int64 model, out Int64 activeClasses, out Int64 removedClasses, out Int64 activeProperties, out Int64 removedProperties, IntPtr activeInstances, IntPtr removedInstances, IntPtr inactiveInstances);

[DllImport(enginedll, EntryPoint = "GetModelMetaInfo")]
public static extern Int64 GetModelMetaInfo(Int64 model, out Int64 activeClasses, out Int64 removedClasses, IntPtr activeProperties, IntPtr removedProperties, out Int64 activeInstances, out Int64 removedInstances, out Int64 inactiveInstances);

[DllImport(enginedll, EntryPoint = "GetModelMetaInfo")]
public static extern Int64 GetModelMetaInfo(Int64 model, out Int64 activeClasses, out Int64 removedClasses, IntPtr activeProperties, IntPtr removedProperties, IntPtr activeInstances, IntPtr removedInstances, IntPtr inactiveInstances);

[DllImport(enginedll, EntryPoint = "GetModelMetaInfo")]
public static extern Int64 GetModelMetaInfo(Int64 model, IntPtr activeClasses, IntPtr removedClasses, out Int64 activeProperties, out Int64 removedProperties, out Int64 activeInstances, out Int64 removedInstances, out Int64 inactiveInstances);

[DllImport(enginedll, EntryPoint = "GetModelMetaInfo")]
public static extern Int64 GetModelMetaInfo(Int64 model, IntPtr activeClasses, IntPtr removedClasses, out Int64 activeProperties, out Int64 removedProperties, IntPtr activeInstances, IntPtr removedInstances, IntPtr inactiveInstances);

[DllImport(enginedll, EntryPoint = "GetModelMetaInfo")]
public static extern Int64 GetModelMetaInfo(Int64 model, IntPtr activeClasses, IntPtr removedClasses, IntPtr activeProperties, IntPtr removedProperties, out Int64 activeInstances, out Int64 removedInstances, out Int64 inactiveInstances);

[DllImport(enginedll, EntryPoint = "GetModelMetaInfo")]
public static extern Int64 GetModelMetaInfo(Int64 model, IntPtr activeClasses, IntPtr removedClasses, IntPtr activeProperties, IntPtr removedProperties, IntPtr activeInstances, IntPtr removedInstances, IntPtr inactiveInstances);    

Property model

Size: 64 bit / 8 byte (value)
The handle to the model. The model handle is static during its existance. Several models can be opened simultaniously within one session. Different models are always independent, threads are allowed to be running on different models simultaniously.

Property activeClasses

Size: 64 bit / 8 byte (reference)
The total number of active classes within the current model. By default already over 100 classes are present, these are part pf the so-called GEOM Ontology, an open standard co-developed by RDF.

Property removedClasses

Size: 64 bit / 8 byte (reference)
The total number of removed classes within the current model.

Property activeProperties

Size: 64 bit / 8 byte (reference)
The total number of active object properties (relations) and datatype properties (attributes) within the current model. By default already over 150 properties are present, these are part pf the so-called GEOM Ontology, an open standard co-developed by RDF.

Property removedProperties

Size: 64 bit / 8 byte (reference)
The total number of removed properties within the current model.

Property activeInstances

Size: 64 bit / 8 byte (reference)
The total number of active instances within the current model. Note that the number of instances can be larger than the number of by-user created instances as intermediate instances are created in certain cases to improve performance.

Property removedInstances

Size: 64 bit / 8 byte (reference)
The total number of removed instances within the current model. Note that the number of instances can be larger than the number of by-user created instances as intermediate instances are created in certain cases to improve performance.

Property inactiveInstances

Size: 64 bit / 8 byte (reference)
In contrary to Models, Classes and Properties instances can have an inactive status. This means they are deleted by the user but not removed internally yet. The number of incative instances can never exceed the number of removed instances.