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

tccore/idfr.h

Go to the documentation of this file.
00001 /*==============================================================================
00002                 Copyright (c) 2003-2005 UGS Corporation
00003                    Unpublished - All Rights Reserved
00004  ==============================================================================*/
00005 
00014 /*  */
00015 
00016 #ifndef IDFR_H
00017 #define IDFR_H
00018 
00019 #include <tc/tc_startup.h>
00020 #include <common/emh_const.h>
00021 #include <tccore/idfr_errors.h>
00022 #include <user_exits/user_exits.h>
00023 #include <tccore/libtccore_exports.h>
00024 
00071 #define IDENTIFIER_class_name_c          "Identifier"
00072 #define IDENTIFIER_rev_type_name_c       "IdentifierRev"
00073 #define IDENTIFIER_id                    "idfr_id"
00074 #define IDENTIFIER_idcontext             "idcontext"
00075 #define IDENTIFIER_altidof               "altid_of"
00076 #define IDENTIFIER_dispdefault           "disp_default"
00077 #define IDENTIFIER_supplcontext          "suppl_context"
00078 #define ALIASID_relation                 "IMAN_aliasid"
00079 
00085 #define IDENTIFIER_create_alternate_msg  "IDENTIFIER_create_alternate"
00086 #define IDENTIFIER_revise_alternate_msg  "IDENTIFIER_revise_alternate"
00087 #define IDENTIFIER_saveas_alternate_msg  "IDENTIFIER_saveas_alternate"
00088 #define IDENTIFIER_create_alias_msg      "IDENTIFIER_create_alias"
00089 
00091 #ifdef __cplusplus
00092 extern "C"{
00093 #endif
00094 
00107 extern TCCORE_API int IDFR_create_aliasid (
00108     const char*         identifier_type,    
00109     tag_t*              new_identifier_tag  
00110     );
00111 
00136 extern TCCORE_API int IDFR_create_altid (
00137     const char*         identifier_type,    
00138     tag_t               idfbl_tag,          
00139     tag_t               idfbl_rev_tag,      
00140     tag_t               idcontext_tag,      
00141     tag_t*              altid_tag,          
00142     tag_t*              altid_rev_tag       
00143     );
00144 
00153 extern TCCORE_API int IDFR_revise_altid (
00154     tag_t               altid_or_rev_tag,   
00155     tag_t               idfbl_rev_tag,      
00156     tag_t*              new_altid_rev_tag   
00157     );
00158 
00165 extern TCCORE_API int IDFR_saveas_altid (
00166     tag_t               altid_rev_tag,      
00167     tag_t               idfbl_rev_tag,      
00168     tag_t*              new_altid_rev_tag   
00169     );
00170 
00174 extern TCCORE_API int IDFR_ask_aliasidof (
00175     tag_t               identifier_tag,     
00176     int*                num_identifiables,  
00177     tag_t**             identifiable_tags   
00178     );
00179 
00187 extern TCCORE_API int IDFR_ask_altidof (
00188     tag_t               identifier_tag,     
00189     tag_t*              identifiable_tag    
00190     );
00191 
00195 extern TCCORE_API int IDFR_ask_id (
00196     tag_t               identifier_tag,     
00197     char**              identifier_id       
00198     );
00199 
00207 extern TCCORE_API int IDFR_ask_idcontext (
00208     tag_t               identifier_tag,     
00209     tag_t*              idcontext_tag       
00210     );
00211 
00221 extern TCCORE_API int IDFR_ask_supplcontext (
00222     tag_t               identifier_tag,     
00223     tag_t*              supplcontext_tag    
00224     );
00225 
00226 extern TCCORE_API int IDFR_set_altidof (
00227     tag_t               identifier_tag,     
00228     tag_t               identifiable_tag    
00229     );
00230 
00237 extern TCCORE_API int IDFR_set_id (
00238     tag_t               identifier_tag,     
00239     const char*         identifier_id       
00240     );
00241 
00242 extern TCCORE_API int IDFR_set_idcontext (
00243     tag_t               identifier_tag,     
00244     tag_t               idcontext_tag       
00245     );
00246 
00247 extern TCCORE_API int IDFR_set_supplcontext (
00248     tag_t               identifier_tag,     
00249     tag_t               supplcontext_tag    
00250     );
00251 
00255 extern TCCORE_API int IDFR_new_alt_id (
00256     tag_t               idcontext_tag,  
00257     const char*         idfr_type,      
00258     char**              new_id          
00259     );
00260 
00266 extern TCCORE_API int IDFR_new_alt_ids (
00267     tag_t               idcontext_tag,  
00268     const char*         idfr_type,      
00269     char**              new_id,         
00270     char**              new_rev_id      
00271     );
00272 
00276 extern TCCORE_API int IDFR_new_rev_id (
00277     tag_t               idfr_rev_tag,   
00278     char**              new_rev_id      
00279     );
00280 
00281 extern TCCORE_API int IDFR_validate_alt_id (
00282     tag_t               idcontext_tag,  
00283     const char*         idfr_type,      
00284     const char*         new_id,         
00285     const char*         pattern_name,   
00286     char**              modified_id,    
00287     IDValid_e*          status          
00288     );
00289 
00290 extern TCCORE_API int IDFR_validate_alt_ids (
00291     tag_t               idcontext_tag,      
00292     const char*         idfr_type,          
00293     const char*         new_id,             
00294     const char*         new_rev_id,         
00295     const char*         pattern_name,       
00296     char**              modified_id,        
00297     char**              modified_rev_id,    
00298     IDValid_e*          status              
00299     );
00300 
00301 extern TCCORE_API int IDFR_validate_rev_id (
00302     tag_t               idfr_rev_tag,   
00303     const char*         new_rev_id,     
00304     const char*         pattern_name,   
00305     char**              modified_id,    
00306     IDValid_e*          status          
00307     );
00308 
00312 extern TCCORE_API int IDFR_add_aliasidof (
00313     tag_t               identifier_tag,     
00314     int                 num_identifiables,  
00315     tag_t*              identifiable_tags   
00316     );
00317 
00321 extern TCCORE_API int IDFR_remove_aliasidof (
00322     tag_t               identifier_tag,     
00323     int                 num_identifiables,  
00324     tag_t*              identifiable_tags   
00325     );
00326 
00333 extern TCCORE_API int IDFR_find_identifiers (
00334     const char*         id,                 
00335     tag_t               idcontext_tag,      
00336     int*                num_identifiers,    
00337     tag_t**             identifier_tags     
00338     );
00339 
00343 extern TCCORE_API int IDFR_list_suppl_identifiers(
00344     tag_t               master_idfr_tag,    
00345     int*                num_suppl,          
00346     tag_t**             suppl_idfr_tags     
00347     );
00348 
00353 extern TCCORE_API int IDFR_find_suppl_identifiers(
00354     tag_t               master_idfr_tag,    
00355     const char*         suppl_id,           
00357     int*                num_suppl,          
00358     tag_t**             suppl_idfr_tags     
00359     );
00360 
00365 extern TCCORE_API int IDFR_idfbl_ask_disp_default (
00366     tag_t               identifiable_tag,   
00367     tag_t*              altid_tag           
00368     );
00369 
00376 extern TCCORE_API int IDFR_idfbl_set_disp_default (
00377     tag_t               identifiable_tag,   
00378     tag_t               altid_tag           
00379     );
00380 
00386 extern TCCORE_API int IDFR_idfbl_ask_disp_altid (
00387     tag_t               identifiable_tag,   
00388     tag_t               iddisprule_tag,     
00389     tag_t*              altid_tag           
00390     );
00391 
00396 extern TCCORE_API int IDFR_idfbl_list_altids (
00397     tag_t               identifiable_tag,   
00398     int*                num_altids,         
00399     tag_t**             altid_tags          
00400     );
00401 
00406 extern TCCORE_API int IDFR_idfbl_list_aliasids (
00407     tag_t               identifiable_tag,   
00408     int*                num_aliases,        
00409     tag_t**             aliasid_tags        
00410     );
00411 
00417 extern TCCORE_API int IDFR_idfbl_find_altids (
00418     tag_t               identifiable_tag,   
00419     const char*         id,                 
00420     tag_t               idcontext_tag,      
00421     int*                num_altids,         
00422     tag_t**             altid_tags          
00423     );
00424 
00433 extern TCCORE_API int IDFR_idfbl_find_altidsof (
00434     const char*         id,                         
00435     tag_t               idcontext_tag,              
00436     tag_t               identifiable_class_tag,     
00437     int*                num_identifiables,          
00438     tag_t**             identifiable_tags           
00439     );
00440 
00443 #ifdef __cplusplus
00444 }
00445 #endif
00446 
00447 #include <tccore/libtccore_undef.h>
00448 
00449 #endif