Main Page   Alphabetical List   Data Structures   File List   Data Fields   Globals  

db_api.h

Go to the documentation of this file.
00001 
00023 #ifndef _LIBPACKMAN_DB_API_H_
00024 #define _LIBPACKMAN_DB_API_H_
00025 
00026 #include <libpackman/types.h>
00027 #include <libpackman/db.h>
00028 
00029 #ifdef __cplusplus
00030 extern "C" {
00031 #endif
00032 
00033 /**************************************************************************/
00035 /**************************************************************************/
00052 PmDatabase *pmOpenDatabase(const char *type, PmAccessMode mode);
00053 
00071 PmDatabase *pmCreateDatabase(const char *type);
00072 
00084 void pmCloseDatabase(PmDatabase *db);
00085 
00101 PmStatus pmRebuildDatabase(const char *type);
00102 
00106 /**************************************************************************/
00108 /**************************************************************************/
00118 unsigned long pmDbGetPackageCount(PmDatabase *db);
00119 
00123 /**************************************************************************/
00125 /**************************************************************************/
00135 PmMatches *pmNewMatches(PmDatabase *db);
00136 
00142 void pmDestroyMatches(PmMatches *matches);
00143 
00147 /**************************************************************************/
00149 /**************************************************************************/
00169 PmStatus pmInstallPackage(PmDatabase *db, PmPackage *package, char checkDeps,
00170                           PmTransactionError **error);
00171 
00189 PmStatus pmUninstallPackage(PmDatabase *db, PmPackage *package, char checkDeps,
00190                             PmTransactionError **error);
00191 
00209 PmStatus pmInstallBatch(PmDatabase *db, PmBatch *batch, char checkDeps,
00210                         PmTransactionError **error);
00211 
00229 PmStatus pmUninstallBatch(PmDatabase *db, PmBatch *batch, char checkDeps,
00230                           PmTransactionError **error);
00231 
00252 PmStatus pmDbAddPackage(PmDatabase *db, PmPackage *package, char checkDeps,
00253                         PmTransactionError **error);
00254 
00275 PmStatus pmDbRemovePackage(PmDatabase *db, PmPackage *package, char checkDeps,
00276                            PmTransactionError **error);
00277 
00295 PmStatus pmDbAddBatch(PmDatabase *db, PmBatch *batch, char checkDeps,
00296                       PmTransactionError **error);
00297 
00315 PmStatus pmDbRemoveBatch(PmDatabase *db, PmBatch *batch, char checkDeps,
00316                          PmTransactionError **error);
00317 
00321 /**************************************************************************/
00323 /**************************************************************************/
00335 PmStatus pmFindByName(PmDatabase *db, const char *name, PmMatches **matches);
00336 
00346 PmStatus pmFindByGroup(PmDatabase *db, const char *group, PmMatches **matches);
00347 
00357 PmStatus pmFindByFile(PmDatabase *db, const char *file, PmMatches **matches);
00358 
00368 PmStatus pmFindByProvides(PmDatabase *db, const char *provides,
00369                           PmMatches **matches);
00370 
00380 PmStatus pmFindByRequires(PmDatabase *db, const char *requires,
00381                           PmMatches **matches);
00382 
00392 PmStatus pmFindByConflicts(PmDatabase *db, const char *conflicts,
00393                            PmMatches **matches);
00394 
00403 PmStatus pmGetAllPackages(PmDatabase *db, PmMatches **matches);
00404 
00408 /**************************************************************************/
00410 /**************************************************************************/
00424 PmPackage *pmFirstMatch(PmMatches *matches);
00425 
00437 PmPackage *pmNextMatch(PmMatches *matches);
00438 
00441 #ifdef __cplusplus
00442 }
00443 #endif
00444 
00445 #endif /* _LIBPACKMAN_DB_API_H_ */

Generated on Tue Jul 2 03:15:23 2002 for libpackman by doxygen1.2.15-20020430