X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fust-registry-session-pid.hpp;fp=src%2Fbin%2Flttng-sessiond%2Fust-registry-session-pid.hpp;h=aa6cfb91b99e0f74b80de327a41bb079a614434a;hb=b0f2e8db59fcadc8f4b06a94175792be3c431004;hp=0000000000000000000000000000000000000000;hpb=d7bfb9b0fa35679d3e728b9165699d9faf905539;p=lttng-tools.git diff --git a/src/bin/lttng-sessiond/ust-registry-session-pid.hpp b/src/bin/lttng-sessiond/ust-registry-session-pid.hpp new file mode 100644 index 000000000..aa6cfb91b --- /dev/null +++ b/src/bin/lttng-sessiond/ust-registry-session-pid.hpp @@ -0,0 +1,53 @@ +/* + * Copyright (C) 2022 Jérémie Galarneau + * + * SPDX-License-Identifier: GPL-2.0-only + * + */ + +#ifndef LTTNG_UST_REGISTRY_SESSION_PID_H +#define LTTNG_UST_REGISTRY_SESSION_PID_H + +#include "trace-class.hpp" +#include "ust-registry-session.hpp" + +#include +#include +#include +#include +#include + +namespace lttng { +namespace sessiond { +namespace ust { + +class registry_session_per_pid : public registry_session { +public: + registry_session_per_pid(const struct ust_app& app, + const struct lttng::sessiond::trace::abi& trace_abi, + uint32_t major, + uint32_t minor, + const char *root_shm_path, + const char *shm_path, + uid_t euid, + gid_t egid, + uint64_t tracing_id); + + virtual lttng_buffer_type get_buffering_scheme() const noexcept override final; + +private: + virtual void _visit_environment( + lttng::sessiond::trace::trace_class_visitor& trace_class_visitor) + const override final; + + const unsigned int _tracer_patch_level_version; + const pid_t _vpid; + const std::string _procname; + const std::time_t _app_creation_time; +}; + +} /* namespace ust */ +} /* namespace sessiond */ +} /* namespace lttng */ + +#endif /* LTTNG_UST_REGISTRY_SESSION_PID_H */