opd_extended.h

Go to the documentation of this file.
00001 
00012 #ifndef OPD_EXTENDED_H
00013 #define OPD_EXTENDED_H
00014 
00015 #include "opd_trans.h"
00016 #include "odb.h"
00017 
00018 #include <stdlib.h>
00019 #include <stdint.h>
00020 
00021 
00025 struct opd_ext_feature {
00026     // Feature name
00027     const char* feature;
00028     // Feature handlers
00029     struct opd_ext_handlers * handlers;
00030 };
00031 
00035 struct opd_ext_handlers {
00036     // Extended init
00037     int (*ext_init)(char const *);
00038     // Extended deinit 
00039     int (*ext_deinit)();
00040     // Extended statistics
00041     int (*ext_print_stats)();
00042     // Extended sfile handlers
00043     struct opd_ext_sfile_handlers * ext_sfile;
00044 };
00045 
00049 struct opd_ext_sfile_handlers {
00050     int (*create)(struct sfile *);
00051     int (*dup)(struct sfile *, struct sfile *);
00052     int (*close)(struct sfile *);
00053     int (*sync)(struct sfile *);
00054     odb_t * (*get)(struct transient const *, int);
00055     struct opd_event * (*find_counter_event)(unsigned long);
00056 };
00057 
00063 extern int opd_ext_initialize(char const * value);
00064 
00070 extern int opd_ext_deinitialize();
00071 
00075 extern void opd_ext_print_stats();
00076 
00080 extern void opd_ext_sfile_create(struct sfile * sf);
00081 extern void opd_ext_sfile_dup (struct sfile * to, struct sfile * from);
00082 extern void opd_ext_sfile_close(struct sfile * sf);
00083 extern void opd_ext_sfile_sync(struct sfile * sf);
00084 extern odb_t * opd_ext_sfile_get(struct transient const * trans, int is_cg);
00085 
00091 extern struct opd_event * opd_ext_find_counter_event(unsigned long counter);
00092 
00093 
00094 #endif

Generated on 8 Nov 2012 for Oprofile by  doxygen 1.6.1