ITK Function Reference

(12.1)
Modules | Data Structures | Macros | Typedefs | Enumerations | Functions
Teamcenter Types

Modules

 Lists of tags for objects that have been modified (changed or deleted)
 
 Type Errors
 
 Type Specific Messages
 

Data Structures

struct  TCTYPE_availablerel_s
 
struct  TCTYPE_bulk_copy_input_s
 
struct  TCTYPE_deepcopydata_s
 

Macros

#define TC_set_description_msg   "IMAN_set_description"
 
#define TC_set_id_msg   "IMAN_set_id"
 
#define TC_set_name_msg   "IMAN_set_name"
 
#define TC_set_type_directly_msg   "IMAN_set_type_directly"
 
#define TC_set_type_msg   "IMAN_set_type"
 
#define TCTYPE_class_name_size_c   27
 
#define TCTYPE_DISABLE_UPDATE_LIST   0
 
#define TCTYPE_ENABLE_UPDATE_LIST   1
 
#define TCTYPE_name_size_c   32
 
#define TCTYPE_RESUME_UPDATE_LIST   3
 
#define TCTYPE_SUSPEND_UPDATE_LIST   2
 
#define TCTYPE_UPDATE_ALL_PROPS   "_update_all_"
 

Typedefs

typedef struct
TCTYPE_availablerel_s 
TCTYPE_availablerel_t
 
typedef struct
TCTYPE_bulk_copy_input_s 
TCTYPE_bulk_copy_input_t
 
typedef enum TCTYPE_category_e TCTYPE_category_t
 
typedef enum
TCTYPE_compounding_ctxt_e 
TCTYPE_compounding_ctxt_t
 
typedef struct
TCTYPE_deepcopydata_s 
TCTYPE_deepcopydata_t
 
typedef enum TCTYPE_display_e TCTYPE_display_t
 
typedef enum
TCTYPE_operation_input_e 
TCTYPE_operation_input_t
 
typedef enum
TCTYPE_save_operation_context_e 
TCTYPE_save_operation_context_t
 

Enumerations

enum  TCTYPE_category_e {
  TCTYPE_Persistent, TCTYPE_Runtime, TCTYPE_OperationInput, TCTYPE_Root,
  TCTYPE_Dynamic, TCTYPE_All
}
 
enum  TCTYPE_compounding_ctxt_e { TCTYPE_compounding_ctxt_unknown, TCTYPE_compounding_ctxt_relation, TCTYPE_compounding_ctxt_secondary }
 
enum  TCTYPE_display_e {
  TCTYPE_DISPLAYABLE =0, TCTYPE_HIDDEN_AT_SYSTEM_LEVEL, TCTYPE_HIDDEN_AT_SITE_LEVEL, TCTYPE_HIDDEN_AT_PARENT_LEVEL,
  TCTYPE_HIDDEN_AT_CURRENT_LEVEL
}
 
enum  TCTYPE_operation_input_e { TCTYPE_OPERATIONINPUT_CREATE = 0, TCTYPE_OPERATIONINPUT_REVISE = 1, TCTYPE_OPERATIONINPUT_SAVEAS = 2, TCTYPE_OPERATIONINPUT_ANY = 3 }
 
enum  TCTYPE_save_operation_context_e {
  TCTYPE_save_on_create, TCTYPE_save_on_saveas, TCTYPE_save_on_revise, TCTYPE_save_on_update,
  TCTYPE_unknown_operation_context, TCTYPE_save_on_clone
}
 

Functions

TCCORE_API int TCTYPE_add_relation_property (tag_t type, const char *property_name, tag_t relation_type, tag_t *property_descriptor)
 
TCCORE_API int TCTYPE_add_runtime_array_property (tag_t type, const char *property_name, PROP_value_type_t value_type, int max_string_length, int max_number_elements, tag_t *property_descriptor)
 
TCCORE_API int TCTYPE_ask_available_relation_names (tag_t type, int *number_of_relations, char ***relation_display_names, char ***relation_actual_names)
 
TCCORE_API int TCTYPE_ask_available_relations (tag_t type, int *number_of_relations, TCTYPE_availablerel_t **available_relations)
 
TCCORE_API int TCTYPE_ask_child_primary_types (tag_t type, int *number_of_child_types, tag_t **child_types)
 
TCCORE_API int TCTYPE_ask_child_types (tag_t type, logical for_same_class_only, int *number_of_child_types, tag_t **child_types)
 
TCCORE_API int TCTYPE_ask_class_name (tag_t type, char type_class[TCTYPE_class_name_size_c+1])
 
TCCORE_API int TCTYPE_ask_class_name2 (tag_t type, char **type_class)
 
TCCORE_API int TCTYPE_ask_create_descriptor (tag_t type_tag, tag_t *creation_descriptor)
 
TCCORE_API int TCTYPE_ask_create_prop_descriptors (tag_t create_descriptor_tag, int *number_property_descriptors, tag_t **property_descriptor_tags, int *number_secondary_prop_names, char ***secondary_prop_names, tag_t **secondary_bo_type_tags, logical **is_required, logical **is_array, int **compounding_ctxts, tag_t **secondary_create_descriptor_tags)
 
TCCORE_API int TCTYPE_ask_deepcopydata (tag_t object, TCTYPE_operation_input_t operation_input, int *number_of_attached_objects, tag_t **deep_copy_data)
 
TCCORE_API int TCTYPE_ask_display_name (tag_t type, char **display_type_name)
 
TCCORE_API int TCTYPE_ask_name (tag_t type, char type_name[TCTYPE_name_size_c+1])
 
TCCORE_API int TCTYPE_ask_name2 (tag_t type, char **type_name)
 
TCCORE_API int TCTYPE_ask_name_rule_patterns (const char *bo_name, int *number_property_names, char ***property_names, int **pattern_count, int *number_of_patterns, char ***patterns)
 
TCCORE_API int TCTYPE_ask_object_type (tag_t object, tag_t *type)
 
TCCORE_API int TCTYPE_ask_object_type_with_stubs (tag_t object, tag_t *type)
 
TCCORE_API int TCTYPE_ask_object_types (int number_of_objects, const tag_t *objects, tag_t **types)
 
TCCORE_API int TCTYPE_ask_parent_type (tag_t type, tag_t *parent_type)
 
TCCORE_API int TCTYPE_ask_property_by_display_name (tag_t type, const char *display_name, tag_t *property_descriptor)
 
TCCORE_API int TCTYPE_ask_property_by_name (tag_t type, const char *property_name, tag_t *property_descriptor)
 
TCCORE_API int TCTYPE_ask_revise_descriptor (tag_t object_type, tag_t *revise_descriptor)
 
TCCORE_API int TCTYPE_ask_save_operation_context (TCTYPE_save_operation_context_t *save_operation_context)
 
TCCORE_API int TCTYPE_ask_saveas_descriptor (tag_t type_tag, tag_t *save_as_descriptor)
 
TCCORE_API int TCTYPE_ask_saveas_prop_descriptors (tag_t saveas_descriptor_tag, int *number_prop_descriptor_tags, tag_t **prop_decriptor_tags)
 
TCCORE_API int TCTYPE_ask_subtypes (tag_t type, logical for_same_class_only, int *n_subtypes, tag_t **subtypes)
 
