sessiond: add a CTF 2-generating trace class visitor
[lttng-tools.git] / src / bin / lttng-sessiond / ust-registry-session-pid.hpp
CommitLineData
b0f2e8db
JG
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 <cstdint>
15#include <ctime>
16#include <lttng/lttng.h>
17#include <string>
18#include <unistd.h>
19
20namespace lttng {
21namespace sessiond {
22namespace ust {
23
24class registry_session_per_pid : public registry_session {
25public:
26 registry_session_per_pid(const struct ust_app& app,
27 const struct lttng::sessiond::trace::abi& trace_abi,
28 uint32_t major,
29 uint32_t minor,
30 const char *root_shm_path,
31 const char *shm_path,
32 uid_t euid,
33 gid_t egid,
34 uint64_t tracing_id);
35
36 virtual lttng_buffer_type get_buffering_scheme() const noexcept override final;
da9dd521
JG
37 virtual void accept(lttng::sessiond::trace::trace_class_environment_visitor&
38 environment_visitor) const override final;
b0f2e8db
JG
39
40private:
b0f2e8db
JG
41 const unsigned int _tracer_patch_level_version;
42 const pid_t _vpid;
43 const std::string _procname;
44 const std::time_t _app_creation_time;
45};
46
47} /* namespace ust */
48} /* namespace sessiond */
49} /* namespace lttng */
50
51#endif /* LTTNG_UST_REGISTRY_SESSION_PID_H */
This page took 0.026009 seconds and 4 git commands to generate.