From 4abcfb170d475759266e678d808adb1bdbab91ed Mon Sep 17 00:00:00 2001 From: Luis Antonio Obis Aparicio Date: Sun, 18 Aug 2024 19:09:56 +0200 Subject: [PATCH] remove root graphing --- CMakeLists.txt | 3 +- src/main.cpp | 1 - src/mclient/evbuilder.cpp | 8 ----- src/root/graph.cpp | 65 --------------------------------------- src/root/graph.h | 46 --------------------------- 5 files changed, 1 insertion(+), 122 deletions(-) delete mode 100644 src/root/graph.cpp delete mode 100644 src/root/graph.h diff --git a/CMakeLists.txt b/CMakeLists.txt index dcbb646..dfd2cba 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -58,8 +58,7 @@ file( src/feminos/frame.cpp src/platforms/linux/os_al.cpp src/prometheus/prometheus.cpp - src/root/storage.cpp - src/root/graph.cpp) + src/root/storage.cpp) target_link_libraries( ${PROJECT_NAME} diff --git a/src/main.cpp b/src/main.cpp index 1809767..3d85ebc 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -35,7 +35,6 @@ #include #include -#include "graph.h" #include "prometheus.h" #include "storage.h" diff --git a/src/mclient/evbuilder.cpp b/src/mclient/evbuilder.cpp index bf7b966..37e9df4 100644 --- a/src/mclient/evbuilder.cpp +++ b/src/mclient/evbuilder.cpp @@ -38,7 +38,6 @@ and timestamps depending on event builder mode #include #include -#include "graph.h" #include "prometheus.h" #include "storage.h" @@ -905,7 +904,6 @@ int EventBuilder_Loop(EventBuilder* eb) { auto& prometheus_manager = mclient_prometheus::PrometheusManager::Instance(); auto& storage_manager = mclient_storage::StorageManager::Instance(); - // auto& graphManager = mclient_graph::GraphManager::Instance(); if (storage_manager.IsInitialized()) { @@ -925,12 +923,6 @@ int EventBuilder_Loop(EventBuilder* eb) { storage_manager.Checkpoint(); prometheus_manager.UpdateOutputRootFileSize(); - /* - if (graphManager.GetSecondsSinceLastDraw() > 10) { - // Avoid drawing too often - graphManager.DrawEvent(storage_manager.event); - } - */ storage_manager.Clear(); } diff --git a/src/root/graph.cpp b/src/root/graph.cpp deleted file mode 100644 index 8ad0104..0000000 --- a/src/root/graph.cpp +++ /dev/null @@ -1,65 +0,0 @@ - -#include "graph.h" - -#include -#include -#include -#include -#include - -#include - -using namespace mclient_graph; -using namespace std; - -GraphManager::GraphManager() { - int argc = 0; - char** argv = nullptr; - - app = std::make_unique("app", &argc, argv); - - canvas = std::make_unique("canvas", "mclient", 1600, 900); - - multiGraph = std::make_unique("multiGraph", "mclient"); -} - -void GraphManager::DrawEvent(const mclient_storage::Event& event) { - graphs.clear(); - for (size_t i = 0; i < event.size(); i++) { - auto [channel, data] = event.get_signal_id_data_pair(i); - graphs.emplace_back(); - auto& graph = graphs.back(); - graph.SetTitle(Form("Channel %d", channel)); - - for (size_t j = 0; j < data.size(); j++) { - graph.SetPoint(j, j, data[j]); - } - - graph.SetLineWidth(3); - // random color - graph.SetLineColor(i + 1); - } - - multiGraph->Clear(); - for (auto& graph: graphs) { - multiGraph->Add(&graph); - } - - multiGraph->SetTitle(Form("Event %d", event.id)); - - multiGraph->GetXaxis()->SetTitle("Time bin"); - multiGraph->GetYaxis()->SetTitle("ADC value"); - - multiGraph->GetXaxis()->SetRangeUser(0, mclient_storage::MAX_POINTS); - multiGraph->GetXaxis()->SetNdivisions(mclient_storage::MAX_POINTS / 64, 5, 0); - - canvas->cd(); - - multiGraph->Draw("AL"); - - canvas->Update(); - - gSystem->ProcessEvents(); - - lastDrawTime = std::chrono::system_clock::now(); -} diff --git a/src/root/graph.h b/src/root/graph.h deleted file mode 100644 index 874fb80..0000000 --- a/src/root/graph.h +++ /dev/null @@ -1,46 +0,0 @@ - -#ifndef MCLIENT_GRAPH_H -#define MCLIENT_GRAPH_H - -#include -#include -#include -#include - -#include - -#include "storage.h" - -namespace mclient_graph { -class GraphManager { -public: - static GraphManager& Instance() { - static GraphManager instance; - return instance; - } - - GraphManager(const GraphManager&) = delete; - - GraphManager& operator=(const GraphManager&) = delete; - - GraphManager(); - - void DrawEvent(const mclient_storage::Event& event); - - double GetSecondsSinceLastDraw() { - auto duration = std::chrono::system_clock::now() - lastDrawTime; - return std::chrono::duration(duration).count(); - } - -private: - std::unique_ptr canvas; - std::vector graphs; - std::unique_ptr multiGraph; - std::unique_ptr app; - - std::chrono::time_point lastDrawTime = std::chrono::system_clock::now() - std::chrono::hours(1); -}; - -} // namespace mclient_graph - -#endif // MCLIENT_GRAPH_H