TCCORE_API int TCTYPE_ask_subtypes_with_exclusions (tag_t type, logical for_same_class_only, int number_exclusion_bo_names, const char **exclusion_bo_names, int *number_of_subtypes, tag_t **subtypes)
 
TCCORE_API int TCTYPE_ask_target_deepcopydata (tag_t object_tag, int *number_attached_objects, tag_t **deep_copy_data_tags)
 
TCCORE_API int TCTYPE_ask_type (const char *type_name, tag_t *type)
 
TCCORE_API int TCTYPE_bulk_create_objects (const int n_objects, const tag_t *create_inputs, tag_t **objects)
 
TCCORE_API int TCTYPE_bulk_revise_objects (const int n_bulk_copy_inputs, const TCTYPE_bulk_copy_input_t *bulk_copy_inputs, tag_t **revised_objects)
 
TCCORE_API int TCTYPE_bulk_saveas_objects (const int n_bulk_copy_inputs, const TCTYPE_bulk_copy_input_t *bulk_copy_inputs, tag_t **copied_objects)
 
TCCORE_API int TCTYPE_construct_bulk_copy_inputs (const int n_source_objects, const tag_t *source_objects, const TCTYPE_operation_input_t operation_type, TCTYPE_bulk_copy_input_t **bulk_copy_inputs)
 
TCCORE_API int TCTYPE_construct_create_input (tag_t type, tag_t *create_input)
 
TCCORE_API int TCTYPE_construct_operationinput (tag_t target_object_type, TCTYPE_operation_input_t operation_input, tag_t *target_save_as_input)
 
TCCORE_API int TCTYPE_construct_saveasinput (tag_t type, tag_t *save_as_input)
 
TCCORE_API int TCTYPE_create_object (tag_t create_input, tag_t *bo)
 
TCCORE_API int TCTYPE_create_objects (int n_bulks, int *quantities, tag_t *create_inputs, int *n_objects, tag_t **objects)
 
TCCORE_API int TCTYPE_create_single_objects (int n_bulks, const tag_t *create_inputs, int *n_objects, tag_t **objects)
 
TCCORE_API int TCTYPE_delete_operation_input_objects (const int n_bulk_copy_inputs, const TCTYPE_bulk_copy_input_t *bulk_copy_inputs)
 
TCCORE_API int TCTYPE_exit_module ()
 
TCCORE_API int TCTYPE_extent (int *number_of_types, tag_t **types)
 
TCCORE_API int TCTYPE_extent_by_category (TCTYPE_category_t type_category, int *number_of_types, tag_t **types)
 
TCCORE_API int TCTYPE_find_alltypes_for_class (const char *class_name, int *number_of_types, tag_t **types)
 
TCCORE_API int TCTYPE_find_displayable_business_objects (const char *bo_name, int number_exclusion_bo_names, const char **exclusion_bo_names, int *number_displayable_types, tag_t **displayable_types)
 
TCCORE_API int TCTYPE_find_displayable_types_for_class (const char *class_name, logical include_subclasses, int *number_of_types, tag_t **types)
 
TCCORE_API int TCTYPE_find_displayable_types_for_class_and_accessor (const char *class_name, tag_t accessor_tag, logical include_subclasses, int *number_of_types, tag_t **types)
 
TCCORE_API int TCTYPE_find_hidden_types_for_class_and_accessor (const char *class_name, tag_t accessor_tag, logical include_subclasses, int *number_of_types, tag_t **types, TCTYPE_display_t **details)
 
TCCORE_API int TCTYPE_find_type (const char *type_name, const char *class_name, tag_t *type)
 
TCCORE_API int TCTYPE_find_types_for_class (const char *class_name, int *number_of_types, tag_t **types)
 
TCCORE_API int TCTYPE_free_deepcopydata (int number_deep_copy_data, tag_t *deep_copy_data)
 
TCCORE_API int TCTYPE_get_OperationInput_DisplayValues (tag_t operation_input, char *property_name, int *number_of_display_values, char ***display_values, logical **is_null)
 
TCCORE_API int TCTYPE_init_module ()
 
TCCORE_API logical TCTYPE_is_extent_already_called ()
 
TCCORE_API int TCTYPE_is_type_of (tag_t type, tag_t parent_type, logical *answer)
 
TCCORE_API int TCTYPE_is_type_of_as_str (tag_t type, const char *parent_type_name, logical *answer)
 
TCCORE_API int TCTYPE_list_displayable_properties (tag_t type, int *number_of_properties, tag_t **property_descriptors)
 
TCCORE_API int TCTYPE_list_primary_rtypes (tag_t primary_type, int *number_relation_types, tag_t **relation_types)
 
TCCORE_API int TCTYPE_list_properties (tag_t type, int *n_properties, tag_t **property_descriptors)
 
TCCORE_API int TCTYPE_load_all_delayed_types ()
 
TCCORE_API int TCTYPE_property_exists (tag_t type, const char *property_name, logical *verdict)
 
TCCORE_API int TCTYPE_refresh (tag_t type, logical lock_or_not)
 
TCCORE_API int TCTYPE_register_properties (USER_prop_init_entry_t *user_types_methods, int array_size)
 
TCCORE_API int TCTYPE_revise_objects (int number_target_objects, tag_t *target_object, tag_t *revise_input, int *number_attached_objs, tag_t *deep_copy_data, tag_t **target_copy, int **ifails)
 
TCCORE_API int TCTYPE_saveas_object (tag_t target_object, tag_t save_as_input, int number_of_attached_objects, tag_t *deep_copy_data, tag_t *target_copy)
 
TCCORE_API int TCTYPE_set_create_display_value (tag_t create_input, char *property_name, int number_of_display_values, const char **display_values)
 
TCCORE_API int TCTYPE_set_OperationInput_DisplayValue (tag_t operation_input, char *property_name, const char **display_values)
 
TCCORE_API int TCTYPE_UIF_find_displayable_business_objects (const char *bo_name, int number_exclusion_bo_names, const char **exclusion_bo_names, int *number_displayable_types, tag_t **displayable_types, char ***type_names, char ***display_type_names)
 
TCCORE_API int TCTYPE_UIF_find_displayable_types_for_class (const char *class_name, logical include_subclasses, int *number_of_types, tag_t **types, char ***type_names, char ***display_type_names)
 
TCCORE_API int TCTYPE_UIF_find_generically_creatable_business_objects (const char *bo_name, int number_exclusion_bo_names, const char **exclusion_bo_names, int *number_displayable_types, tag_t **displayable_types, char ***type_names, char ***display_type_names)
 

Detailed Description

A type represents some object in the user's business environment.
Some examples are: Part, Equipment, Employee.
In Teamcenter, a type is implemented by a class.
Some common Teamcenter classes are: Item, Form, and Person.
This section describes the ITK interface for types.


A type can have properties and methods which define it and dictate its behavior.
Go to Properties and Methods for additional information.


By default, a type implemented by a class will have a property for each class attribute.
Any of those properties can be removed from the type and additional properties can be added to the type.
Those additional properties can be:

run-timeValue is derived at run-time.
relationImplemented by an TcRelation.
compoundUses a property from another object.

Macro Definition Documentation

#define TC_set_description_msg   "IMAN_set_description"

