Main Page | Modules | Files | Functions | Code Elements | Data Structures | Deprecated

epm/cr.h

Go to the documentation of this file.
00001 /*==============================================================================
00002                 Copyright (c) 2003-2005 UGS Corporation
00003                    Unpublished - All Rights Reserved
00004  ==============================================================================*/
00005 
00013 /*  */
00014 
00015 #ifndef CR_H
00016 #define CR_H
00017 
00018 #include <epm/cr_errors.h>
00019 #include <tccore/workspaceobject.h>
00020 #include <tccore/releasestatus.h>
00021 #include <epm/libepm_exports.h>
00022 
00043 //contents of this file are deprecated in tc10.1 with project 015735.  Should be removed in tc12.1.
00044 #define CR_select_signoff_team_task     "select-signoff-team"
00045 #define CR_perform_signoffs_task        "perform-signoffs"
00046 
00047 typedef enum CR_signoff_decision_e {
00048              CR_no_decision         = 0,
00049              CR_approve_decision    = 'Y',
00050              CR_reject_decision     = 'N'
00051 } CR_signoff_decision_t;
00052 
00053 #define CR_comment_size_c               240
00054 
00055 #ifdef __cplusplus
00056     extern "C"{
00057 #endif
00058 
00063 extern EPM_API int CR_init_module(void);
00064 
00069 extern EPM_API int CR_exit_module(void);
00070 
00079 extern EPM_API int CR_ask_job(
00080     tag_t          target_object,   
00081     int*           count,           
00082     tag_t**        jobs             
00083     );
00084 
00097 extern EPM_API int CR_refresh_job(
00098     tag_t          job      
00099     );
00100 
00105 extern EPM_API int CR_ask_required_reviewer_types(
00106     tag_t          job,                     
00107     const char*    release_level_name,      
00108     int*           count,                   
00109     tag_t**        required_accessors       
00110     );
00111 
00116 extern EPM_API int CR_ask_unassigned_reviewer_types(
00117     tag_t          job,                     
00118     const char*    release_level_name,      
00119     int*           count,                   
00120     tag_t**        unassigned_accessors     
00121     );
00122 
00141 extern EPM_API int CR_ask_reviewers(
00142     tag_t          job,                     
00143     const char*    release_level_name,      
00144     int*           count,                   
00145     tag_t**        groupmembers             
00146     );
00147 
00156 extern EPM_API int CR_add_reviewers(
00157     tag_t          job,                     
00158     const char*    release_level_name,      
00159     int            n_groupmembers,          
00160     tag_t*         groupmembers             
00161     );
00162 
00170 extern EPM_API int CR_remove_reviewers(
00171     tag_t          job,                 
00172     const char*    release_level_name,  
00173     int            n_groupmembers,      
00174     tag_t*         groupmembers         
00175     );
00176 
00184 extern EPM_API int CR_ask_decision(
00185     tag_t                  job,                             
00186     const char*            release_level_name,              
00187     tag_t                  user,                            
00188     CR_signoff_decision_t* decision,                        
00189     char                   comments[CR_comment_size_c + 1], 
00190     date_t*                decision_date                    
00191     );
00192 
00200 extern EPM_API int CR_ask_decision2(
00201     tag_t                  job,                             
00202     const char*            release_level_name,              
00203     tag_t                  user,                            
00204     CR_signoff_decision_t* decision,                        
00205     char                   **comments,                      
00206     date_t*                decision_date                    
00207     );
00208 
00216 extern EPM_API int CR_ask_quorum(
00217     tag_t          job,                     
00218     const char*    release_level_name,      
00219     int*           quorum                   
00220     );
00221 
00241 extern EPM_API int CR_ask_group_release_procedures(
00242     const char*    group_name,                   
00243     int*           count,                        
00244     char***        release_procedure_names       
00245     );
00246 
00266 extern EPM_API int CR_ask_procedure_release_levels(
00267     const char*    release_procedure_name,     
00268     int*           count,                      
00269     char***        release_level_names         
00270     );
00271 
00279 extern EPM_API int CR_reassign_reviewer(
00280     tag_t          release_level,          
00281     tag_t          new_groupmember,        
00282     tag_t          signoff                 
00283     );
00284 
00296 extern EPM_API int CR_find_status_type (
00297     const char*    status_type,     
00298     tag_t*         status           
00299     );
00300 
00309 extern EPM_API int CR_ask_release_statuses(
00310     tag_t          job,                     
00311     int*           count,                   
00312     tag_t**        release_status_objects   
00313     );
00314 
00321 extern EPM_API int CR_add_release_status(
00322     tag_t          job,             
00323     tag_t          release_status   
00324     );
00325 
00333 extern EPM_API int CR_remove_release_status(
00334     tag_t          job,             
00335     tag_t          release_status   
00336     );
00337 
00344 extern EPM_API int CR_remove_status_from_targets(
00345   tag_t         release_status,            
00346   tag_t         root_task                   
00347     );
00352 extern EPM_API int CR_ask_if_released(
00353     tag_t          workspace_object,    
00354     int*           is_released          
00355     );
00356 
00361 extern EPM_API int CR_ask_accessor_tags(
00362     const char*    group_name,          
00363     logical        allow_sub_groups,    
00364     const char*    role_name,           
00365     int*           num_accessors,       
00366     tag_t**        accessors            
00367     );
00368 
00377 extern EPM_API int CR_ask_procedure_access(
00378     char*          release_procedure_name,  
00379     char*          release_level_name,      
00380     int*           no_of_accessors,         
00381     char***        group_names,             
00383     char***        role_names,              
00385     int**          access_codes             
00388     );
00389 
00410 extern EPM_API int CR_ask_task_reviewers_group_member(
00411     const tag_t    task_tag,            
00412     int*           group_member_count,  
00413     tag_t**        group_members        
00414     );
00415 
00427 extern EPM_API int CR_ask_task_reviewers_resource_pool(
00428     const tag_t    task_tag,            
00429     int*           res_pool_count,      
00430     tag_t**        res_pool_tags        
00431     );
00432 
00447 extern EPM_API int CR_ask_task_reviewers_users(
00448     const tag_t    task_tag,    
00449     int*           user_count,  
00450     tag_t**        users        
00451     );
00452 
00468 extern EPM_API int CR_ask_task_undecided_reviewers_users(
00469     const tag_t    task_tag,        
00470     int*           user_count,      
00471     tag_t**        users            
00472     );
00473 
00478 #ifdef __cplusplus
00479 }
00480 #endif
00481 
00482 #include <epm/libepm_undef.h>
00483 #endif