Use the trace format type for ust metadata generation
[lttng-tools.git] / src / bin / lttng-sessiond / ust-registry-session-pid.hpp
1 /*
2 * Copyright (C) 2022 Jérémie Galarneau <jeremie.galarneau@efficios.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-only
5 *
6 */
7
8 #ifndef LTTNG_UST_REGISTRY_SESSION_PID_H
9 #define LTTNG_UST_REGISTRY_SESSION_PID_H
10
11 #include "trace-class.hpp"
12 #include "ust-registry-session.hpp"
13
14 #include <lttng/trace-format-descriptor-internal.hpp>
15
16 #include <cstdint>
17 #include <ctime>
18 #include <lttng/lttng.h>
19 #include <string>
20 #include <unistd.h>
21
22 namespace lttng {
23 namespace sessiond {
24 namespace ust {
25
26 class registry_session_per_pid : public registry_session {
27 public:
28 registry_session_per_pid(const struct ust_app& app,
29 const struct lttng::sessiond::trace::abi& trace_abi,
30 uint32_t major,
31 uint32_t minor,
32 const char *root_shm_path,
33 const char *shm_path,
34 uid_t euid,
35 gid_t egid,
36 uint64_t tracing_id,
37 const lttng::trace_format_descriptor& trace_format);
38
39 virtual lttng_buffer_type get_buffering_scheme() const noexcept override final;
40 virtual void accept(lttng::sessiond::trace::trace_class_environment_visitor&
41 environment_visitor) const override final;
42
43 private:
44 const unsigned int _tracer_patch_level_version;
45 const pid_t _vpid;
46 const std::string _procname;
47 const std::time_t _app_creation_time;
48 };
49
50 } /* namespace ust */
51 } /* namespace sessiond */
52 } /* namespace lttng */
53
54 #endif /* LTTNG_UST_REGISTRY_SESSION_PID_H */
This page took 0.033338 seconds and 5 git commands to generate.