Definition at line 48 of file tctype.h.

#define TC_set_id_msg   "IMAN_set_id"

Definition at line 46 of file tctype.h.

#define TC_set_name_msg   "IMAN_set_name"

Definition at line 47 of file tctype.h.

#define TC_set_type_directly_msg   "IMAN_set_type_directly"

Definition at line 50 of file tctype.h.

#define TC_set_type_msg   "IMAN_set_type"

Definition at line 49 of file tctype.h.

#define TCTYPE_class_name_size_c   27

Definition at line 60 of file tctype.h.

#define TCTYPE_DISABLE_UPDATE_LIST   0

This is used to enable client server update list.

Definition at line 69 of file tctype.h.

#define TCTYPE_ENABLE_UPDATE_LIST   1

Definition at line 70 of file tctype.h.

#define TCTYPE_name_size_c   32

Definition at line 59 of file tctype.h.

#define TCTYPE_RESUME_UPDATE_LIST   3

Definition at line 72 of file tctype.h.

#define TCTYPE_SUSPEND_UPDATE_LIST   2

Definition at line 71 of file tctype.h.

#define TCTYPE_UPDATE_ALL_PROPS   "_update_all_"

This is used to indicate all loaded properties needs to be processed.

Definition at line 77 of file tctype.h.

Typedef Documentation

Provides a container to hold the object to operate on, its operation descriptor and the corresponding TCTYPE_deepcopydata_t object.
It is put to use when copying or revising an object in Teamcenter using the set-based ITKs, TCTYPE_bulk_saveas_objects or TCTYPE_bulk_revise_objects.

Defines the business objects category that could be on a type.
This enumeration can be used by TCTYPE_extent_by_category.
If category is TCTYPE_Persistent, it returns all the business object types of persistent.
If category is TCTYPE_Runtime, it returns all the business object types of runtime.
If category is TCTYPE_OperationInput, it returns all the business object types of operation input.
If category is TCTYPE_Dynamic, it returns all the business object types of dynamic types.
If the category is TCTYPE_All or TCTYPE_Root, it returns all the business object types of runtime, persistent and dynamic types.

This is used to indicate the context for secondary object creation when a primary object is created.

Provides a container to hold an array of attached deep copy data objects for an object to be operated on.
It is further contained in the TCTYPE_bulk_copy_input_t object when copying or revising an object in Teamcenter using the set-based ITKs, TCTYPE_bulk_saveas_objects or TCTYPE_bulk_revise_objects.

Defines the supported operation input types. These types correspond to the OperationInput types defined in BMIDE and can be used as input of MetaModel operations.

The options listed by the enum lets the user understand the context during a deferred save operation, especially when implementing PostAction extensions that have been manually moved.

Enumeration Type Documentation

Defines the business objects category that could be on a type.
This enumeration can be used by TCTYPE_extent_by_category.
If category is TCTYPE_Persistent, it returns all the business object types of persistent.
If category is TCTYPE_Runtime, it returns all the business object types of runtime.
If category is TCTYPE_OperationInput, it returns all the business object types of operation input.
If category is TCTYPE_Dynamic, it returns all the business object types of dynamic types.
If the category is TCTYPE_All or TCTYPE_Root, it returns all the business object types of runtime, persistent and dynamic types.

Enumerator
TCTYPE_Persistent 

Indicates persistent business objects

TCTYPE_Runtime 

Indicates runtime business objects

TCTYPE_OperationInput 

Indicates operation input business objects

TCTYPE_Root 

Indicates root object

TCTYPE_Dynamic 

Indicates programmatically created business object

TCTYPE_All 

Indicates all business objects

Definition at line 96 of file tctype.h.

This is used to indicate the context for secondary object creation when a primary object is created.

Enumerator
TCTYPE_compounding_ctxt_unknown 

Context for secondary object is unknown

TCTYPE_compounding_ctxt_relation 

The secondary object is a relation object.
This is useful in cases where properties on relation need to be configured for generic creation.

TCTYPE_compounding_ctxt_secondary 

The secondary object is a Business Object that is not a relation, e.g Item Master is the secondary object created when an Item is created.

Definition at line 136 of file tctype.h.

Enumerator
TCTYPE_DISPLAYABLE 

Type is displayable.

TCTYPE_HIDDEN_AT_SYSTEM_LEVEL 

Type is hidden at System level

TCTYPE_HIDDEN_AT_SITE_LEVEL 

Type is hidden at Site level

TCTYPE_HIDDEN_AT_PARENT_LEVEL 

Type is hidden at Parent level

TCTYPE_HIDDEN_AT_CURRENT_LEVEL 

Type is hidden at Current level

Definition at line 79 of file tctype.h.

Defines the supported operation input types. These types correspond to the OperationInput types defined in BMIDE and can be used as input of MetaModel operations.

Enumerator
TCTYPE_OPERATIONINPUT_CREATE 

Create operation input type

TCTYPE_OPERATIONINPUT_REVISE 

Revise operation input type

TCTYPE_OPERATIONINPUT_SAVEAS 

SaveAs operation input type

TCTYPE_OPERATIONINPUT_ANY 

Generic operation input type

Definition at line 151 of file tctype.h.

The options listed by the enum lets the user understand the context during a deferred save operation, especially when implementing PostAction extensions that have been manually moved.

Enumerator
TCTYPE_save_on_create 

Save operation in the context of Create

TCTYPE_save_on_saveas 

Save operation in the context of SaveAs

TCTYPE_save_on_revise 

Save operation in the context of Revise

TCTYPE_save_on_update 

Save operation in the context of Update

TCTYPE_unknown_operation_context 

Save operation in the context of Unknown

TCTYPE_save_on_clone 

Save operation in the context of Clone

Definition at line 163 of file tctype.h.

Function Documentation

TCCORE_API int TCTYPE_add_relation_property ( tag_t  type,
const char *  property_name,
tag_t  relation_type,
tag_t property_descriptor 
)
Deprecated:
It will be removed from Tc10.
From Tc8.3 onwards, please define the relation properties from BMIDE.

Creates a relation property descriptor and adds it to the list of properties that define the specified type. A "relation" property represents a relationship between an object of this type and an object or Objects of another type.

Parameters
type(I) The type
property_name(I) The name of the property to add. This is the name the property is internally referred to. The property can also have a presentation name which is displayed to the Teamcenter user interface. Go to Properties User Interface (PROP_UIF) for additional information about how to change the presentation name of the property.
relation_type(I) The tag of the relation type
property_descriptor(O) The tag of the new property descriptor
TCCORE_API int TCTYPE_add_runtime_array_property ( tag_t  type,
const char *  property_name,
PROP_value_type_t  value_type,
int  max_string_length,
int  max_number_elements,
tag_t property_descriptor 
)
Deprecated:
It will be removed from Tc10.
From Tc8.3 onwards, please define the runtime array properties from BMIDE.

Creates a run-time multi-valued array property descriptor and adds it to the list of properties that define the specified type. The term "multi-valued" indicates that the property can have fixed no. or unlimited no. of values associated with it. The term "run-time" indicates that this property derives its value at run-time, instead of storing it in the database.

