rpmio/rpmhook.h

Go to the documentation of this file.
00001 #ifndef RPMHOOK_H
00002 #define RPMHOOK_H
00003 
00004 typedef union {
00005 /*@observer@*/
00006     const char * s;
00007     int i;
00008     float f;
00009 /*@observer@*/
00010     void * p;
00011 } rpmhookArgv;
00012 
00013 typedef struct rpmhookArgs_s {
00014     int argc;
00015     const char * argt;
00016     rpmhookArgv argv[1];
00017 } * rpmhookArgs;
00018 
00019 typedef int (*rpmhookFunc) (rpmhookArgs args, void *data);
00020 
00021 /*@only@*/
00022 rpmhookArgs rpmhookArgsNew(int argc)
00023         /*@*/;
00024 /*@null@*/
00025 rpmhookArgs rpmhookArgsFree(/*@only@*/ /*@null@*/ rpmhookArgs args)
00026         /*@modifies args @*/;
00027 
00028 void rpmhookRegister(const char *name, rpmhookFunc func, void *data)
00029         /*@globals internalState @*/
00030         /*@modifies internalState @*/;
00031 void rpmhookUnregister(const char *name, rpmhookFunc func, void *data)
00032         /*@*/;
00033 void rpmhookUnregisterAny(const char *name, rpmhookFunc func)
00034         /*@*/;
00035 void rpmhookUnregisterAll(const char *name)
00036         /*@*/;
00037 void rpmhookCall(const char *name, const char *argt, ...)
00038         /*@*/;
00039 void rpmhookCallArgs(const char *name, rpmhookArgs args)
00040         /*@globals internalState @*/
00041         /*@modifies internalState @*/;
00042 
00043 #endif

Generated on Tue Feb 19 22:53:24 2008 for rpm by  doxygen 1.5.1