Main Page   Alphabetical List   Data Structures   File List   Data Fields   Globals  

package.h

Go to the documentation of this file.
00001 
00023 #ifndef _LIBPACKMAN_PACKAGE_H_
00024 #define _LIBPACKMAN_PACKAGE_H_
00025 
00026 #include <time.h>
00027 
00028 #ifdef __cplusplus
00029 extern "C" {
00030 #endif
00031 
00032 typedef struct _PmPackage PmPackage;   
00034 #include <libpackman/types.h>
00035 #include <libpackman/file.h>
00036 #include <libpackman/downloadurl.h>
00037 #include <libpackman/dependency.h>
00038 #include <libpackman/module.h>
00039 #include <libpackman/db.h>
00040 
00046 struct _PmPackage
00047 {
00048     PmModule *module;                
00050     PmAccessMode accessMode;         
00052     PmDatabase *db;                  
00054     char *pkgFormat;                 
00055     char *osDistrib;                 
00057     char *filePath;                  
00059     char *name;                      
00060     char *version;                   
00061     char *release;                   
00062     char *url;                       
00063     char *group;                     
00065     char *license;                   
00066     char *summary;                   
00067     char *description;               
00069     char *arch;                      
00070     char *branch;                    
00071     int fileSize;                    
00072     int installedSize;               
00075     PmDownloadUrl *downloadUrls;     
00077     PmDownloadUrl *lastDownloadUrl;  
00078     unsigned int downloadUrlCount;   
00080     PmDependency *requirements;      
00081     PmDependency *lastRequirement;   
00082     unsigned int requirementCount;   
00084     PmDependency *provides;          
00085     PmDependency *lastProvide;       
00086     unsigned int provideCount;       
00088     PmFile *files;                   
00089     PmFile *lastFile;                
00090     unsigned int fileCount;          
00092     PmPackage *prev;                 
00093     PmPackage *next;                 
00095     char _depsVerified;              
00096     unsigned int _curStep;           
00097     unsigned int _totalSteps;        
00098     char _curOperation;              
00100     void *dbData;                    
00101 };
00102 
00103 
00104 /**************************************************************************/
00106 /**************************************************************************/
00116 PmPackage *pmNewPackage(void);
00117 
00125 void pmDestroyPackage(PmPackage *package);
00126 
00130 /**************************************************************************/
00132 /**************************************************************************/
00146 void pmPackageAddDownloadUrl(PmPackage *pkg, PmDownloadUrl *downloadUrl);
00147 
00159 void pmPackageAddRequirement(PmPackage *pkg, PmDependency *requirement);
00160 
00172 void pmPackageAddProvide(PmPackage *pkg, PmDependency *provide);
00173 
00185 void pmPackageAddFile(PmPackage *pkg, PmFile *file);
00186 
00190 /**************************************************************************/
00192 /**************************************************************************/
00205 void pmSetPackageModule(PmPackage *pkg, PmModule *module);
00206 
00215 void pmSetPackageAccessMode(PmPackage *pkg, PmAccessMode mode);
00216 
00227 void pmSetPackageFormat(PmPackage *pkg, const char *pkgFormat);
00228 
00239 void pmSetPackageOsDistrib(PmPackage *pkg, const char *osDistrib);
00240 
00251 void pmSetPackageFilePath(PmPackage *pkg, const char *filePath);
00252 
00261 void pmSetPackageName(PmPackage *pkg, const char *name);
00262 
00271 void pmSetPackageVersion(PmPackage *pkg, const char *version);
00272 
00281 void pmSetPackageRelease(PmPackage *pkg, const char *release);
00282 
00291 void pmSetPackageUrl(PmPackage *pkg, const char *url);
00292 
00301 void pmSetPackageGroup(PmPackage *pkg, const char *group);
00302 
00311 void pmSetPackageLicense(PmPackage *pkg, const char *license);
00312 
00321 void pmSetPackageSummary(PmPackage *pkg, const char *summary);
00322 
00331 void pmSetPackageDescription(PmPackage *pkg, const char *description);
00332 
00350 void pmSetPackageArch(PmPackage *pkg, const char *arch);
00351 
00366 void pmSetPackageBranch(PmPackage *pkg, const char *branch);
00367 
00376 void pmSetPackageFileSize(PmPackage *pkg, unsigned int fileSize);
00377 
00386 void pmSetPackageInstalledSize(PmPackage *pkg, unsigned int installedSize);
00387 
00398 void pmSetPreviousPackage(PmPackage *pkg, PmPackage *prev);
00399 
00410 void pmSetNextPackage(PmPackage *pkg, PmPackage *next);
00411 
00415 /**************************************************************************/
00417 /**************************************************************************/
00429 PmModule *pmGetPackageModule(PmPackage *pkg);
00430 
00440 PmAccessMode pmGetPackageAccessMode(PmPackage *pkg);
00441 
00451 const char *pmGetPackageFormat(PmPackage *pkg);
00452 
00462 const char *pmGetPackageOsDistrib(PmPackage *pkg);
00463 
00473 const char *pmGetPackageFilePath(PmPackage *pkg);
00474 
00484 const char *pmGetPackageName(PmPackage *pkg);
00485 
00495 const char *pmGetPackageVersion(PmPackage *pkg);
00496 
00506 const char *pmGetPackageRelease(PmPackage *pkg);
00507 
00517 const char *pmGetPackageUrl(PmPackage *pkg);
00518 
00528 const char *pmGetPackageGroup(PmPackage *pkg);
00529 
00539 const char *pmGetPackageLicense(PmPackage *pkg);
00540 
00550 const char *pmGetPackageSummary(PmPackage *pkg);
00551 
00561 const char *pmGetPackageDescription(PmPackage *pkg);
00562 
00572 const char *pmGetPackageArch(PmPackage *pkg);
00573 
00583 const char *pmGetPackageBranch(PmPackage *pkg);
00584 
00594 unsigned int pmGetPackageFileSize(PmPackage *pkg);
00595 
00605 unsigned int pmGetPackageInstalledSize(PmPackage *pkg);
00606 
00616 unsigned int pmGetPackageDownloadUrlCount(PmPackage *pkg);
00617 
00627 unsigned int pmGetPackageRequirementCount(PmPackage *pkg);
00628 
00638 unsigned int pmGetPackageProvideCount(PmPackage *pkg);
00639 
00649 unsigned int pmGetPackageFileCount(PmPackage *pkg);
00650 
00662 PmPackage *pmGetPreviousPackage(PmPackage *pkg);
00663 
00675 PmPackage *pmGetNextPackage(PmPackage *pkg);
00676 
00679 #ifdef __cplusplus
00680 }
00681 #endif
00682 
00683 #endif /* _LIBPACKMAN_PACKAGE_H_ */

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