Parameters
type(I) The type
property_name(I) The name of the property to add. This is the name that the property is internally referred to. The property can also have a presentation name which is displayed to the Teamcenter user interface. Go to Properties User Interface (PROP_UIF) for additional information about how to change the presentation name of the property.
value_type(I) The type of value this property holds (e.g., string, integer, logical). It will correspond to one of the value types defined by the PROP_type_t enumeration.
max_string_length(I) The maximum size of the parameter value_type of type PROP_string.
This parameter is ignored if the parameter value_type is an integer or logical.
max_number_elements(I) The maximum number of elements of the parameter value_type.
(-1 for unspecified (variable) no. of values , 1 for single value, greater than 1 for specifying the no. of values)
property_descriptor(O) The tag of the new property descriptor
TCCORE_API int TCTYPE_ask_available_relation_names ( tag_t  type,
int *  number_of_relations,
char ***  relation_display_names,
char ***  relation_actual_names 
)

Retrieves the display names and actual names of the available relations on a given type.

Parameters
type(I) The type on which available relations are requested.
number_of_relations(O) The number of available relations
relation_display_names(OF) number_of_relations The display names of available relations
relation_actual_names(OF) number_of_relations The actual names of available relations
TCCORE_API int TCTYPE_ask_available_relations ( tag_t  type,
int *  number_of_relations,
TCTYPE_availablerel_t **  available_relations 
)

Retrieves the list of available relations on a given type.

Parameters
type(I) The type on which available relations are requested.
number_of_relations(O) The number of available relations
available_relations(OF) number_of_relations The array of available relations
TCCORE_API int TCTYPE_ask_child_primary_types ( tag_t  type,
int *  number_of_child_types,
tag_t **  child_types 
)

Retrieves the list of child types of a given type.
Each of the returned child types is also a primary type.

Parameters
type(I) The type
number_of_child_types(O) The number of found child types
child_types(OF) number_of_child_types The list of found child types
TCCORE_API int TCTYPE_ask_child_types ( tag_t  type,
logical  for_same_class_only,
int *  number_of_child_types,
tag_t **  child_types 
)

Retrieves the list of immediate child types of a given type.

Note
The parameter for_same_class_only is used to scope what the returned list of subtypes will include.
  • If the value is "true", the returned list of child subtypes will include only child subtypes that are created for the same class as for the given type. The returned subtypes will be the subtypes that are one-level down in the type hierarchy from the given type.
  • If the value is "false" and the given type is a primary type, the returned list of subtypes will include the immediate subtypes for the same class as well as all primary types for the immediate subclasses of the class of the given type.
Parameters
type(I) The type
for_same_class_only(I) Flag indicating whether the scope of the search is limited to types for the same class
number_of_child_types(O) The number of found child types
child_types(OF) number_of_child_types The list of found child types
TCCORE_API int TCTYPE_ask_class_name ( tag_t  type,
char  type_class[TCTYPE_class_name_size_c+1] 
)
Deprecated:
It will be removed from Tc12.
From Tc10 onwards, please use TCTYPE_ask_class_name2

Asks the type for the name of the class that implements it.

Parameters
type(I) The type
type_class(O) The name of the class
TCCORE_API int TCTYPE_ask_class_name2 ( tag_t  type,
char **  type_class 
)

Asks the type for the name of the class that implements it.

Parameters
type(I) The type
type_class(OF) The name of the class
TCCORE_API int TCTYPE_ask_create_descriptor ( tag_t  type_tag,
tag_t creation_descriptor 
)

Retrieves the CreateInput Type object tag for the input Business Object.

Parameters
type_tag(I) The tag of the Business Object type
creation_descriptor(O) The tag of the associated CreateInput object
TCCORE_API int TCTYPE_ask_create_prop_descriptors ( tag_t  create_descriptor_tag,
int *  number_property_descriptors,
tag_t **  property_descriptor_tags,
int *  number_secondary_prop_names,
char ***  secondary_prop_names,
tag_t **  secondary_bo_type_tags,
logical **  is_required,
logical **  is_array,
int **  compounding_ctxts,
tag_t **  secondary_create_descriptor_tags 
)

Retrieves all the visible property descriptors and compound object data for the input CreateInput object type.

Returns
  • ITK_ok on success.
  • TYPE_no_find_type if the system is unable to find the corresponding ImanType object.
  • Potentially other errors.
Parameters
create_descriptor_tag(I) The tag for the create descriptor
number_property_descriptors(O) Number of property descriptor tags
property_descriptor_tags(OF) number_property_descriptors Array of tags for the property descriptors
number_secondary_prop_names(O) Number of secondary object property names
secondary_prop_names(OF) number_secondary_prop_names Array of secondary object property names
This string array is packed, which means that only the container needs to be deallocated through a call to MEM_free.
secondary_bo_type_tags(OF) number_secondary_prop_names Array of type tags for the secondary objects
is_required(OF) number_secondary_prop_names Array of logical values indicating the corresponding secondary object is required or not
is_array(OF) number_secondary_prop_names Array of logical values indicating the corresponding secondary object is array or not
compounding_ctxts(OF) number_secondary_prop_names Array of contexts for secondary objects creation
secondary_create_descriptor_tags(OF) number_secondary_prop_names Array of tags for secondary objects' create descriptors
TCCORE_API int TCTYPE_ask_deepcopydata ( tag_t  object,
TCTYPE_operation_input_t  operation_input,
int *  number_of_attached_objects,
tag_t **  deep_copy_data 
)

Retrieves the DeepCopyData tag(s) for the input object, a top-level object undergoing the operation type specified by opvar, such as SaveAs or Revise.

Parameters
object(I) The tag of the top-level object being revised or saved
operation_input(I) The operation type
number_of_attached_objects(O) The number of objects related to the top-level object through a relation or reference property
deep_copy_data(OF) number_of_attached_objects Array of the DeepCopyData tags
TCCORE_API int TCTYPE_ask_display_name ( tag_t  type,
char **  display_type_name 
)

Asks a type for its display name.

Parameters
type(I) The type
display_type_name(OF) The display name of the type
TCCORE_API int TCTYPE_ask_name ( tag_t  type,
char  type_name[TCTYPE_name_size_c+1] 
)
Deprecated:
It will be removed from Tc12.
From Tc10 onwards, please use TCTYPE_ask_name2

Asks a type for its name.

Parameters
type(I) The type
type_name(O) The name of the type
TCCORE_API int TCTYPE_ask_name2 ( tag_t  type,
char **  type_name 
)

Asks a type for its name.

Parameters
type(I) The type
type_name(OF) The name of the type
TCCORE_API int TCTYPE_ask_name_rule_patterns ( const char *  bo_name,
int *  number_property_names,
char ***  property_names,
int **  pattern_count,
int *  number_of_patterns,
char ***  patterns 
)

Retrieves the relevant name rule patterns for the properties of a given type.

Parameters
bo_name(I) Name of the BusinessObject
number_property_names(O) Number of properties having name rule patterns. This can be NULL
property_names(OF) number_property_names Names of properties having name rule patterns. This can be NULL
pattern_count(OF) number_property_names Array of pattern count for each of the above properties. This can be NULL
number_of_patterns(O) Total number of patterns for all the above properties. This can be NULL
patterns(OF) number_of_patterns All the patterns for all the above properties. This can be NULL
TCCORE_API int TCTYPE_ask_object_type ( tag_t  object,
tag_t type 
)

