HLCC Documentation 3.0.0
Loading...
Searching...
No Matches
dataContext.hpp
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2020-2025 European Southern Observatory (ESO)
2//
3// SPDX-License-Identifier: LGPL-3.0-only
4
13#ifndef HLCC_TELIF_TELMON_DATACONTEXT_HPP
14#define HLCC_TELIF_TELMON_DATACONTEXT_HPP
15
16#include <mutex>
17
18#include <rad/dataContext.hpp>
19
20#include "telmon/config.hpp"
22
23
24namespace hlcc::telmon {
25
26
31class DataContext : public rad::DataContext {
32 public:
37
41 virtual ~DataContext();
42
46 void ReloadConfig() override;
47
51 Config& GetConfig() override;
52
56 void UpdateDb() override;
57
62
68 void SetPyModulesReload(bool reload);
69
75 bool GetPyModulesReload();
76
82 void SetNbrModulesLoaded(int nbr_modules);
83
90
91
92 DataContext(const DataContext&) = delete;
93 DataContext& operator=(const DataContext&) = delete;
94
95 private:
96 Config m_config;
97 OldbInterface m_oldb_interface;
98
99 mutable std::mutex m_mutex;
100
101 /* Python modules reload flag*/
102 bool m_py_modules_reload;
103 /* Number od loaded modules*/
104 int m_nbr_modules_loaded;
105};
106
107} // namespace hlcc::telmon
108
109#endif // HLCC_TELIF_TELMON_DATACONTEXT_HPP
Config class header file.
OldbInterface class header file.
Definition config.hpp:262
void UpdateDb() override
Definition dataContext.cpp:47
void SetNbrModulesLoaded(int nbr_modules)
Definition dataContext.cpp:75
DataContext()
Definition dataContext.cpp:27
Config & GetConfig() override
Definition dataContext.cpp:42
void SetPyModulesReload(bool reload)
Definition dataContext.cpp:65
bool GetPyModulesReload()
Definition dataContext.cpp:70
DataContext(const DataContext &)=delete
DataContext & operator=(const DataContext &)=delete
Disable copy constructor.
void ReloadConfig() override
Definition dataContext.cpp:38
int GetNbrModulesLoaded()
Definition dataContext.cpp:80
OldbInterface & GetOldbInterface() override
Definition dataContext.cpp:60
virtual ~DataContext()
Definition dataContext.cpp:34
Definition oldbInterface.hpp:39
Definition actionMgr.cpp:31