Monitoring  3.3.4
O2 Monitoring library
MonitoringFactory.h
Go to the documentation of this file.
1 // Copyright CERN and copyright holders of ALICE O2. This software is
2 // distributed under the terms of the GNU General Public License v3 (GPL
3 // Version 3), copied verbatim in the file "COPYING".
4 //
5 // See http://alice-o2.web.cern.ch/license for full licensing information.
6 //
7 // In applying this license CERN does not waive the privileges and immunities
8 // granted to it by virtue of its status as an Intergovernmental Organization
9 // or submit itself to any jurisdiction.
10 
15 
16 #ifndef ALICEO2_MONITORING_FACTORY_H
17 #define ALICEO2_MONITORING_FACTORY_H
18 
19 #include "Monitoring/Monitoring.h"
20 
21 namespace o2
22 {
24 namespace monitoring
25 {
26 
29 {
30  public:
33  MonitoringFactory(const MonitoringFactory&) = delete;
34 
38  static std::unique_ptr<Monitoring> Get(std::string urlsString) noexcept(false);
39 
43  static std::unique_ptr<Backend> GetBackend(std::string& url);
44 
45  private:
47  MonitoringFactory() = default;
48 
50  static void SetVerbosity(std::string selected, std::unique_ptr<Backend>& backend);
51 };
52 
53 } // namespace monitoring
54 } // namespace o2
55 
56 #endif // ALICEO2_MONITORING_FACTORY_H
Definition: Backend.h:23
static std::unique_ptr< Monitoring > Get(std::string urlsString) noexcept(false)
Definition: MonitoringFactory.cxx:189
MonitoringFactory & operator=(const MonitoringFactory &)=delete
Disables copy constructor.
static std::unique_ptr< Backend > GetBackend(std::string &url)
Definition: MonitoringFactory.cxx:158
Monitoring and monitoring backends factory.
Definition: MonitoringFactory.h:28