00001 #ifndef H_RPMIDTX 00002 #define H_RPMIDTX 00003 00004 #include <rpm/rpmlib.h> 00005 00006 #ifdef __cplusplus 00007 extern "C" { 00008 #endif 00009 00013 typedef struct IDT_s { 00014 unsigned int instance; 00015 const char * key; 00016 Header h; 00017 union { 00018 uint32_t u32; 00019 } val; 00020 } * IDT; 00021 00025 typedef struct IDTindex_s { 00026 int delta; 00027 int size; 00028 int alloced; 00029 int nidt; 00030 IDT idt; 00031 } * IDTX; 00032 00038 IDTX IDTXfree(IDTX idtx); 00039 00044 IDTX IDTXnew(void); 00045 00052 IDTX IDTXgrow(IDTX idtx, int need); 00053 00059 IDTX IDTXsort(IDTX idtx); 00060 00067 IDTX IDTXload(rpmts ts, rpm_tag_t tag); 00068 00076 IDTX IDTXglob(rpmts ts, const char * globstr, rpm_tag_t tag); 00077 00078 #ifdef __cplusplus 00079 } 00080 #endif 00081 00082 #endif /* H_RPMIDTX */