00001 #ifndef _RPMCALLBACK_H
00002 #define _RPMCALLBACK_H
00003
00004 #include <rpm/rpmtypes.h>
00005
00006 #ifdef __cplusplus
00007 extern "C" {
00008 #endif
00009
00013 typedef enum rpmCallbackType_e {
00014 RPMCALLBACK_UNKNOWN = 0,
00015 RPMCALLBACK_INST_PROGRESS = (1 << 0),
00016 RPMCALLBACK_INST_START = (1 << 1),
00017 RPMCALLBACK_INST_OPEN_FILE = (1 << 2),
00018 RPMCALLBACK_INST_CLOSE_FILE = (1 << 3),
00019 RPMCALLBACK_TRANS_PROGRESS = (1 << 4),
00020 RPMCALLBACK_TRANS_START = (1 << 5),
00021 RPMCALLBACK_TRANS_STOP = (1 << 6),
00022 RPMCALLBACK_UNINST_PROGRESS = (1 << 7),
00023 RPMCALLBACK_UNINST_START = (1 << 8),
00024 RPMCALLBACK_UNINST_STOP = (1 << 9),
00025 RPMCALLBACK_REPACKAGE_PROGRESS = (1 << 10),
00026 RPMCALLBACK_REPACKAGE_START = (1 << 11),
00027 RPMCALLBACK_REPACKAGE_STOP = (1 << 12),
00028 RPMCALLBACK_UNPACK_ERROR = (1 << 13),
00029 RPMCALLBACK_CPIO_ERROR = (1 << 14),
00030 RPMCALLBACK_SCRIPT_ERROR = (1 << 15)
00031 } rpmCallbackType;
00032
00035 typedef void * (*rpmCallbackFunction)
00036 (const void * h,
00037 const rpmCallbackType what,
00038 const rpm_loff_t amount,
00039 const rpm_loff_t total,
00040 fnpyKey key,
00041 rpmCallbackData data);
00042
00043 #ifdef __cplusplus
00044 }
00045 #endif
00046
00047 #endif