summaryrefslogtreecommitdiffstats
path: root/tapsets.h
diff options
context:
space:
mode:
authorJosh Stone <jistone@redhat.com>2009-05-06 16:43:51 -0700
committerJosh Stone <jistone@redhat.com>2009-05-06 16:43:51 -0700
commit912e8c5926abb587638f8e482c7f714bc5cda758 (patch)
tree5d5100e24dc41146a6745bcc0f23662505e5ef1a /tapsets.h
parenta6b4f9682a51062a18042f3feb6b80aa40412625 (diff)
downloadsystemtap-steved-912e8c5926abb587638f8e482c7f714bc5cda758.tar.gz
systemtap-steved-912e8c5926abb587638f8e482c7f714bc5cda758.tar.xz
systemtap-steved-912e8c5926abb587638f8e482c7f714bc5cda758.zip
Separate built-in timer tapsets
All of the timer.* tapsets are now built and handled in their own tapset-timers.cxx, as the first step of many to pare down the current monolithic tapsets.cxx.
Diffstat (limited to 'tapsets.h')
-rw-r--r--tapsets.h19
1 files changed, 17 insertions, 2 deletions
diff --git a/tapsets.h b/tapsets.h
index 406a69d9..eb8a5072 100644
--- a/tapsets.h
+++ b/tapsets.h
@@ -13,12 +13,27 @@
#include "staptree.h"
#include "elaborate.h"
-struct derived_probe_group;
-
void register_standard_tapsets(systemtap_session& sess);
std::vector<derived_probe_group*> all_session_groups(systemtap_session& s);
int dwfl_report_offline_predicate (const char* modname, const char* filename);
+void common_probe_entryfn_prologue (translator_output* o, std::string statestr,
+ std::string new_pp, bool overload_processing = true);
+void common_probe_entryfn_epilogue (translator_output* o, bool overload_processing = true);
+
+void register_tapset_timers(systemtap_session& sess);
+
+// ------------------------------------------------------------------------
+// Generic derived_probe_group: contains an ordinary vector of the
+// given type. It provides only the enrollment function.
+template <class DP> struct generic_dpg: public derived_probe_group
+{
+protected:
+ std::vector <DP*> probes;
+public:
+ generic_dpg () {}
+ void enroll (DP* probe) { probes.push_back (probe); }
+};
#endif // TAPSETS_H