00001 #ifndef H_RPMTE
00002 #define H_RPMTE
00003
00009 #include <rpm/rpmtypes.h>
00010
00011 #ifdef __cplusplus
00012 extern "C" {
00013 #endif
00014
00017 extern int _rpmte_debug;
00018
00022 typedef struct tsortInfo_s * tsortInfo;
00023
00027 typedef struct rpmtsi_s * rpmtsi;
00028
00032 typedef enum rpmElementType_e {
00033 TR_ADDED = (1 << 0),
00034 TR_REMOVED = (1 << 1)
00035 } rpmElementType;
00036
00042 rpmte rpmteFree(rpmte te);
00043
00054 rpmte rpmteNew(const rpmts ts, Header h, rpmElementType type,
00055 fnpyKey key,
00056 rpmRelocation * relocs,
00057 int dboffset);
00058
00064 Header rpmteHeader(rpmte te);
00065
00072 Header rpmteSetHeader(rpmte te, Header h);
00073
00079 rpmElementType rpmteType(rpmte te);
00080
00086 const char * rpmteN(rpmte te);
00087
00093 const char * rpmteE(rpmte te);
00094
00100 const char * rpmteV(rpmte te);
00101
00107 const char * rpmteR(rpmte te);
00108
00114 const char * rpmteA(rpmte te);
00115
00121 const char * rpmteO(rpmte te);
00122
00128 int rpmteIsSource(rpmte te);
00129
00135 rpm_color_t rpmteColor(rpmte te);
00136
00143 rpm_color_t rpmteSetColor(rpmte te, rpm_color_t color);
00144
00150 unsigned int rpmteDBInstance(rpmte te);
00151
00158 void rpmteSetDBInstance(rpmte te, unsigned int instance);
00159
00166 rpm_loff_t rpmtePkgFileSize(rpmte te);
00167
00173 int rpmteDepth(rpmte te);
00174
00181 int rpmteSetDepth(rpmte te, int ndepth);
00182
00188 int rpmteBreadth(rpmte te);
00189
00196 int rpmteSetBreadth(rpmte te, int nbreadth);
00197
00203 int rpmteNpreds(rpmte te);
00204
00211 int rpmteSetNpreds(rpmte te, int npreds);
00212
00218 int rpmteTree(rpmte te);
00219
00226 int rpmteSetTree(rpmte te, int ntree);
00227
00233 rpmte rpmteParent(rpmte te);
00234
00241 rpmte rpmteSetParent(rpmte te, rpmte pte);
00242
00248 int rpmteDegree(rpmte te);
00249
00256 int rpmteSetDegree(rpmte te, int ndegree);
00257
00263 tsortInfo rpmteTSI(rpmte te);
00264
00269 void rpmteFreeTSI(rpmte te);
00270
00275 void rpmteNewTSI(rpmte te);
00276
00281 void rpmteCleanDS(rpmte te);
00282
00288 void rpmteSetDependsOn(rpmte te, rpmte depends);
00289
00295 rpmte rpmteDependsOn(rpmte te);
00296
00302 int rpmteDBOffset(rpmte te);
00303
00309 const char * rpmteEVR(rpmte te);
00310
00316 const char * rpmteNEVR(rpmte te);
00317
00323 const char * rpmteNEVRA(rpmte te);
00324
00330 FD_t rpmteFd(rpmte te);
00331
00337 fnpyKey rpmteKey(rpmte te);
00338
00344 int rpmteFailed(rpmte te);
00345
00352 rpmds rpmteDS(rpmte te, rpmTag tag);
00353
00359 rpmfi rpmteFI(rpmte te);
00360
00366 void rpmteColorDS(rpmte te, rpmTag tag);
00367
00373 int rpmtsiOc(rpmtsi tsi);
00374
00380 rpmtsi rpmtsiFree(rpmtsi tsi);
00381
00387 rpmtsi rpmtsiInit(rpmts ts);
00388
00395 rpmte rpmtsiNext(rpmtsi tsi, rpmElementType type);
00396
00397 #ifdef __cplusplus
00398 }
00399 #endif
00400
00401 #endif