rpm  4.8.1
rpmps.h
Go to the documentation of this file.
1 #ifndef H_RPMPS
2 #define H_RPMPS
3 
9 #include <stdio.h>
10 #include <rpm/rpmtypes.h>
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 extern int _rpmps_debug;
17 
21 typedef enum rpmprobFilterFlags_e {
33 
37 typedef struct rpmProblem_s * rpmProblem;
38 
42 typedef struct rpmps_s * rpmps;
43 
44 typedef struct rpmpsi_s * rpmpsi;
45 
49 typedef enum rpmProblemType_e {
62 
74 rpmProblem rpmProblemCreate(rpmProblemType type,
75  const char * pkgNEVR,
76  fnpyKey key,
77  const char * dn, const char * bn,
78  const char * altNEVR,
79  uint64_t number);
80 
86 rpmProblem rpmProblemFree(rpmProblem prob);
87 
93 rpmProblem rpmProblemLink(rpmProblem prob);
94 
100 rpmProblem rpmProblemUnlink(rpmProblem prob);
101 
107 const char * rpmProblemGetPkgNEVR(const rpmProblem prob);
113 const char * rpmProblemGetAltNEVR(const rpmProblem prob);
114 
121 rpmProblemType rpmProblemGetType(const rpmProblem prob);
122 
128 fnpyKey rpmProblemGetKey(const rpmProblem prob);
129 
136 const char * rpmProblemGetStr(const rpmProblem prob);
137 
145 rpm_loff_t rpmProblemGetDiskNeed(const rpmProblem prob);
146 
152 char * rpmProblemString(const rpmProblem prob);
153 
160 rpmps rpmpsUnlink (rpmps ps,
161  const char * msg);
162 
169 rpmps rpmpsLink (rpmps ps, const char * msg);
170 
176 int rpmpsNumProblems(rpmps ps);
177 
183 rpmpsi rpmpsInitIterator(rpmps ps);
184 
190 rpmpsi rpmpsFreeIterator(rpmpsi psi);
191 
197 int rpmpsNextIterator(rpmpsi psi);
198 
204 rpmProblem rpmpsGetProblem(rpmpsi psi);
205 
210 rpmps rpmpsCreate(void);
211 
217 rpmps rpmpsFree(rpmps ps);
218 
224 void rpmpsPrint(FILE *fp, rpmps ps);
225 
231 void rpmpsAppendProblem(rpmps ps, rpmProblem prob);
232 
244 void rpmpsAppend(rpmps ps, rpmProblemType type,
245  const char * pkgNEVR,
246  fnpyKey key,
247  const char * dn, const char * bn,
248  const char * altNEVR,
249  uint64_t number);
250 
266 int rpmpsTrim(rpmps ps, rpmps filter);
267 
268 #ifdef __cplusplus
269 }
270 #endif
271 
272 #endif /* H_RPMPS */
struct rpmpsi_s * rpmpsi
Definition: rpmps.h:44
rpm_loff_t rpmProblemGetDiskNeed(const rpmProblem prob)
Return disk requirement (needed disk space / number of inodes) depending on problem type...
fnpyKey rpmProblemGetKey(const rpmProblem prob)
Return filename or python object address of a problem.
rpmProblemType rpmProblemGetType(const rpmProblem prob)
Return type of problem (dependency, diskpace etc)
const char * rpmProblemGetStr(const rpmProblem prob)
Return a generic data string from a problem.
const char * rpmProblemGetPkgNEVR(const rpmProblem prob)
Return package NEVR.
enum rpmprobFilterFlags_e rpmprobFilterFlags
enum rpmProblemType_e rpmProblemType
Enumerate transaction set problem types.
rpmProblem rpmProblemCreate(rpmProblemType type, const char *pkgNEVR, fnpyKey key, const char *dn, const char *bn, const char *altNEVR, uint64_t number)
Create a problem item.
struct rpmps_s * rpmps
Transaction problems found while processing a transaction set/.
Definition: rpmps.h:42
rpmps rpmpsCreate(void)
Create a problem set.
const char * rpmProblemGetAltNEVR(const rpmProblem prob)
Return related (e.g.
rpmProblemType_e
Enumerate transaction set problem types.
Definition: rpmps.h:49
uint64_t rpm_loff_t
Definition: rpmtypes.h:47
int rpmpsNumProblems(rpmps ps)
Return number of problems in set.
rpmProblem rpmProblemLink(rpmProblem prob)
Reference an rpmProblem instance.
void rpmpsAppendProblem(rpmps ps, rpmProblem prob)
Append a problem to current set of problems.
int rpmpsTrim(rpmps ps, rpmps filter)
Filter a problem set.
rpmpsi rpmpsFreeIterator(rpmpsi psi)
Destroy problem set iterator.
rpmProblem rpmProblemUnlink(rpmProblem prob)
Unreference an rpmProblem instance.
int _rpmps_debug
rpmprobFilterFlags_e
Definition: rpmps.h:21
rpmps rpmpsFree(rpmps ps)
Destroy a problem set.
void rpmpsAppend(rpmps ps, rpmProblemType type, const char *pkgNEVR, fnpyKey key, const char *dn, const char *bn, const char *altNEVR, uint64_t number)
Append a problem to current set of problems.
char * rpmProblemString(const rpmProblem prob)
Return formatted string representation of a problem.
rpmProblem rpmpsGetProblem(rpmpsi psi)
Return current problem from problem set.
struct rpmProblem_s * rpmProblem
Raw data for an element of a problem set.
Definition: rpmps.h:37
rpmpsi rpmpsInitIterator(rpmps ps)
Initialize problem set iterator.
rpmps rpmpsUnlink(rpmps ps, const char *msg)
Unreference a problem set instance.
rpmps rpmpsLink(rpmps ps, const char *msg)
Reference a problem set instance.
void rpmpsPrint(FILE *fp, rpmps ps)
Print problems to file handle.
const void * fnpyKey
Definition: rpmtypes.h:65
rpmProblem rpmProblemFree(rpmProblem prob)
Destroy a problem item.
int rpmpsNextIterator(rpmpsi psi)
Return next problem set iterator index.