DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
Context.hpp
Go to the documentation of this file.
1/*
2 * DUNE DAQ modification notice:
3 * This file has been modified from the original ATLAS ers source for the DUNE DAQ project.
4 * Fork baseline commit: 8267df82a4f6fe6bf02c4014923eba19eddc4614 (2020-04-14).
5 * Renamed since fork: yes (from ers/Context.h to include/ers/Context.hpp).
6 *
7 * Original copyright:
8 * Copyright (C) 2001-2020 CERN for the benefit of the ATLAS collaboration.
9 * Licensed under the Apache License, Version 2.0.
10 */
11
12/*
13 * Context.h
14 * ers
15 *
16 * Created by Matthias Wiesmann on 26.11.04.
17 * Modified by Serguei Kolos on 26.08.05.
18 * Copyright 2004 CERN. All rights reserved.
19 *
20 */
21
22#ifndef ERS_CONTEXT_H
23#define ERS_CONTEXT_H
24
28
29#include <string>
30#include <vector>
31#include <ers/Configuration.hpp>
32
33namespace ers
34{
40 class Context
41 {
42 public:
43
44 virtual ~Context() { ; }
45
46 std::string position( int verbosity = ers::Configuration::instance().verbosity_level() ) const;
47
48 std::vector<std::string> stack( ) const;
49
50 virtual Context * clone() const = 0;
51 virtual const char * cwd() const = 0;
52 virtual const char * file_name() const = 0;
53 virtual const char * function_name() const = 0;
54 virtual const char * host_name() const = 0;
55 virtual int line_number() const = 0;
56 virtual const char * package_name() const = 0;
57 virtual pid_t process_id() const = 0;
58 virtual pid_t thread_id() const = 0;
59 virtual void * const * stack_symbols() const = 0;
60 virtual int stack_size() const = 0;
61 virtual int user_id() const = 0;
62 virtual const char * user_name() const = 0;
63 virtual const char * application_name() const = 0;
64
65 };
66}
67
68#endif
69
static Configuration & instance()
return the singleton
An abstract interface to access an Issue context.
Definition Context.hpp:41
virtual ~Context()
Definition Context.hpp:44
virtual void *const * stack_symbols() const =0
virtual int line_number() const =0
virtual int stack_size() const =0
virtual const char * user_name() const =0
virtual int user_id() const =0
virtual pid_t thread_id() const =0
virtual const char * host_name() const =0
std::string position(int verbosity=ers::Configuration::instance().verbosity_level()) const
Definition Context.cpp:116
virtual pid_t process_id() const =0
virtual Context * clone() const =0
virtual const char * package_name() const =0
virtual const char * application_name() const =0
virtual const char * file_name() const =0
virtual const char * cwd() const =0
std::vector< std::string > stack() const
Definition Context.cpp:95
virtual const char * function_name() const =0
int verbosity_level()
Definition ers.hpp:119