ITK Function Reference
(V10000.1.0.60_20160308.00)
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
tccore
tctype.h
Go to the documentation of this file.
1
/*==============================================================================
2
Copyright (c) 2003-2005,2008 UGS Corporation
3
Unpublished - All Rights Reserved
4
==============================================================================*/
5
13
/* */
14
15
#ifndef TCTYPE_H
16
#define TCTYPE_H
17
18
#include <
property/prop.h
>
19
#include <
tccore/tctype_msg.h
>
20
#include <
user_exits/user_exits.h
>
21
#include <tccore/libtccore_exports.h>
22
47
#define TC_set_id_msg "IMAN_set_id"
48
#define TC_set_name_msg "IMAN_set_name"
49
#define TC_set_description_msg "IMAN_set_description"
50
#define TC_set_type_msg "IMAN_set_type"
51
#define TC_set_type_directly_msg "IMAN_set_type_directly"
52
60
#define TCTYPE_name_size_c 32
61
#define TCTYPE_class_name_size_c 27
62
70
#define TCTYPE_DISABLE_UPDATE_LIST 0
71
#define TCTYPE_ENABLE_UPDATE_LIST 1
72
#define TCTYPE_SUSPEND_UPDATE_LIST 2
73
#define TCTYPE_RESUME_UPDATE_LIST 3
74
78
#define TCTYPE_UPDATE_ALL_PROPS "_update_all_"
79
80
typedef
enum
TCTYPE_display_e
{
81
TCTYPE_DISPLAYABLE
=0,
82
TCTYPE_HIDDEN_AT_SYSTEM_LEVEL
,
83
TCTYPE_HIDDEN_AT_SITE_LEVEL
,
84
TCTYPE_HIDDEN_AT_PARENT_LEVEL
,
85
TCTYPE_HIDDEN_AT_CURRENT_LEVEL
86
}
TCTYPE_display_t
;
87
97
typedef
enum
TCTYPE_category_e
{
98
TCTYPE_Persistent
,
99
TCTYPE_Runtime
,
100
TCTYPE_OperationInput
,
101
TCTYPE_Root
,
102
TCTYPE_Dynamic
,
103
TCTYPE_All
104
}
TCTYPE_category_t
;
105
106
typedef
struct
TCTYPE_availablerel_s
107
{
108
char
*
actualName
;
109
char
*
displayName
;
110
}
TCTYPE_availablerel_t
;
111
115
typedef
enum
TCTYPE_compounding_ctxt_e
116
{
117
TCTYPE_compounding_ctxt_unknown
,
118
TCTYPE_compounding_ctxt_relation
,
119
TCTYPE_compounding_ctxt_secondary
120
}
TCTYPE_compounding_ctxt_t
;
121
126
typedef
enum
TCTYPE_operation_input_e
127
{
128
TCTYPE_OPERATIONINPUT_CREATE
,
129
TCTYPE_OPEARTIONINPUT_REVISE
,
130
TCTYPE_OPERATIONINPUT_SAVEAS
,
131
TCTYPE_OPERATIONINPUT_ANY
132
}
TCTYPE_operation_input_t
;
133
138
typedef
enum
TCTYPE_save_operation_context_e
139
{
140
TCTYPE_save_on_create
,
141
TCTYPE_save_on_saveas
,
142
TCTYPE_save_on_revise
,
143
TCTYPE_save_on_update
,
144
TCTYPE_save_on_clone
,
145
TCTYPE_unknown_operation_context
146
}
TCTYPE_save_operation_context_t
;
147
148
#ifdef __cplusplus
149
extern
"C"
{
150
#endif
151
158
extern
TCCORE_API
int
TCTYPE_init_module
();
159
160
extern
TCCORE_API
int
TCTYPE_exit_module
();
161
165
extern
TCCORE_API
int
TCTYPE_refresh
(
166
tag_t
type_tag,
167
logical
lock_or_not
168
);
169
176
extern
TCCORE_API
int
TCTYPE_ask_name
(
177
tag_t
type_tag,
178
char
type_name[
TCTYPE_name_size_c
+1]
179
);
180
184
extern
TCCORE_API
int
TCTYPE_ask_name2
(
185
tag_t
type_tag,
186
char
**type_name
187
);
188
195
extern
TCCORE_API
int
TCTYPE_ask_type
(
196
const
char
* type_name,
197
tag_t
* type_tag
198
);
199
200
204
extern
TCCORE_API
int
TCTYPE_ask_display_name
(
205
tag_t
type_tag,
206
char
** display_type_name
207
);
208
215
extern
TCCORE_API
int
TCTYPE_ask_class_name
(
216
tag_t
type_tag,
217
char
type_class[
TCTYPE_class_name_size_c
+1]
218
);
219
223
extern
TCCORE_API
int
TCTYPE_ask_class_name2
(
224
tag_t
type_tag,
225
char
**type_class
226
);
227
231
extern
TCCORE_API
int
TCTYPE_ask_object_type
(
232
tag_t
obj_tag,
233
tag_t
* type_tag
234
);
235
243
extern
TCCORE_API
int
TCTYPE_ask_object_types
(
244
int
number_of_objects,
245
const
tag_t
* obj_tags,
246
tag_t
** types
247
);
248
253
extern
TCCORE_API
int
TCTYPE_ask_object_type_with_stubs
(
254
tag_t
obj_tag,
255
tag_t
* type_tag
256
);
257
258
265
extern
TCCORE_API
int
TCTYPE_find_type
(
266
const
char
* type_name,
267
const
char
* class_name,
268
tag_t
* type_tag
269
);
270
274
extern
TCCORE_API
int
TCTYPE_find_types_for_class
(
275
const
char
* class_name,
276
int
* number_of_types,
277
tag_t
** type_tags
278
);
279
285
extern
TCCORE_API
int
TCTYPE_find_displayable_types_for_class
(
286
const
char
* class_name,
287
logical
include_subclasses,
291
int
* number_of_types,
292
tag_t
** type_tags
293
);
294
301
extern
TCCORE_API
int
TCTYPE_UIF_find_displayable_types_for_class
(
302
const
char
* class_name,
303
logical
include_subclasses,
307
int
* number_of_types,
308
tag_t
** type_tags,
309
char
*** type_names,
310
char
*** display_type_names
311
);
312
319
extern
TCCORE_API
int
TCTYPE_find_displayable_types_for_class_and_accessor
(
320
const
char
* class_name,
321
tag_t
accessor_tag,
322
logical
include_subclasses,
326
int
* number_of_types,
327
tag_t
** type_tags
328
);
329
337
extern
TCCORE_API
int
TCTYPE_find_hidden_types_for_class_and_accessor
(
338
const
char
* class_name,
339
tag_t
accessor_tag,
340
logical
include_subclasses,
344
int
* number_of_types,
345
tag_t
** type_tags,
346
TCTYPE_display_t
** details
349
);
350
351
extern
TCCORE_API
int
TCTYPE_find_alltypes_for_class
(
352
const
char
* class_name,
353
int
* number_of_types,
354
tag_t
** type_tags
355
);
356
360
extern
TCCORE_API
logical
TCTYPE_is_extent_already_called
();
361
362
/* Note:If you want to make sure all types are loaded and don't need the type_tags, call TCTYPE_is_extent_already_called
363
first to see if TCTYPE_extent is already called. Call TCTYPE_extent only if is has not been called */
364
extern
TCCORE_API
int
TCTYPE_extent
(
365
int
* number_of_types,
366
tag_t
** type_tags
367
);
368
369
374
extern
TCCORE_API
int
TCTYPE_list_properties
(
375
tag_t
type_tag,
376
int
* num,
377
tag_t
** pd_tags
378
);
379
383
extern
TCCORE_API
int
TCTYPE_ask_property_by_name
(
384
tag_t
type_tag,
385
const
char
* prop_name,
386
tag_t
* pd_tag
387
);
388
401
extern
TCCORE_API
int
TCTYPE_property_exists
(
402
tag_t
type_tag,
403
const
char
* prop_name,
404
logical
* verdict
405
);
406
411
extern
TCCORE_API
int
TCTYPE_ask_property_by_display_name
(
412
tag_t
type_tag,
413
const
char
* disp_name,
414
tag_t
* pd_tag
415
);
416
425
extern
TCCORE_API
int
TCTYPE_add_runtime_property
(
426
tag_t
type_tag,
427
const
char
* prop_name,
433
PROP_value_type_t
valuetype,
436
int
maxstrlen,
438
tag_t
* pd_tag
439
);
440
450
extern
TCCORE_API
int
TCTYPE_add_runtime_array_property
(
451
tag_t
type_tag,
452
const
char
* prop_name,
458
PROP_value_type_t
valuetype,
461
int
maxstrlen,
463
int
maxnumelements,
465
tag_t
* pd_tag
466
);
467
475
extern
TCCORE_API
int
TCTYPE_add_relation_property
(
476
tag_t
type_tag,
477
const
char
* prop_name,
483
tag_t
rel_type,
484
tag_t
* pd_tag
485
);
486
496
extern
TCCORE_API
int
TCTYPE_list_primary_rtypes
(
497
tag_t
primary_type,
498
int
* n_rtypes,
499
tag_t
** rtypes
500
);
501
512
extern
TCCORE_API
int
TCTYPE_register_properties
(
513
USER_prop_init_entry_t
* user_types_methods,
517
int
array_size
518
);
519
523
extern
TCCORE_API
int
TCTYPE_list_displayable_properties
(
524
tag_t
type_tag,
525
int
* num,
526
tag_t
** pd_tags
527
);
528
529
extern
TCCORE_API
int
TCTYPE_ask_available_relations
(
530
tag_t
type_tag,
531
int
* relationCount,
532
TCTYPE_availablerel_t
** relationNames
533
);
534
535
extern
TCCORE_API
int
TCTYPE_ask_available_relation_names
(
536
tag_t
type_tag,
537
int
* relationNameCount,
538
char
*** relationDisplayNames,
539
char
*** relationActualNames
540
);
541
545
extern
TCCORE_API
int
TCTYPE_ask_parent_type
(
546
tag_t
type_tag,
547
tag_t
*parent_type_tag
548
);
549
559
extern
TCCORE_API
int
TCTYPE_is_type_of
(
560
tag_t
type,
561
tag_t
parent_type,
562
logical
* answer
563
);
564
575
extern
TCCORE_API
int
TCTYPE_is_type_of_as_str
(
576
tag_t
type_tag,
577
const
char
* parent_type_name,
578
logical
* answer
579
);
580
589
extern
TCCORE_API
int
TCTYPE_ask_subtypes
(
590
tag_t
type_tag,
591
logical
forSameClassOnly,
592
int
* numOfSubtypes,
593
tag_t
** listOfSubtypes
594
);
595
607
extern
TCCORE_API
int
TCTYPE_ask_subtypes_with_exclusions
(
608
tag_t
type_tag,
609
logical
for_same_class_only,
610
int
n_exclusion_bo_names,
611
const
char
** exclusion_bo_names,
612
int
* num_of_sub_types,
613
tag_t
** list_of_sub_types
614
);
615
626
extern
TCCORE_API
int
TCTYPE_ask_child_types
(
627
tag_t
type_tag,
628
logical
forSameClassOnly,
629
int
* numOfChildTypes,
630
tag_t
** listOfChildTypes
631
);
632
637
extern
TCCORE_API
int
TCTYPE_ask_child_primary_types
(
638
tag_t
type_tag,
639
int
* numOfChildTypes,
640
tag_t
** listOfChildTypes
641
);
642
646
extern
TCCORE_API
int
TCTYPE_load_all_delayed_types
() ;
647
651
extern
TCCORE_API
int
TCTYPE_ask_create_descriptor
(
652
tag_t
boTypeTag,
653
tag_t
* createDescTag
654
);
655
656
660
extern
TCCORE_API
int
TCTYPE_ask_saveas_descriptor
(
661
tag_t
objectTypeTag,
662
tag_t
* saveAsDescTag
663
);
664
668
extern
TCCORE_API
int
TCTYPE_ask_target_deepcopydata
(
669
tag_t
objectTag,
670
int
*numAttachedObjs,
671
tag_t
** deepCopyDataTags
672
);
673
677
extern
TCCORE_API
int
TCTYPE_ask_create_prop_descriptors
(
678
tag_t
createDescTag,
679
int
* n_propDescTags,
680
tag_t
** propDescTags,
681
int
* n_secPropNames,
682
char
*** secPropNames,
683
tag_t
** secBOTypeTags,
684
logical
** isRequired,
685
logical
** isArray,
686
int
** compoundingCtxts,
687
tag_t
** secCreateDescTags
688
);
689
693
extern
TCCORE_API
int
TCTYPE_ask_saveas_prop_descriptors
(
694
tag_t
saveasDescTag,
695
int
* n_propDescTags,
696
tag_t
** propDescTags
697
);
698
699
704
extern
TCCORE_API
int
TCTYPE_construct_create_input
(
705
tag_t
boTypeTag,
706
tag_t
* createInputTag
707
);
708
713
extern
TCCORE_API
int
TCTYPE_construct_saveasinput
(
714
tag_t
boTypeTag,
715
tag_t
* saveAsInputTag
716
);
717
722
extern
TCCORE_API
int
TCTYPE_construct_operationinput
(
723
tag_t
targetObjTypeTag,
724
TCTYPE_operation_input_t
opvar,
725
tag_t
* targetSaveAsInputTag
726
);
731
extern
TCCORE_API
int
TCTYPE_free_deepcopydata
(
732
int
numDeepCopyData,
733
tag_t
* deepCopyDataTags
734
);
735
752
extern
TCCORE_API
int
TCTYPE_saveas_object
(
753
tag_t
targetObjectTag,
754
tag_t
saveAsInputTag,
755
int
numAttachedObjects,
756
tag_t
* deepCopyDataTags,
757
tag_t
* targetCopyTag
758
);
759
763
extern
TCCORE_API
int
TCTYPE_ask_revise_descriptor
(
764
tag_t
object_type_tag,
765
tag_t
* revise_desc_tag
766
);
767
772
extern
TCCORE_API
int
TCTYPE_ask_deepcopydata
(
773
tag_t
object_tag,
774
TCTYPE_operation_input_t
opvar,
775
int
*num_attached_objs,
776
tag_t
** deepcopydata_tags
777
);
778
793
extern
TCCORE_API
int
TCTYPE_revise_objects
(
794
int
num_target_objs,
795
tag_t
* target_object_tags,
796
tag_t
* revise_input_tags,
797
int
* num_attached_objs,
798
tag_t
* deepcopydata_tags,
799
tag_t
** target_copy_tags,
800
int
** ifails
801
);
802
806
extern
TCCORE_API
int
TCTYPE_create_object
(
807
tag_t
creInputTag,
808
tag_t
* boTag
809
);
810
824
extern
TCCORE_API
int
TCTYPE_create_objects
(
825
int
n_bulks,
826
int
* quantities,
827
tag_t
* create_inputs,
828
int
* n_objects,
829
tag_t
** objects
830
);
831
843
extern
TCCORE_API
int
TCTYPE_create_single_objects
(
844
int
n_bulks,
845
const
tag_t
* create_inputs,
846
int
* n_objects,
847
tag_t
** objects
848
);
849
853
extern
TCCORE_API
int
TCTYPE_set_create_display_value
(
854
tag_t
creInputTag,
855
char
* propName,
856
int
n_dispValues,
857
const
char
** dispValues
860
);
861
871
extern
TCCORE_API
int
TCTYPE_set_OperationInput_DisplayValue
(
872
tag_t
opInputTag,
873
char
* propName,
874
const
char
** dispValues
876
);
877
881
extern
TCCORE_API
int
TCTYPE_find_displayable_business_objects
(
882
const
char
* boName,
883
int
n_exclusionBONames,
884
const
char
** exclusionBONames,
885
int
* n_displayableTypeTags,
886
tag_t
** displayableTypeTags
887
);
888
893
extern
TCCORE_API
int
TCTYPE_UIF_find_displayable_business_objects
(
894
const
char
* boName,
895
int
n_exclusionBONames,
896
const
char
** exclusionBONames,
897
int
* n_displayableTypeTags,
898
tag_t
** displayableTypeTags,
899
char
*** typeNames,
900
char
*** displayTypeNames
901
);
902
911
extern
TCCORE_API
int
TCTYPE_UIF_find_generically_creatable_business_objects
(
912
const
char
* bo_name,
913
int
n_exclusion_bo_names,
914
const
char
** exclusion_bo_names,
915
int
* n_displayable_type_tags,
916
tag_t
** displayable_type_tags,
917
char
*** type_names,
918
char
*** display_type_names
919
);
920
925
extern
TCCORE_API
int
TCTYPE_ask_name_rule_patterns
(
926
const
char
* boName,
927
int
* n_propNames,
928
char
*** propNames,
929
int
** patternCountArray,
930
int
* n_patterns,
931
char
*** patterns
932
);
933
937
extern
TCCORE_API
int
TCTYPE_ask_save_operation_context
(
938
TCTYPE_save_operation_context_t
* opEnmSvOprnCtxt
939
);
940
941
952
extern
TCCORE_API
int
TCTYPE_extent_by_category
(
953
TCTYPE_category_t
type_category,
954
int
* number_of_types,
955
tag_t
** type_tags
956
);
957
974
extern
TCCORE_API
int
TCTYPE_add_to_changed_tag_list
(
975
tag_t
object
,
976
const
char
* properties
977
);
978
984
extern
TCCORE_API
int
TCTYPE_add_to_deleted_tag_list
(
985
tag_t
object
986
);
987
988
994
extern
TCCORE_API
int
TCTYPE_get_modified_tag_list
(
995
logical
clear_lists,
997
int
* num_objects,
998
tag_t
** tags,
999
int
** deleted_or_modified,
1001
char
*** properties
1008
);
1009
1015
extern
TCCORE_API
int
TCTYPE_remove_from_modified_tag_list
(
1016
tag_t
object
1017
);
1018
1024
#ifdef __cplusplus
1025
}
1026
#endif
1027
1030
#include <tccore/libtccore_undef.h>
1031
1032
#endif