ITK Function Reference

(V10000.1.0.60_20160308.00)
ecm.h
Go to the documentation of this file.
1 /*==============================================================================
2  Copyright (c) 2003-2005 UGS Corporation
3  Unpublished - All Rights Reserved
4  ==============================================================================*/
5 
6 /* */
7 
8 #ifndef ECM_H
9 #define ECM_H
10 
11 #include <stdio.h>
12 #include <tc/tc_startup.h>
13 #include <ecm/ecm_errors.h>
14 #include <ecm/libecm_exports.h>
15 
28 #define EC_Item_Type_c "EngChange"
29 #define EC_Item_class_name_c "Item"
30 #define EC_Rev_Type_c "EngChange Revision"
31 #define EC_Rev_class_name_c "ItemRevision"
32 #define ECMIMPACTANALYSISTASK_TYPE_NAME "ECMImpactAnalysisTask"
33 #define ECMPREPAREECOTASK_TYPE_NAME "ECMPrepareECOTask"
34 #define ECMCHECKLISTTASK_TYPE_NAME "ECMChecklistTask"
35 #define ECMIMPACTANALYSISTASKTEMPLATE_TYPE_NAME "ECMImpactAnalysisTaskTemplate"
36 #define ECMPREPAREECOTASKTEMPLATE_TYPE_NAME "ECMPrepareECOTaskTemplate"
37 #define ECMCHECKLISTTASKTEMPLATE_TYPE_NAME "ECMChecklistTaskTemplate"
38 #define ECM_COMPARE_MODE_NAME "ECM_compare_mode"
39 #define ECM_COMPARE_DESCRIPTOR_NAME "CMP_std_descriptor_ecm_compare"
40 
43 typedef enum ECM_bom_change_type_e{
56 
60 typedef struct ECM_note_change_info_s{
68  char** before_values;
69  char** after_values;
73 
83  char* before_value;
84  char* after_value;
88 
89 #ifdef __cplusplus
90  extern "C"{
91 #endif
92 
93 extern ECM_API int ECM_init_module( void );
94 
100 extern ECM_API int ECM_create_ec_item(
101  const char* ec_id,
102  const char* ec_rev_id,
103  const char* ec_name,
104  const char* ec_desc,
105  tag_t* ec_item_tag,
106  tag_t* ec_rev_tag
107  );
108 
115 extern ECM_API int ECM_set_ec_type(
116  tag_t ec_rev_tag,
117  const char* ec_type
118  );
119 
126 extern ECM_API int ECM_remove_all_relations(
127  tag_t ec_rev_tag
128  );
129 
133 extern ECM_API int ECM_get_ec_type(
134  tag_t ec_rev_tag,
135  char** ec_type
136  );
137 
141 extern ECM_API int ECM_find_ec_revision(
142  const char* ec_id,
143  const char* ec_rev_id,
144  tag_t* ec_rev_tag
145  );
146 
147 extern ECM_API int ECM_find_associated_ec(
148  tag_t target_rev_tag,
149  tag_t* ec_rev_tag
150  );
151 
155 extern ECM_API int ECM_get_contents(
156  tag_t ec_rev_tag,
157  const char* folder_name,
158  int* num_of_obj,
159  tag_t** obj_tags
160  );
161 
165 extern ECM_API int ECM_add_contents(
166  tag_t ec_rev_tag,
167  const char* folder_name,
168  int num_of_obj,
169  tag_t* obj_tags
170  );
171 
175 extern ECM_API int ECM_remove_contents(
176  tag_t ec_rev_tag,
177  const char* folder_name,
178  int num_of_obj,
179  tag_t* obj_tags
180  );
181 
186 extern ECM_API int ECM_save_bom_changes(
187  tag_t ec_rev_tag,
188  tag_t bom_window
189  );
190 
197 extern ECM_API int ECM_get_bom_changes(
198  tag_t ec_rev_tag,
199  tag_t affected_bvr,
200  ECM_bom_change_type_t bomch_type,
201  int* num_of_bomch,
202  tag_t** bomch_tags
203  );
204 
211 extern ECM_API int ECM_is_affected_rev(
212  tag_t ec_rev_tag,
213  tag_t ir_tag,
214  logical* is_affected
215  );
216 
220 extern ECM_API int ECM_is_problem_rev(
221  tag_t ec_rev_tag,
222  tag_t ir_tag,
223  logical* is_problem
224  );
225 
230 extern ECM_API int ECM_set_problem_of_affected(
231  tag_t ec_rev_tag,
232  tag_t affected_ir,
233  tag_t problem_ir
234  );
235 
239 extern ECM_API int ECM_get_problem_of_affected(
240  tag_t ec_rev_tag,
241  tag_t affected_ir,
242  tag_t* problem_ir
243  );
244 
249 extern ECM_API int ECM_is_problem_relation_set(
250  tag_t ec_rev_tag,
251  tag_t affected_ir,
252  logical* is_set
253  );
254 
258 extern ECM_API int ECM_get_relation_of_folder(
259  const char* folder_name,
260  char** reln_name
261  );
262 
267 extern ECM_API int ECM_get_ec_pseudofolder_names(
268  int* nFolder,
269  char*** folderNames,
270  char*** relnNames
271  );
272 
278 extern ECM_API int ECM_get_prev_bvr(
279  tag_t ec_rev_tag,
280  tag_t bvr_tag,
281  tag_t* prev_bvr_tag
282  );
283 
288 extern ECM_API int ECM_get_form_relation(
289  char** formRelationType
290  );
291 
297 extern ECM_API int ECM_get_affected_items(
298  tag_t ec_rev_tag,
299  int* n_items,
300  tag_t** itemTags
301  );
302 
306 extern ECM_API int ECM_get_occurrence_of_bomchange(
307  tag_t bomch_tag,
308  tag_t* occ_tag
309  );
310 
314 extern ECM_API int ECM_get_affected_bvr_of_bomchange(
315  tag_t bomch_tag,
316  tag_t* affected_bvr
317  );
318 
322 extern ECM_API int ECM_get_ecrev_of_bomchange(
323  tag_t bomch_tag,
324  tag_t* ec_rev_tag
325  );
326 
331 extern ECM_API int ECM_get_bomchange_type(
332  tag_t bomch_tag,
333  ECM_bom_change_type_t* bomch_type
334  );
335 
339 extern ECM_API int ECM_bomchange_is_derived(
340  tag_t bomch_tag,
341  logical* is_derived
342  );
343 
347 extern ECM_API int ECM_find_bomchanges_of_occ(
348  tag_t occ_tag,
349  int* bomch_count,
350  tag_t** bomch_tags
351  );
352 
364 extern ECM_API int ECM_bomchange_get_childrens(
365  tag_t bomch_tag,
366  int* n_children,
367  tag_t** child_tags
368  );
369 
377 extern ECM_API int ECM_create_supercedure(
378  tag_t bvr_tag,
379  logical is_transfer,
380  int n_adds,
381  tag_t* add_tags,
382  int n_cancels,
383  tag_t* cancel_tags,
384  tag_t* sup_tag
385  );
386 
391 extern ECM_API int ECM_append_bomadd_list_of_sup(
392  tag_t sup_tag,
393  tag_t add_tag
394  );
395 
400 extern ECM_API int ECM_append_bomcancel_list_of_sup(
401  tag_t sup_tag,
402  tag_t cancel_tag
403  );
404 
410 extern ECM_API int ECM_remove_bomadd_from_sup(
411  tag_t sup_tag,
412  tag_t add_tag
413  );
414 
420 extern ECM_API int ECM_remove_bomcancel_from_sup(
421  tag_t sup_tag,
422  tag_t cancel_tag
423  );
424 
429 extern ECM_API int ECM_delete_supercedure(
430  tag_t sup_tag
431  );
432 
443 extern ECM_API int ECM_get_note_change_details(
444  tag_t note_change_tag,
445  ECM_note_change_info_t* notechange_details
446  );
447 
455 extern ECM_API int ECM_get_note_change_history_info(
456  tag_t bomline_tag,
457  int* number_of_notechanges,
458  ECM_note_change_info_t** details
460  );
461 
465 extern ECM_API void ECM_free_notechange_info_struct(
467  );
468 
481 extern ECM_API int ECM_get_variant_change_details(
482  tag_t variant_change_tag,
483  ECM_variant_change_info_t* variantchange_details
484  );
485 
493 extern ECM_API int ECM_get_variant_change_history_info(
494  tag_t bomline_tag,
495  int* number_of_variantchanges,
496  ECM_variant_change_info_t** details
498  );
499 
503 extern ECM_API void ECM_free_variantchange_info_struct(
505  );
514 extern ECM_API int ECM_create_ec_snapshot(
515  tag_t ec_rev,
516  char *desc,
517  tag_t *snapshot
518  );
523 extern ECM_API int ECM_snapshot_apply_stylesheet(
524  tag_t ec_snapshot,
525  char *stylesheet_file,
526  char **output_dir,
527  char **output_file
528  );
529 
530 
531 extern ECM_API int ECM_find_supercedure_of_bomchange(
532  tag_t bcTag,
533  tag_t *supTag
534  );
535 
536 #ifdef __cplusplus
537 }
538 #endif
539 
542 #include <ecm/libecm_undef.h>
543 #endif