24 #ifndef PERFETTOPLUGIN_H
25 #define PERFETTOPLUGIN_H
27 #include <IDobbyPlugin.h>
28 #include <PluginBase.h>
30 #include <sys/types.h>
31 #include <netinet/in.h>
50 const std::shared_ptr<IDobbyUtils> &utils);
54 std::string
name()
const final;
60 const std::shared_ptr<IDobbyStartState>& startupState,
61 const std::string& rootfsPath,
62 const Json::Value& jsonData)
final;
65 const std::string mName;
66 const std::shared_ptr<IDobbyUtils> mUtilities;
68 const std::string mDefaultPerfettoSockPath;
A wrapper around a std::string, used to add some type definition to to an id and also to sanity check...
Definition: ContainerId.h:41
Dobby plugin for granting access to system perfetto tracing in the container.
Definition: PerfettoPlugin.h:47
unsigned hookHints() const final
Indicates which hook points we want and whether to run the asynchronously or synchronously with the o...
Definition: PerfettoPlugin.cpp:78
bool postConstruction(const ContainerId &id, const std::shared_ptr< IDobbyStartState > &startupState, const std::string &rootfsPath, const Json::Value &jsonData) final
Adds bind mounts for the perfetto producer socket if it exists.
Definition: PerfettoPlugin.cpp:95
std::string name() const final
Boilerplate that just returns the name of the plugin.
Definition: PerfettoPlugin.cpp:66
Basic object that provides the default overrides for a plugin.
Definition: PluginBase.h:38