Asks an object for its type.

Parameters
object(I) The tag of the object
type(O) The tag of the type
TCCORE_API int TCTYPE_ask_object_type_with_stubs ( tag_t  object,
tag_t type 
)

Asks an object for its type. but honoring stubs as well

Parameters
object(I) The object
type(O) The type
TCCORE_API int TCTYPE_ask_object_types ( int  number_of_objects,
const tag_t objects,
tag_t **  types 
)

Retrieves the types of an array of objects without loading them.

Returns
ITK_ok always
Note
If any of the input objects is invalid or NULLTAG, the corresponding entry in types will be NULLTAG.
Parameters
number_of_objects(I) The number of objects in the input array
objects(I) The tags of the objects
types(OF) number_of_objects Object types
TCCORE_API int TCTYPE_ask_parent_type ( tag_t  type,
tag_t parent_type 
)

Retrieves the parent type tag of a given type.

Parameters
type(I) The type
parent_type(O) The parent type of the given type
TCCORE_API int TCTYPE_ask_property_by_display_name ( tag_t  type,
const char *  display_name,
tag_t property_descriptor 
)

Retrieves the property based on the specified type and the display name of the property for that type.

Returns
Parameters
type(I) The type
display_name(I) Display name of the property
property_descriptor(O) The property
TCCORE_API int TCTYPE_ask_property_by_name ( tag_t  type,
const char *  property_name,
tag_t property_descriptor 
)

Asks a type for its property descriptor that has the value of the parameter property_name as its name.

Parameters
type(I) The type
property_name(I) The name of the property
property_descriptor(O) The tag of the property descriptor
TCCORE_API int TCTYPE_ask_revise_descriptor ( tag_t  object_type,
tag_t revise_descriptor 
)

Retrieves the ReviseInput Type object tag for the input type.

Parameters
object_type(I) The type
revise_descriptor(O) The revise descriptor
TCCORE_API int TCTYPE_ask_save_operation_context ( TCTYPE_save_operation_context_t save_operation_context)

Retrieves the context during a deferred save operation

Parameters
save_operation_context(O) The context during a deferred save operation.
TCCORE_API int TCTYPE_ask_saveas_descriptor ( tag_t  type_tag,
tag_t save_as_descriptor 
)

Retrieves the SaveAsInput Type object tag for the input Business Object.

Parameters
type_tag(I) The tag of the Business Object type
save_as_descriptor(O) The tag of the associated SaveAs object
TCCORE_API int TCTYPE_ask_saveas_prop_descriptors ( tag_t  saveas_descriptor_tag,
int *  number_prop_descriptor_tags,
tag_t **  prop_decriptor_tags 
)

Retrieves all the visible property descriptors for the input SaveAsInput object type.

Returns
  • ITK_ok on success.
  • TYPE_no_find_type if the system is unable to find the corresponding ImanType object.
  • Potentially other errors.
Parameters
saveas_descriptor_tag(I) The tag for the saveas descriptor
number_prop_descriptor_tags(O) Number of property descriptor tags
prop_decriptor_tags(OF) number_prop_descriptor_tags Array of tags for the property descriptors
TCCORE_API int TCTYPE_ask_subtypes ( tag_t  type,
logical  for_same_class_only,
int *  n_subtypes,
tag_t **  subtypes 
)

Retrieves a list of subtypes of a given type.

Note
The parameter for_same_class_only is used to scope what the returned list of subtypes will include.
  • If the value is "true", the returned list of subtypes will include only subtypes that are created for the same class as for the given type.
  • If the value is "false" and the given type is a primary type, the returned list of subtypes will include subtypes for the same class as well as all types for each subclass of the class of the given type.
Parameters
type(I) A type
for_same_class_only(I) Indicates whether the scope of the search is limited to types for the same class
n_subtypes(O) Number of subtypes found
subtypes(OF) n_subtypes The found types
TCCORE_API int TCTYPE_ask_subtypes_with_exclusions ( tag_t  type,
logical  for_same_class_only,
int  number_exclusion_bo_names,
const char **  exclusion_bo_names,
int *  number_of_subtypes,
tag_t **  subtypes 
)

Retrieves a list of subtypes for the given type.
The given exclusion list is used to exclude the subtype names from the output.

Returns
Parameters
type(I) A type
for_same_class_only(I) Flag indicating whether the scope of the search is limited to types of the same class
number_exclusion_bo_names(I) Number of the Business Object names to be excluded from output
exclusion_bo_names(I) Array of names for the Business Objects to be excluded from output
number_of_subtypes(O) Number of found types
subtypes(OF) number_of_subtypes Array of tags for the found subtypes
TCCORE_API int TCTYPE_ask_target_deepcopydata ( tag_t  object_tag,
int *  number_attached_objects,
tag_t **  deep_copy_data_tags 
)
Deprecated:
This function is deprecated in Tc11.2.2 and will be removed in a future release.
Instead, use TCTYPE_ask_deepcopydata with the value TCTYPE_OPERATIONINPUT_SAVEAS for the parameter "operation_input".

Retrieves the DeepCopyData tag for the input Business Object.

Parameters
object_tag(I) The object tag
number_attached_objects(O) The number of attached objects
deep_copy_data_tags(OF) number_attached_objects Tags for the Deep Copy Data
TCCORE_API int TCTYPE_ask_type ( const char *  type_name,
tag_t type 
)

Retrieves the type tag from the provided type name.

Returns
Parameters
type_name(I) The name of the type
type(O) The found type
TCCORE_API int TCTYPE_bulk_create_objects ( const int  n_objects,
const tag_t create_inputs,
tag_t **  objects 
)

Creates objects in bulk using set-based implementation.

Returns
Parameters
n_objects(I) Number of CreateInput objects.
create_inputs(I) n_objects The array of CreateInput objects.
objects(OF) n_objects The created objects.
TCCORE_API int TCTYPE_bulk_revise_objects ( const int  n_bulk_copy_inputs,
const TCTYPE_bulk_copy_input_t bulk_copy_inputs,
tag_t **  revised_objects 
)

Revises the source objects in bulk using set-based implementation.
If any of the source objects being revised does not have set-based implementation for the Types involved as a part of processing its deep copy data for the Revise operation, the set-based processing is aborted and all the source objects are revised using object-based implementation.
In this case, ensure that every input TCTYPE_bulk_copy_input_t object is relevant to the operation type, TCTYPE_OPERATIONINPUT_REVISE.

Returns
Parameters
n_bulk_copy_inputs(I) Number of TCTYPE_bulk_copy_input_t objects.
bulk_copy_inputs(I) n_bulk_copy_inputs The array of TCTYPE_bulk_copy_input_t objects.
revised_objects(OF) n_bulk_copy_inputs The revised objects.
TCCORE_API int TCTYPE_bulk_saveas_objects ( const int  n_bulk_copy_inputs,
const TCTYPE_bulk_copy_input_t bulk_copy_inputs,
tag_t **  copied_objects 
)

Copies the source objects in bulk using set-based implementation.
If any of the source objects being copied does not have set-based implementation for the Types involved as a part of processing its deep copy data for the SaveAs operation, the set-based processing is aborted and all the source objects are copied using object-based implementation.
In this case, ensure that every input TCTYPE_bulk_copy_input_t object is relevant to the operation type, TCTYPE_OPERATIONINPUT_SAVEAS.

