NCFS-Pack
A generic (astro)particle physics analysis framework
 
Loading...
Searching...
No Matches
RnoExplorer.h
Go to the documentation of this file.
1#ifndef RnoExplorer_h
2#define RnoExplorer_h
3// Copyright(c) 2023, NCFS/IIHE, All Rights Reserved.
4// See cxx source for full Copyright notice.
5
6#include <math.h>
7
8#include "TROOT.h"
9#include "TSystem.h"
10#include "TCanvas.h"
11#include "TFile.h"
12#include "TChain.h"
13
14#include "TApplication.h"
15#include "TGFrame.h"
16#include "TGComboBox.h"
17#include "TGNumberEntry.h"
18#include "TGButtonGroup.h"
19
20#include "NcVersion.h"
21#include "RnoEvent.h"
22#include "NcBlocks.h"
23#include "NcDSP.h"
24#include "NcAstrolab.h"
25
27
28class RnoExplorer : public TChain
29{
30 public:
31 RnoExplorer(const char* name="T",const char* title="RnoExplorer"); // Constructor
32 virtual ~RnoExplorer(); // Destructor
33 void ShowPanel(); // Show the GUI panel
34 void FileAdd(); // Add the specified input file to the input chain
35 void LoadEntry(); // Load the specified entry
36 void LoadEvent(); // Load the specified (run,event)
37 void ExpChannel(const char* text); // Update the channel selection
38 void ExpMode(Int_t i); // Set the sampling mode
39 void ExpFmV(const char* text); // Update the function for the ADC->mV conversion
40 void ExpOpsMode(Int_t i); // Set the mode for the operations processing
41 void ExpOpsPar1(const char* text); // Update the operations parameter1
42 void ExpOpsPar2(const char* text); // Update the operations parameter2
43 void ExpOpsPar3(const char* text); // Update the operations parameter3
44 void ExpExecMode(Int_t i); // Select the execution mode for the selected operation(s) for the requested channel(s)
45 void ExpExecute(); // Execute the selected operation(s) for the requested channel(s)
46 void ExpDevName(const char* text); // Update the device (class) name selection
47 void ListDate(); // List the event date/time info
48 void ListDevices(); // List the various devices
49 void ListDAQ(); // List the event DAQ status
50 void ListTriggers(); // List the event trigger data
51 void ListTags(); // List the event tag/filter data
52 void ExpClose(); // Close the explorer panel window
53 void ExpExit(); // Exit the current ROOT session
54 RnoEvent* GetEvent(); // Provide the pointer to the event structure
55
56 protected:
57 Int_t fEnt; // The current TChain entry number
58 RnoEvent* fEvt; // Pointer to the RnoEvent object
59 Double_t fSample; // The DAQ sampling rate
60 Int_t fStation; // The current station number
61 Int_t fChannel; // The selected channel number (-1=all)
62 TString fMode; // The sampling mode
63 TString fFmV; // Description of the ADC->mV conversion
64 TString fOpsMode; // The mode for the operations processing
65 TString fOpsPars[3]; // The parameter values for the operations
66 TString fExecMode; // The parameter for the execution mode
67 TH1F fHistos[3][24]; // Histograms of the various Stores/channels for analysis
68 TString fYtitles[3][24]; // Y-axis title of the time domain input of the Fourier transform for the various Stores/channels
69 TArrayD fReArr[3][24]; // Real Fourier coefficients for the various Stores/channels
70 TArrayD fImArr[3][24]; // Imaginary Fourier coefficients for the various Stores/channels
71 TArrayD fFilterBands[24]; // Filter band fequencies for the various channels
72
73 TString fDevName; // The device (class) name for listing
74
75 TCanvas* fCanvas[3]; // The canvases for the storage and analysis displays
76
77 NcBlocks fBB; // (Bayesian) Block facilities
78 NcDSP fDSP; // DSP facilities
79
80 TGMainFrame* fExpPanel; // The panel mainframe
81 TGTextEntry* fFiles; // The text entry for the input filenames
82 TGTextEntry* fNentries; // The text window to show the number of entries
83 Bool_t fConnected; // Flag to indicate that the input branch is connected
84 TGTextEntry* fEntry; // The text entry to select a specific entry
85 TGTextEntry* fHead[4]; // The text windows to show the event header data
86 TGTextEntry* fParams[3]; // The text windows for the various operations parameters
87
88 Bool_t fIndexed; // Flag to indicate whether the input data have been indexed or not
89
90 // Internal functions for the composition of the various sub-panels of the ExplorerPanel GUI
91 virtual void ExplorePanel(); // Main routine for creation of the GUI panel
92 virtual void FilesPanel(TGCompositeFrame* frame); // Compose the input file and entries panel
93 virtual void HeaderPanel(TGCompositeFrame* frame); // Compose the entry selection and event header info panel
94 virtual void SamplingsPanel(TGCompositeFrame* frame); // Compose the samplings selection panel
95 virtual void CommandPanel(TGCompositeFrame* frame); // Compose the command panel
96 void HeadEnter(); // Internal memberfunction to enter the event header data into the information windows
97 void GetHistograms(Int_t jstore); // Internal memberfunction to obtain the requested output histograms
98 void DrawResult(Int_t jstore); // Draw the result of the selected operation(s) for the requested channel(s)
99
100 ClassDef(RnoExplorer,2) // Graphical User Interface (GUI) to explore RNO-G event data.
101};
102#endif
103
(Bayesian) Block treatment of sequential data.
Definition NcBlocks.h:17
Various Digital Signal Processing (DSP) operations for (sequential) data samples.
Definition NcDSP.h:21
Handling of RNO-G event data.
Definition RnoEvent.h:14
Int_t fChannel
Definition RnoExplorer.h:61
NcBlocks fBB
Definition RnoExplorer.h:77
void ExpMode(Int_t i)
TString fMode
Definition RnoExplorer.h:62
TString fDevName
Definition RnoExplorer.h:73
virtual void FilesPanel(TGCompositeFrame *frame)
virtual void CommandPanel(TGCompositeFrame *frame)
Bool_t fConnected
Definition RnoExplorer.h:83
RnoEvent * GetEvent()
void ExpOpsPar3(const char *text)
virtual ~RnoExplorer()
TString fYtitles[3][24]
Definition RnoExplorer.h:68
void GetHistograms(Int_t jstore)
TArrayD fFilterBands[24]
Definition RnoExplorer.h:71
TGTextEntry * fParams[3]
Definition RnoExplorer.h:86
void ExpOpsPar1(const char *text)
void ExpOpsPar2(const char *text)
TGMainFrame * fExpPanel
Definition RnoExplorer.h:80
TH1F fHistos[3][24]
Definition RnoExplorer.h:67
TArrayD fImArr[3][24]
Definition RnoExplorer.h:70
void ExpOpsMode(Int_t i)
TGTextEntry * fFiles
Definition RnoExplorer.h:81
TString fExecMode
Definition RnoExplorer.h:66
virtual void ExplorePanel()
virtual void SamplingsPanel(TGCompositeFrame *frame)
virtual void HeaderPanel(TGCompositeFrame *frame)
Double_t fSample
Definition RnoExplorer.h:59
void ExpChannel(const char *text)
Int_t fStation
Definition RnoExplorer.h:60
void ExpFmV(const char *text)
void ExpExecute()
TString fOpsMode
Definition RnoExplorer.h:64
TGTextEntry * fEntry
Definition RnoExplorer.h:84
void ExpExecMode(Int_t i)
TString fFmV
Definition RnoExplorer.h:63
Bool_t fIndexed
Definition RnoExplorer.h:88
TGTextEntry * fHead[4]
Definition RnoExplorer.h:85
TCanvas * fCanvas[3]
Definition RnoExplorer.h:75
RnoEvent * fEvt
Definition RnoExplorer.h:58
TArrayD fReArr[3][24]
Definition RnoExplorer.h:69
void DrawResult(Int_t jstore)
void ListTriggers()
TString fOpsPars[3]
Definition RnoExplorer.h:65
RnoExplorer(const char *name="T", const char *title="RnoExplorer")
void ExpDevName(const char *text)
TGTextEntry * fNentries
Definition RnoExplorer.h:82