Hi Oliver -
RE: " How to use it or what is the purpose? "
How to use it.
For example, with TCTYPE_list_properties, I use PROPDESC functions to access/display the meta data that is in the returned tag(by TCTYPE_list_properties), as follows -
status = TCTYPE_list_properties(itemTypeTag, &n_properties, &property_descriptors);
status = PROPDESC_ask_name(property_descriptors[ii], &prop_name);
status = PROPDESC_ask_display_name(property_descriptors[ii], &disp_name);
printf("PROPERTY NAME -> [%-30s] ", prop_name);
printf("PROPERTY DISPLAY NAME -> [%s]\n", disp_name);
What do I use with TCTYPE_ask_child_primary_types, to access/display the meta data that is returned from TCTYPE_ask_child_primary_types ?
Sorry, still not clear for me since you said you want to know how to use it but then later asking 'what do I use with it?' which sounds like asking for the purpose ;)
TCTYPE_ask_child_primary_types might be used if you want to retrieve all the primary TYPE TAGs (!not objects!) of the context (secondary) object which might be connected via any relation.
How to use it:
1. Get the type_tag (which represents any POM type in BMIDE/system) of the context object by using:
TCTYPE_ask_object_type(obj_tag, tag_t *type_tag)
2. Use the type_tag as input for the function TCTYPE_ask_child_primary_types:
TCTYPE_ask_child_primary_types(type_tag, int* number_of_child_types, tag_t** child_types);
3. The return primary types you may want to combine with your code snippet example:
TCTYPE_list_properties(child_types[i], &n_properties, &property_descriptors);