ndmspc 0.20250304.0
Loading...
Searching...
No Matches
PointDraw.h
1#ifndef NdmspcCorePointDraw_H
2#define NdmspcCorePointDraw_H
3
4#include <TObject.h>
5#include <TFile.h>
6#include <THnSparse.h>
7#include <TH1.h>
8#include <TVirtualPad.h>
9#include <TObject.h>
10#include <nlohmann/json.hpp>
11using json = nlohmann::json;
12namespace Ndmspc {
13
20
21class PointDraw : public TObject {
22 public:
23 PointDraw();
24 virtual ~PointDraw();
25
26 int DrawPoint(int level, std::string config = "myAnalysis.json", std::string userConfig = "",
27 std::string environment = "", std::string userConfigRaw = "", std::string binning = "");
28
29 protected:
30 TFile * fIn = nullptr;
31 THnSparse * fResultHnSparse = nullptr;
33 std::string fCurrentContentPath;
34 std::vector<int> fParameterPoint;
35 std::vector<int> fProjectionAxes;
36 TH1 * fMapAxesType = nullptr;
37 std::string fMapTitle;
38 TH1 * fParamMapHistogram = nullptr;
39 int fNDimCuts = 0;
40 std::vector<std::string> fData{};
41 std::vector<int> fDataId{};
42 std::vector<std::string> fMc{};
43 std::vector<int> fMcId{};
44 static std::string fgEnvironment;
45
46 public:
47 void HighlightMain(TVirtualPad * pad, TObject * obj, Int_t xBin, Int_t yBin);
48 void HighlightParam(TVirtualPad * pad, TObject * obj, Int_t xBin, Int_t yBin);
49 void HighlightData(TVirtualPad * pad, TObject * obj, Int_t xBin, Int_t yBin);
50 void HighlightProjectionPoint(TVirtualPad * pad, TObject * obj, Int_t xBin, Int_t yBin);
51 void UpdateRanges();
52 void DrawProjections(bool ignoreMapping = false);
53 void DrawUser();
55 static void SetEnvironment(std::string env) { fgEnvironment = env; }
56
58 ClassDef(PointDraw, 1);
60};
61} // namespace Ndmspc
62#endif /* PointRun_H */
PointDraw object.
Definition PointDraw.h:21
std::vector< int > fDataId
Data ids.
Definition PointDraw.h:41
int fNDimCuts
Number of dimension cuts.
Definition PointDraw.h:39
void DrawProjections(bool ignoreMapping=false)
int DrawPoint(int level, std::string config="myAnalysis.json", std::string userConfig="", std::string environment="", std::string userConfigRaw="", std::string binning="")
Definition PointDraw.cxx:37
static void SetEnvironment(std::string env)
Sets environment.
Definition PointDraw.h:55
std::vector< int > fParameterPoint
Parameter point.
Definition PointDraw.h:34
THnSparse * fResultHnSparse
Result HnSparse.
Definition PointDraw.h:31
std::vector< std::string > fMc
MC.
Definition PointDraw.h:42
TH1 * fMapAxesType
Map axes type.
Definition PointDraw.h:36
std::string fMapTitle
Map title.
Definition PointDraw.h:37
std::string fCurrentParameterName
Current parameter name.
Definition PointDraw.h:32
std::vector< int > fMcId
MC ids.
Definition PointDraw.h:43
void HighlightParam(TVirtualPad *pad, TObject *obj, Int_t xBin, Int_t yBin)
TH1 * fParamMapHistogram
Param map histogram.
Definition PointDraw.h:38
virtual ~PointDraw()
Definition PointDraw.cxx:30
void HighlightData(TVirtualPad *pad, TObject *obj, Int_t xBin, Int_t yBin)
void HighlightProjectionPoint(TVirtualPad *pad, TObject *obj, Int_t xBin, Int_t yBin)
std::vector< std::string > fData
Data.
Definition PointDraw.h:40
void HighlightMain(TVirtualPad *pad, TObject *obj, Int_t xBin, Int_t yBin)
TFile * fIn
Input file.
Definition PointDraw.h:30
std::string fCurrentContentPath
Current content path.
Definition PointDraw.h:33
std::vector< int > fProjectionAxes
Projection axes.
Definition PointDraw.h:35
static std::string fgEnvironment
Currnet environment.
Definition PointDraw.h:44