krh@27: #ifndef _RAZOR_H_ krh@27: #define _RAZOR_H_ krh@27: krh@43: #define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0])) krh@43: krh@43: struct razor_set; krh@43: krh@43: struct razor_set *razor_set_open(const char *filename); krh@43: void razor_set_destroy(struct razor_set *set); krh@43: int razor_set_write(struct razor_set *set, const char *filename); krh@43: krh@43: void razor_set_list(struct razor_set *set); krh@43: void razor_set_list_requires(struct razor_set *set, const char *name); krh@43: void razor_set_list_provides(struct razor_set *set, const char *name); krh@43: void razor_set_list_requires_packages(struct razor_set *set, krh@43: const char *name, krh@43: const char *version); krh@43: void razor_set_list_provides_packages(struct razor_set *set, krh@43: const char *name, krh@43: const char *version); krh@43: krh@43: void razor_set_list_unsatisfied(struct razor_set *set); krh@43: struct razor_set *razor_set_update(struct razor_set *set, krh@43: struct razor_set *upstream, krh@43: int count, const char **packages); krh@43: krh@30: struct razor_importer; krh@27: krh@30: struct razor_importer *razor_importer_new(void); krh@30: void razor_importer_begin_package(struct razor_importer *importer, krh@27: const char *name, const char *version); krh@30: void razor_importer_add_requires(struct razor_importer *importer, krh@27: const char *name, const char *version); krh@30: void razor_importer_add_provides(struct razor_importer *importer, krh@30: const char *name, const char *version); krh@30: void razor_importer_finish_package(struct razor_importer *importer); krh@30: struct razor_set *razor_importer_finish(struct razor_importer *importer); krh@27: krh@27: struct razor_set *razor_import_rzr_files(int count, const char **files); krh@27: struct razor_set *razor_set_create_from_yum_filelist(int fd); krh@28: struct razor_set *razor_set_create_from_rpmdb(void); krh@27: krh@27: #endif /* _RAZOR_H_ */