Returns
Parameters
n_bulk_copy_inputs(I) Number of TCTYPE_bulk_copy_input_t objects.
bulk_copy_inputs(I) n_bulk_copy_inputs The array of TCTYPE_bulk_copy_input_t objects.
copied_objects(OF) n_bulk_copy_inputs The copied objects.
TCCORE_API int TCTYPE_construct_bulk_copy_inputs ( const int  n_source_objects,
const tag_t source_objects,
const TCTYPE_operation_input_t  operation_type,
TCTYPE_bulk_copy_input_t **  bulk_copy_inputs 
)

Constructs TCTYPE_bulk_copy_input_t objects corresponding to input list of source objects to be operated on.

Returns
Parameters
n_source_objects(I) Number of source objects.
source_objects(I) n_source_objects The array of source objects.
operation_type(I) The operation type. Only TCTYPE_OPERATIONINPUT_REVISE and TCTYPE_OPERATIONINPUT_SAVEAS are valid.
bulk_copy_inputs(OF) n_source_objects The array of TCTYPE_bulk_copy_input_t objects.
The array is packed, which means that the memory is to be deallocated by calling MEM_free on the container only.
TCCORE_API int TCTYPE_construct_create_input ( tag_t  type,
tag_t create_input 
)

Constructs a CreateInput object for the input Business Object.
Use this CreateInput object to hold input data for the creation of an object.

Parameters
type(I) The type of the Business Object
create_input(O) The CreateInput object
TCCORE_API int TCTYPE_construct_operationinput ( tag_t  target_object_type,
TCTYPE_operation_input_t  operation_input,
tag_t target_save_as_input 
)

Constructs a SaveAsInput object for the input Business Object.
Use this SaveAsInput object to hold input data for the creation of an object.

Parameters
target_object_type(I)
operation_input(I)
target_save_as_input(O)
TCCORE_API int TCTYPE_construct_saveasinput ( tag_t  type,
tag_t save_as_input 
)

Constructs a SaveAsInput object for the input Business Object.
Use this SaveAsInput object to hold input data for the creation of an object.

Parameters
type(I) The type of the Business Object
save_as_input(O) The SaveAsInput object
TCCORE_API int TCTYPE_create_object ( tag_t  create_input,
tag_t bo 
)

Creates an object according to the creation data in the CreateInput object

Parameters
create_input(I) The tag of the CreateInput descriptor
bo(O) The tag of the created Business Object
TCCORE_API int TCTYPE_create_objects ( int  n_bulks,
int *  quantities,
tag_t create_inputs,
int *  n_objects,
tag_t **  objects 
)

Creates objects of the given quantity for the specified types, according to the creation data in the CreateInput objects.
The supported types are Item, ItemRevision, Dataset and Form
If any error is detected, no objects will be created.

Note
The references to the created compound objects are cleared
Returns
Parameters
n_bulks(I) Number of CreateInput objects
quantities(I) n_bulks Array of number of objects to create for each CreateInput object
create_inputs(I) n_bulks Array of CreateInput objects
n_objects(O) Number of created objects
objects(OF) n_objects Array of created objects
TCCORE_API int TCTYPE_create_single_objects ( int  n_bulks,
const tag_t create_inputs,
int *  n_objects,
tag_t **  objects 
)

Creates single objects of the specified types, according to the creation data in the CreateInput objects.
The supported types are Item, ItemRevision, Dataset and Form
If any error is detected, no objects will be created.

Returns
Parameters
n_bulks(I) Number of CreateInput objects
create_inputs(I) Array of CreateInput objects
n_objects(O) Number of objects created
objects(OF) n_objects Array of objects created
TCCORE_API int TCTYPE_delete_operation_input_objects ( const int  n_bulk_copy_inputs,
const TCTYPE_bulk_copy_input_t bulk_copy_inputs 
)

Deletes the operation descriptor and deep copy data objects held by TCTYPE_bulk_copy_input_t objects.
Ensure this is called only after performing the set-based "saveAs" or "revise" operation.
Ensure this is followed immediately by a call to MEM_free on the array of TCTYPE_bulk_copy_input_t objects since the objects pointed to have just been deleted by this ITK.

int ifail = ITK_ok;
try
{
ResultCheck rStat;
....
const int n_source_objects = 3;
.... // create a valid tag_t*, source_objects to hold 3 valid objects to revise.
TCTYPE_bulk_copy_input_t* pBulkCopyInput = 0;
rStat = TCTYPE_construct_bulk_copy_inputs( n_source_objects,
source_objects,
& pBulkCopyInput ); // retrieve 3 valid TCTYPE_bulk_copy_input_t objects for set-based revise operation.
....
tag_t* revised_objects = 0;
rStat = TCTYPE_bulk_revise_objects( n_source_objects, pBulkCopyInput,
& revised_objects ); // perform the set-based revise operation using TCTYPE_bulk_copy_input_t
.... // objects held by pBulkCopyInput.
....
rStat = TCTYPE_delete_operation_input_objects( n_source_objects,
pBulkCopyInput ); // this call will delete the operation descriptor and
// deep copy data objects held by pBulkCopyInput.
MEM_free( pBulkCopyInput ); // MEM_free will deallocate memory blocks held by pBulkCopyInput.
pBulkCopyInput = 0;
....
}
catch( const IFail& ex )
{
ifail = ex.ifail();
}
return ifail;
Returns
Parameters
n_bulk_copy_inputs(I) Number of TCTYPE_bulk_copy_input_t objects.
bulk_copy_inputs(I) n_bulk_copy_inputs The array of TCTYPE_bulk_copy_input_t objects.
TCCORE_API int TCTYPE_exit_module ( )
TCCORE_API int TCTYPE_extent ( int *  number_of_types,
tag_t **  types 
)
Note
To ensure that all types are loaded and types is not needed, call TCTYPE_is_extent_already_called first to see if TCTYPE_extent is already called. Call TCTYPE_extent only if is has not been called
Parameters
number_of_types(O) The number of types found
types(OF) number_of_types The found types (NULL if none found)
TCCORE_API int TCTYPE_extent_by_category ( TCTYPE_category_t  type_category,
int *  number_of_types,
tag_t **  types 
)

Retrieves business object types for the specified type category.
If the category is TCTYPE_All or TCTYPE_Root, it returns all the business object types of runtime, persistent and dynamic types.

Returns
  • ITK_ok on success.
  • Possibly other POM errors coming from query executions to retrieve business objects from the database.
Parameters
type_category(I) The type category
number_of_types(O) The number of types found
types(OF) number_of_types The found types (NULL if none found)
TCCORE_API int TCTYPE_find_alltypes_for_class ( const char *  class_name,
int *  number_of_types,
tag_t **  types 
)
Parameters
class_name(I)
number_of_types(O)
types(OF) number_of_types
TCCORE_API int TCTYPE_find_displayable_business_objects ( const char *  bo_name,
int  number_exclusion_bo_names,
const char **  exclusion_bo_names,
int *  number_displayable_types,
tag_t **  displayable_types 
)

Finds the types for the Business Object that are displayable to the logged-in user in the object creation dialog.

