public static extern SU_RESULT SUComponentInstanceGetNumAttachedToDrawingElements(SUComponentInstanceRef instance, ref size_t count);
public static extern SU_RESULT SUComponentInstanceGetNumAttachedInstances(SUComponentInstanceRef instance, ref size_t count);
public static extern SU_RESULT SUComponentInstanceGetAttachedInstances(SUComponentInstanceRef instance, long len, ref SUComponentInstanceRef[] instances, ref size_t count);
public static extern SU_RESULT SUInstancePathPushInstance(SUInstancePathRef instance_path, SUComponentInstanceRef component_instance);
public static extern SU_RESULT SUComponentDefinitionCreateInstance(SUComponentDefinitionRef comp_def, out SUComponentInstanceRef instance);
public static extern SUDrawingElementRef SUComponentInstanceToDrawingElement(SUComponentInstanceRef instance);
public static extern SU_RESULT SUComponentInstanceRelease(ref SUComponentInstanceRef instance);
public static extern SU_RESULT SUComponentInstanceSetLocked(SUComponentInstanceRef instance, bool is_lock);
public static extern SU_RESULT SUComponentInstanceIsLocked(SUComponentInstanceRef instance, ref bool is_locked);
public static extern SU_RESULT SUComponentInstanceGetTransform(SUComponentInstanceRef instance, ref SUTransformation transform);
public static extern SU_RESULT SUComponentInstanceGetDefinition(SUComponentInstanceRef instance, ref SUComponentDefinitionRef component);
public static extern SU_RESULT SUComponentInstanceGetGuid(SUComponentInstanceRef instance, ref SUStringRef guid);
public static extern SU_RESULT SUComponentInstanceSetGuid(SUComponentInstanceRef instance, string guid);
public static extern SU_RESULT SUComponentInstanceGetName(SUComponentInstanceRef instance, ref SUStringRef name);
public static extern SU_RESULT SUComponentInstanceGetAttachedToDrawingElements(SUComponentInstanceRef instance, long len, ref SUDrawingElementRef[] elements, ref size_t count);
public static extern SU_RESULT SUComponentInstanceSaveAs(SUComponentInstanceRef instance, string file_path);
public static extern SUEntityRef SUComponentInstanceToEntity(SUComponentInstanceRef instance);
public static extern SU_RESULT SUComponentInstanceComputeVolume(SUComponentInstanceRef instance, ref SUTransformation transform, out double volume);
public static extern SU_RESULT SUComponentInstanceSetName(SUComponentInstanceRef instance, string name);
public static extern SU_RESULT SUComponentInstanceCreateDCInfo(SUComponentInstanceRef instance, ref SUDynamicComponentInfoRef dc_info);
public static extern SU_RESULT SUInstancePathGetInstanceAtDepth(SUInstancePathRef instance_path, size_t depth, ref SUComponentInstanceRef instance);
public static extern SU_RESULT SUComponentInstanceCreateClassificationInfo(SUComponentInstanceRef instance, ref SUClassificationInfoRef classification_info);
public static extern SU_RESULT SUEntitiesAddInstance(SUEntitiesRef entities, SUComponentInstanceRef instance, ref SUStringRef name);
public static extern SUGroupRef SUGroupFromComponentInstance(SUComponentInstanceRef component_inst);