ITK Function Reference

(V10000.1.0.60_20160308.00)
epm_task_template_itk.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 EPM_TASK_TEMPLATE_ITK_H
9 #define EPM_TASK_TEMPLATE_ITK_H
10 
11 #include <tccore/workspaceobject.h>
12 #include <epm/epm.h>
13 #include <epm/libepm_exports.h>
14 
15 #ifdef __cplusplus
16 extern "C"{
17 #endif
18 
32 
36 typedef enum EPM_template_stage_e{
41 
53 extern EPM_API int EPM_ask_all_process_templates(
54  int template_stage,
55  int* process_template_count,
56  tag_t** process_templates
57  );
58 
63 extern EPM_API int EPM_ask_assigned_templates(
64  logical switchOffUCTemplates,
65  const tag_t object_type,
66  const tag_t group,
67  int* count,
68  tag_t** process_templates
69  );
70 
75 extern EPM_API int EPM_find_process_template(
76  const char* process_template_name,
77  tag_t* process_template
78  );
79 
86  const char* search_string,
87  EPM_template_stage_t stage,
88  tag_t* template_tag
89 );
90 
95 extern EPM_API int EPM_ask_process_template(
96  tag_t process,
97  tag_t* process_template
98  );
99 
100 
105 extern EPM_API int EPM_create_task_template(
106  const char tt_name[WSO_name_size_c + 1],
107  const char tt_description[WSO_desc_size_c + 1],
108  tag_t parent_task_template,
109  const EPM_template_classification_t classification,
110  const tag_t obj_type,
111  tag_t* new_task_template
112  );
113 
114 extern EPM_API int EPM_create_task_template2(
115  const char *tt_name,
116  const char *tt_description,
117  tag_t parent_task_template,
118  const EPM_template_classification_t classification,
119  const tag_t obj_type,
120  tag_t* new_task_template
121  );
122 
123 extern EPM_API int EPM_create_task_template_from_template(
124  const char* tt_name,
125  const char* tt_description,
127  tag_t parent_task_template,
128  tag_t base_task_template,
129  tag_t* new_task_template
130  );
131 
136 extern EPM_API int EPM_create_process_template(
137  const char pt_name[WSO_name_size_c + 1],
138  const char pt_description[WSO_desc_size_c + 1],
139  tag_t* new_process_template
140  );
141 
142 extern EPM_API int EPM_create_process_template2(
143  const char *pt_name,
144  const char *pt_description,
145  tag_t* new_process_template
146  );
147 
153  const char pt_name[WSO_name_size_c + 1],
154  const char pt_description[WSO_desc_size_c + 1],
155  tag_t base_pt_tag,
156  tag_t* new_process_template
157  );
158 
160  const char *pt_name,
161  const char *pt_description,
162  tag_t base_pt_tag,
163  tag_t* new_process_template
164  );
165 
166 extern EPM_API int EPM_delete_task_template(
167  tag_t task_template
168  );
169 
170 extern EPM_API int EPM_remove_task_template(
171  tag_t task_template
172  );
173 
174 extern EPM_API int EPM_ask_action_handlers(
175  tag_t task_template,
176  EPM_action_t action,
177  int* no_of_action_handlers,
178  tag_t** action_handler_definitions
179  );
180 
181 extern EPM_API int EPM_add_action_handler(
182  tag_t task_template,
183  const EPM_action_t action,
184  tag_t action_handler
185  );
186 
187 extern EPM_API int EPM_add_rule(
188  tag_t task_template,
189  const EPM_action_t action,
190  tag_t rule
191  );
192 
193 extern EPM_API int EPM_remove_rule_handler(
194  tag_t task_template,
195  tag_t rule_definition,
196  tag_t rule_handler,
197  logical delete_handler
198  );
199 
200 extern EPM_API int EPM_remove_action_handler(
201  tag_t task_template,
202  int action,
203  tag_t action_handler,
204  logical delete_handler
205  );
206 
207 extern EPM_API int EPM_remove_rule(
208  tag_t task_template,
209  tag_t rule_definition
210  );
211 
216 extern EPM_API int EPM_find_handler(
217  tag_t task_template,
218  EPM_handler_type_t handler_type,
219  EPM_action_t action,
220  const char handler_name[WSO_name_size_c + 1],
221  tag_t* handler
222  );
223 
224 extern EPM_API int EPM_find_handler2(
225  tag_t task_template,
226  EPM_handler_type_t handler_type,
227  EPM_action_t action,
228  const char *handler_name,
229  tag_t* handler
230  );
231 
232 extern EPM_API int EPM_add_subtask_template(
233  tag_t parent_task_template,
234  tag_t task_template
235  );
236 
237 extern EPM_API int EPM_copy_task_template(
238  tag_t task_template,
239  tag_t* task_template_copy
240  );
241 
242 extern EPM_API int EPM_modify_task_template(
243  tag_t task_template,
244  logical visibility,
245  tag_t* task_template_copy
246  );
247 
248 extern EPM_API int EPM_modify_task_template2(
249  tag_t task_template,
250  int modifyFlagsCount,
251  const logical *modifyFlags,
252  tag_t *task_template_copy
253  );
254 
261 extern EPM_API int EPM_create_action_handler(
262  tag_t task_template,
263  EPM_action_t action,
264  const char action_handler_name[WSO_name_size_c + 1],
265  int action_handler_argument_count,
266  const char** action_handler_arguments,
267  tag_t* action_handler
268  );
269 
273 extern EPM_API int EPM_create_action_handler2(
274  tag_t task_template,
275  EPM_action_t action,
276  const char *action_handler_name,
277  int action_handler_argument_count,
278  const char** action_handler_arguments,
279  tag_t* action_handler
280  );
281 
285 extern EPM_API int EPM_delete_handler(
286  tag_t handler_definition
287  );
288 
292 extern EPM_API int EPM_cut_handler(
293  tag_t handler_definition
294  );
295 
300 extern EPM_API int EPM_create_rule_handler(
301  tag_t rule,
302  int rule_quorum,
303  const char rule_handler_name[WSO_name_size_c + 1],
304  int rule_handler_argument_count,
305  const char** rule_handler_arguments,
306  logical negated_flag,
307  logical override_flag,
308  tag_t* rule_handler
309  );
310 
311 extern EPM_API int EPM_create_rule_handler2(
312  tag_t rule,
313  int rule_quorum,
314  const char *rule_handler_name,
315  int rule_handler_argument_count,
316  const char** rule_handler_arguments,
317  logical negated_flag,
318  logical override_flag,
319  tag_t* rule_handler
320  );
321 
322 extern EPM_API int EPM_set_rule_quorum(
323  tag_t rule,
324  int quorum
325  );
326 
331 extern EPM_API int EPM_create_rule(
332  tag_t task_template,
333  const EPM_action_t action,
334  const char rule_handler_name[WSO_name_size_c + 1],
335  int rule_handler_argument_count,
336  const char** rule_handler_arguments,
337  tag_t* rule_handler,
338  tag_t* rule
339  );
340 
341 extern EPM_API int EPM_create_rule2(
342  tag_t task_template,
343  const EPM_action_t action,
344  const char *rule_handler_name,
345  int rule_handler_argument_count,
346  const char** rule_handler_arguments,
347  tag_t* rule_handler,
348  tag_t* rule
349  );
350 
351 extern EPM_API int EPM_ask_rule_handlers(
352  tag_t rule,
353  int* count,
354  tag_t** rule_handlers
355  );
356 
357 extern EPM_API int EPM_add_rule_handler(
358  tag_t rule,
359  tag_t rule_handler
360  );
361 
362 extern EPM_API int EPM_ask_rules(
363  tag_t task_template,
364  EPM_action_t action,
365  int* no_of_rules,
366  tag_t** rules
367  );
368 
373 extern EPM_API int EPM_find_template(
374  const char pt_name[WSO_name_size_c + 1],
375  int template_type,
376  tag_t* process_task_template
377  );
378 
379 extern EPM_API int EPM_find_template2(
380  const char *pt_name,
381  int template_type,
382  tag_t* process_task_template
383  );
384 
385 extern EPM_API int EPM_extent_template(
386  int stage,
387  int classification,
388  int* num,
389  tag_t** process_task_templates
390  );
391 
392 extern EPM_API int EPM_extent_template_and_stage(
393  int classification,
394  int* num,
395  int** task_template_stages,
396  tag_t** task_templates
397  );
398 
403 extern EPM_API int EPM_extent_ready_template_and_stage(
404  logical switchOffUCTemplate,
405  int* num,
406  int** task_template_stages,
407  tag_t** task_templates
408  );
409 
410 extern EPM_API int EPM_extent_locked_templates(
411  int* componentCount,
412  tag_t** componentTags
413  );
414 
415 extern EPM_API int EPM_extent_modifiable_templates(
416  int* componentCount,
417  tag_t** componentTags
418  );
419 
420 extern EPM_API int EPM_extent_handler_names_registered(
421  const EPM_handler_type_t handler_type,
422  int* no_of_handlers,
423  char*** handler_names
424  );
425 
429 extern EPM_API int EPM_ask_subtask_templates(
430  tag_t parent_task_template,
431  int* no_of_subtask_templates,
432  tag_t** subtask_templates
433  );
434 
438 extern EPM_API int EPM_unlock_modified_templates(
439  int no_of_process_templates,
440  tag_t* process_templates
441  );
442 
446 extern EPM_API int EPM_ask_signoff_profiles(
447  tag_t task_template,
448  int* quorum,
449  int* num_signoff_profiles,
450  tag_t** roles,
451  tag_t** groups,
452  logical** allow_sub_groups,
453  int** num_reviewers
454  );
455 
459 extern EPM_API int EPM_create_signoff_profiles(
460  tag_t task_template,
461  int quorum,
462  int num_signoff_profiles,
463  const tag_t* roles,
464  const tag_t* groups,
465  const logical* allow_sub_groups,
466  const int* num_reviewers,
467  tag_t** signoff_profiles
468  );
469 
473 extern EPM_API int EPM_ask_handler_arguments(
474  tag_t handler,
475  int* argument_count,
476  char*** arguments
477  );
478 
482 extern EPM_API int EPM_set_handler_arguments(
483  tag_t handler,
484  int argument_count,
485  const char** arguments
486  );
487 
493 extern EPM_API int EPM_copy_handler(
494  tag_t handler,
495  tag_t* handler_copy
496  );
497 
505 extern EPM_API int EPM_ask_predecessor_task_templates(
506  tag_t task_template,
507  int action,
508  int* no_of_predecessors,
509  tag_t** predecessor_task_templates
510  );
511 
515 extern EPM_API int EPM_remove_predecessor_task_templates(
516  tag_t task_template,
517  int no_of_predecessors,
518  const tag_t* predecessor_task_templates,
519  int action
520  );
521 
525 extern EPM_API int EPM_add_predecessor_task_templates(
526  tag_t task_template,
527  int no_of_predecessors,
528  const tag_t* predecessor_task_templates,
529  int action
530  );
531 
532 extern EPM_API int EPM_task_template_ask_active_processes(
533  tag_t process_template,
534  int* process_count,
535  tag_t** process_list
536  );
537 
538 extern EPM_API int EPM_apply_template_to_active_process(
539  tag_t process_template,
540  tag_t process
541  );
542 
543 extern EPM_API int EPM_apply_template_to_active_processes(
544  tag_t process_template,
545  int processing_mode
546  );
547 
548 extern EPM_API int EPM_find_process_template_origin_uid(
549  const char* origin_uid,
550  int stage,
551  tag_t* process_task_template
552  );
553 
568  const char* template_name,
569  tag_t object_tag,
573  tag_t* template_tag
574  );
575 
576 /* This API returns a list of process templates based on given criteria.
577  * based on current User Group and TargetObjects/ Object Types.
578  * If there are multiple target objects/ object types, only the common assigned templates will
579  * be returned.
580  * If no targets/object types specified, it will return all the templates
581  * assigned to the current user Group.
582  * Underconstruction Templates are part of result only for users who are part of
583  * DBA Group when include_under_construction = true.
584  *
585  * Arguments:
586  * include_under_construction (I) --- true = Under Construction + Available, false = Available Only
587  * assigned_templates (I) --- true = Assigned Templates, false = All Templates
588  * number_of_objects (I) --- The number of Target objects/ Object Types.
589  * target_objects (I) --- The Target Objects, for which types the assigned templates are returned, should be null if using object_types argument.
590  * object_types (I) --- The Object Types, for which types the assigned templates are returned, should be null if using target_objects argument.
591  * group (I) --- Group for which assigned templates are returned, should be null if you want to get results for session�s logged in group
592  * count (O) --- The number of templates returned.
593  * process_templates (OF) --- The list of the templates.
594  *
595  * Similar to EPM_ask_workflow_templates, except that it does not check for User Exit implementation.
596  */
597 extern EPM_API int EPM_ask_workflow_templates_base(
598  logical include_under_construction,
599  logical assigned_templates,
600  int number_of_objects,
601  tag_t* target_objects,
602  char** object_types,
603  const char* group,
604  int* count,
605  tag_t** process_templates
606 );
607 
633 extern EPM_API int EPM_ask_workflow_templates(
634  logical include_under_construction,
635  logical assigned_templates,
636  int number_of_objects,
637  tag_t* target_objects,
638  char** object_types,
639  const char* group,
640  int* count,
641  tag_t** process_templates
642  );
643 
647 extern EPM_API int EPM_ask_all_subtask_templates(
648  tag_t task_template,
649  int* no_of_allsubtask_templates,
650  tag_t** allsubtask_templates
651  );
652 
653 #ifdef __cplusplus
654 }
655 #endif
656 
659 #include <epm/libepm_undef.h>
660 #endif