Parameters
bo_name(I) Name of the Business Object
number_exclusion_bo_names(I) number of the Business Object names to be excluded
exclusion_bo_names(I) Array of the Business Object names to be excluded
number_displayable_types(O) Number of the displayable types
displayable_types(OF) number_displayable_types Array of the displayable type tags
TCCORE_API int TCTYPE_find_displayable_types_for_class ( const char *  class_name,
logical  include_subclasses,
int *  number_of_types,
tag_t **  types 
)

Finds the types implemented by the given class that are displayable to the login user in the object creation dialog. If the value of include_subclasses is TRUE, then the function finds the displayable types implemented by the subclasses of the given class also.

Parameters
class_name(I) Name of the class
include_subclasses(I) TRUE: Find displayable types implemented by the given class and its subclasses
FALSE: Find displayable types implemented by the given class only.
number_of_types(O) The number of types found
types(OF) number_of_types The found types
TCCORE_API int TCTYPE_find_displayable_types_for_class_and_accessor ( const char *  class_name,
tag_t  accessor_tag,
logical  include_subclasses,
int *  number_of_types,
tag_t **  types 
)

Finds the types implemented by the given class that are displayable to the given accessor in the object creation dialog. If the value of include_subclasses is TRUE, then the function finds the displayable types implemented by the subclasses of the given class also.

Parameters
class_name(I) Name of the class
accessor_tag(I) Tag of the accessor (Group, Role-in-Group)
include_subclasses(I) TRUE: Find displayable types, for the given accessor, implemented by the given class and its subclasses
FALSE: Find displayable types, for the given accessor, implemented by the given class only.
number_of_types(O) The number of types found
types(OF) number_of_types The found types
TCCORE_API int TCTYPE_find_hidden_types_for_class_and_accessor ( const char *  class_name,
tag_t  accessor_tag,
logical  include_subclasses,
int *  number_of_types,
tag_t **  types,
TCTYPE_display_t **  details 
)

Finds the types implemented by the given class that are not displayable to the given accessor in the object creation dialog. If the value of include_subclasses is TRUE, then the function finds the non-displayable types (hidden types) implemented by the subclasses of the given class also.

Parameters
class_name(I) Name of the class
accessor_tag(I) Tag of the accessor ( Group, Role-in-Group )
include_subclasses(I) TRUE: Find non-displayable types, for the given accessor, implemented by the given class and its subclasses
FALSE: Find non-displayable types, for the given accessor, implemented by the given class only.
number_of_types(O) The number of types found
types(OF) number_of_types The found types
details(OF) number_of_types Tells if the type is non-displayable because of system-level rule or site-wide rule or parent-level rule or the rules defined at the given accessor level.
TCCORE_API int TCTYPE_find_type ( const char *  type_name,
const char *  class_name,
tag_t type 
)

Finds the type that has the type_name and class_name provided.

Returns
ITK_ok always, even if the type is not found.
Note
The caller needs to check the value returned in the parameter type_tag.
Parameters
type_name(I) The name of the type
class_name(I) The name of the class. A null or a wrong name is allowed.
In that case, if a non-zero length type name is specified TCTYPE_find_type will search for the type tag for the given type name.
type(O) The tag of the found type (NULLTAG if not found)
TCCORE_API int TCTYPE_find_types_for_class ( const char *  class_name,
int *  number_of_types,
tag_t **  types 
)

Finds types implemented by the given class.

Parameters
class_name(I) The name of the type
number_of_types(O) The number of types found
types(OF) number_of_types The found types (NULL if none found)
TCCORE_API int TCTYPE_free_deepcopydata ( int  number_deep_copy_data,
tag_t deep_copy_data 
)

Deletes the Deep Copy Data objects.

Returns
ITK_ok always
Parameters
number_deep_copy_data(I)
deep_copy_data(I)
TCCORE_API int TCTYPE_get_OperationInput_DisplayValues ( tag_t  operation_input,
char *  property_name,
int *  number_of_display_values,
char ***  display_values,
logical **  is_null 
)

Retrieves the display value for a property on OperationInput

Returns
Parameters
operation_input(I) The Operation Input Object
property_name(I) Name of the Property on the Input Object
number_of_display_values(O) The number of display values found
display_values(OF) number_of_display_values Array of display values for the property.
This string array is packed and please use MEM_free after its use.
is_null(O) number_of_display_values Array of logicals: "true" if the display value is null
TCCORE_API int TCTYPE_init_module ( )

Initializes the TCTYPE module. This function can be called in ITK_user_main before using any other TCTYPE module functions. Currently, it is called during Teamcenter startup and before installing types in the install_types utility.

TCCORE_API logical TCTYPE_is_extent_already_called ( )

Finds all types in the database.

TCCORE_API int TCTYPE_is_type_of ( tag_t  type,
tag_t  parent_type,
logical answer 
)

Determines if a given type is the same as or a subtype of the input parent type.

Returns
Parameters
type(I) The tag for the type to compare
parent_type(I) The tag for a parent type to check if type is its subtype
answer(O) Indicates if the type is the same as or subtype of the parent_type
TCCORE_API int TCTYPE_is_type_of_as_str ( tag_t  type,
const char *  parent_type_name,
logical answer 
)

Determines if a provided type (through argument type) is a sub-type of another one (parameter parent_type_name).
The value of the parameter answer will also be true if the two types are identical.

Returns
Parameters
type(I) The type
parent_type_name(I) Parent type name
answer(O) Flag indicating whether type is of the same type as parent_type_name or one of its sub-types
TCCORE_API int TCTYPE_list_displayable_properties ( tag_t  type,
int *  number_of_properties,
tag_t **  property_descriptors 
)

Retrieves the list of displayable properties on a given type.

Parameters
type(I) The tag of the type on which displayable properties are requested.
number_of_properties(O) The number of displayable properties
property_descriptors(OF) number_of_properties Property Descriptor tags for the displayable properties
TCCORE_API int TCTYPE_list_primary_rtypes ( tag_t  primary_type,
int *  number_relation_types,
tag_t **  relation_types 
)

Lists all types of GRM relation which can have primary objects of this type.
This is used to populate the Revision Information dialog box. The Revision Information dialog box displays all GRM relation types for a particular Item or Item Revision. You can then show or hide these in Workspace.
This list is built up by finding all <rel_type_name>_relation_primary preferences that specify this type as a valid primary.

Parameters
primary_type(I) Tag of the object type
number_relation_types(O) Number of relation types
relation_types(OF) number_relation_types Array of relation type tags
TCCORE_API int TCTYPE_list_properties ( tag_t  type,
int *  n_properties,
tag_t **  property_descriptors 
)

Asks a type for a list of the property descriptors that define it. If there is an error, num is set to 0 and pd_tags is set to NULL.

Parameters
type(I) The type
n_properties(O) The number of property descriptors returned
property_descriptors(OF) n_properties The tags of the property descriptors that define the type
TCCORE_API int TCTYPE_load_all_delayed_types ( )

Loads all delay types/classes

TCCORE_API int TCTYPE_property_exists ( tag_t  type,
const char *  property_name,
logical verdict 
)

Returns verdict = true if the input property exists on the input type. It does not return PROP_not_found if the property is not found on the input type.

Returns
Parameters
type(I) The type
property_name(I) The name of the property
verdict(O) Does the property exist
TCCORE_API int TCTYPE_refresh ( tag_t  type,
logical  lock_or_not 
)

Refreshes a type that has been created.

Parameters
type(I) The type to refresh
lock_or_not(I) Indicates whether to lock the type. True is yes.
TCCORE_API int TCTYPE_register_properties ( USER_prop_init_entry_t user_types_methods,
int  array_size 
)
Deprecated:
It will be removed from Tc10.
From Tc8.3 onwards, please register the properties from BMIDE.

This function is an internal call used in $TC_ROOT/sample/properties/user_init.c and is used to register the methods against the specified types (as indicated in user_types_methods in user_init.c) against message TCTYPE_init_user_props_msg. This function is only called in user_init.c and should not be used elsewhere. To register methods against a type, add an entry to the user_types_methods structure.

Parameters
user_types_methods(I) Array is used for registering Methods that initialize properties on types. Add an entry in this array to indicate the object Type. The array should be terminated with a NULL entry.
array_size(I) Size of the user_types_methods array
TCCORE_API int TCTYPE_revise_objects ( int  number_target_objects,
tag_t target_object,
tag_t revise_input,
int *  number_attached_objs,
tag_t deep_copy_data,
tag_t **  target_copy,
int **  ifails 
)

Revises the specified input objects according to the revise data in the ReviseInput objects and deep copies the attached objects based on the DeepCopyData provided.

Returns
ITK_ok always
Note
It is necessary to check the returned array returned in the parameter ifails to determine the error status of a particular object.
Possible values for the array in the parameter ifails are:
Parameters
number_target_objects(I) The number of objects to be revised
target_object(I) number_target_objects Array of target objects (objects being revised)
revise_input(I) number_target_objects Array of ReviseInput tags for the target objects, containing user input
number_attached_objs(I) number_target_objects Array of ints in which the value of nth element in num_attached_objs is the number of the objects attached to nth element in target_object_tags
deep_copy_data(I) Array of DeepCopyData tags for the attached objects
target_copy(OF) number_target_objects Array of tags of the revised objects
ifails(OF) number_target_objects Array of ifail errors for the top-level target objects
TCCORE_API int TCTYPE_saveas_object ( tag_t  target_object,
tag_t  save_as_input,
int  number_of_attached_objects,
tag_t deep_copy_data,
tag_t target_copy 
)

Performs a SaveAs operation on the specified object according to the SaveAs data in the SaveAsInput objects and deep copies the attached objects based upon the DeepCopyData provided. DeepCopyData for an object may be null if no Deep Copy Rule is defined for its type.

Returns
Note
An exception will be thrown if invalid tags are provided in the parameters target_object_tag or save_as_input_tag.
Parameters
target_object(I) The tag of the target object (objects being saved)
save_as_input(I) The tag of the SaveAsInput for the target object, containing user input
number_of_attached_objects(I) The number of objects attached to the target object
deep_copy_data(I) Array of DeepCopyData tags for the attached objects
target_copy(O) The tag of the copy of the top-level object saved
TCCORE_API int TCTYPE_set_create_display_value ( tag_t  create_input,
char *  property_name,
int  number_of_display_values,
const char **  display_values 
)

Sets the display values for a property on a CreateInput descriptor.

Parameters
create_input(I) The CreateInput descriptor
property_name(I) The property name
number_of_display_values(I) The number of the secondary Business Objects to set display value on
display_values(I) Array of the display values.
Each display value is assigned to a secondary Business Object under the parameter property_name.
The parameter number_of_display_values is normally equal to 1.
The parameter number_of_display_values can be greater than 1 only if the property is a VLA and multiple secondary Business Objects need to be created
TCCORE_API int TCTYPE_set_OperationInput_DisplayValue ( tag_t  operation_input,
char *  property_name,
const char **  display_values 
)
Deprecated:
It will be removed from Tc13.
From Tc10.1.4 onwards, please use type-safe AOM set ITK APIs such as AOM_set_value_string, and AOM_set_value_strings, or use C++ set APIs such as setString and setStringArray, based on the value-type of the property.

Sets display value(s) for a property on OperationInput type object. Only single array of char* for display_values is supported (char *display_values[1]). For single-valued properties, pointer to the display value is expected as input, while pointer to a string with comma-separated display values is expected as input for array-type properties.

Parameters
operation_input(I) The OperationInput type object
property_name(I) Name of the property
display_values(I) Pointer to the display value(s) to set for the property_name property
TCCORE_API int TCTYPE_UIF_find_displayable_business_objects ( const char *  bo_name,
int  number_exclusion_bo_names,
const char **  exclusion_bo_names,
int *  number_displayable_types,
tag_t **  displayable_types,
char ***  type_names,
char ***  display_type_names 
)

Finds the types for the Business Object that are displayable to the login user in the object creation dialog.
In addition we get the real and display type names for the displayable types for the connection locale.

Parameters
bo_name(I) Name of the Business Object
number_exclusion_bo_names(I) Number of the Business Object names to be excluded
exclusion_bo_names(I) Array of the Business Object names to be excluded
number_displayable_types(O) Number of the displayable types
displayable_types(OF) number_displayable_types Array of the displayable type tags
type_names(OF) number_displayable_types Array of type internal names
display_type_names(OF) number_displayable_types Array of type display names
TCCORE_API int TCTYPE_UIF_find_displayable_types_for_class ( const char *  class_name,
logical  include_subclasses,
int *  number_of_types,
tag_t **  types,
char ***  type_names,
char ***  display_type_names 
)

Finds the types implemented by the given class that are displayable to the login user in the object creation dialog. If the value of include_subclasses is TRUE, then the function finds the displayable types implemented by the subclasses of the given class also. In addition we get the real and display type names for the displayable types for the connection locale.

Parameters
class_name(I) Name of the class
include_subclasses(I) TRUE: Find displayable types implemented by the given class and its subclasses
FALSE: Find displayable types implemented by the given class only.
number_of_types(O) The number of types found
types(OF) number_of_types The found types
type_names(OF) number_of_types The type names
display_type_names(OF) number_of_types The type display names
TCCORE_API int TCTYPE_UIF_find_generically_creatable_business_objects ( const char *  bo_name,
int  number_exclusion_bo_names,
const char **  exclusion_bo_names,
int *  number_displayable_types,
tag_t **  displayable_types,
char ***  type_names,
char ***  display_type_names 
)

Finds the types for the Business Object that are displayable to the login user in object creation dialogs and configured in BMIDE to be displayed by generic create dialogs.
This function behaves similarly to TCTYPE_UIF_find_displayable_business_objects, except that it also excludes types on which the Fnd0EnableUsageOfDialog constant value on the CreateInput is false.
It also retrieves the internal and display type names for the displayable types. The display names are in the server locale.

Returns
Parameters
bo_name(I) Internal name of the Business Object
number_exclusion_bo_names(I) Number of the Business Object names to be excluded from the returned types
exclusion_bo_names(I) Array of the Business Object names to be excluded from the returned types
number_displayable_types(O) Number of the displayable types
displayable_types(OF) number_displayable_types Array of the displayable type tags
type_names(OF) number_displayable_types Array of type internal names
display_type_names(OF) number_displayable_types Array of type display names