Skip to content

Commit b67962c

Browse files
committed
[hist] Request dictionaries for common RHist<T>
Also request unsigned integer types and RBinWithError for RHistEngine.
1 parent c1482e6 commit b67962c

File tree

2 files changed

+61
-2
lines changed

2 files changed

+61
-2
lines changed

hist/histv7/inc/LinkDef.h

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,24 @@
1-
// For RHistEngine, we request dictionaries for the most commonly used bin content types. This results in proper error
2-
// messages when trying to stream. Other instantiations will be caught by the RAxes member.
1+
// For RHist and RHistEngine, we request dictionaries for the most commonly used bin content types. This results in
2+
// proper error messages when trying to stream. Other instantiations will be caught by the RAxes member.
3+
#pragma link C++ class ROOT::Experimental::RHist<int>-;
4+
#pragma link C++ class ROOT::Experimental::RHist<unsigned>-;
5+
#pragma link C++ class ROOT::Experimental::RHist<long>-;
6+
#pragma link C++ class ROOT::Experimental::RHist<unsigned long>-;
7+
#pragma link C++ class ROOT::Experimental::RHist<long long>-;
8+
#pragma link C++ class ROOT::Experimental::RHist<unsigned long long>-;
9+
#pragma link C++ class ROOT::Experimental::RHist<float>-;
10+
#pragma link C++ class ROOT::Experimental::RHist<double>-;
11+
#pragma link C++ class ROOT::Experimental::RHist<ROOT::Experimental::RBinWithError>-;
12+
313
#pragma link C++ class ROOT::Experimental::RHistEngine<int>-;
14+
#pragma link C++ class ROOT::Experimental::RHistEngine<unsigned>-;
415
#pragma link C++ class ROOT::Experimental::RHistEngine<long>-;
16+
#pragma link C++ class ROOT::Experimental::RHistEngine<unsigned long>-;
517
#pragma link C++ class ROOT::Experimental::RHistEngine<long long>-;
18+
#pragma link C++ class ROOT::Experimental::RHistEngine<unsigned long long>-;
619
#pragma link C++ class ROOT::Experimental::RHistEngine<float>-;
720
#pragma link C++ class ROOT::Experimental::RHistEngine<double>-;
21+
#pragma link C++ class ROOT::Experimental::RHistEngine<ROOT::Experimental::RBinWithError>-;
822

923
#pragma link C++ class ROOT::Experimental::RHistStats-;
1024
#pragma link C++ class ROOT::Experimental::RRegularAxis-;

hist/histv7/test/hist_io.cxx

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,21 +64,66 @@ TEST(RHistEngine, Streamer)
6464
const RHistEngine<int> engineI({axis});
6565
ExpectThrowOnWriteObject(engineI);
6666

67+
const RHistEngine<unsigned> engineU({axis});
68+
ExpectThrowOnWriteObject(engineU);
69+
6770
const RHistEngine<long> engineL({axis});
6871
ExpectThrowOnWriteObject(engineL);
6972

73+
const RHistEngine<unsigned long> engineUL({axis});
74+
ExpectThrowOnWriteObject(engineUL);
75+
7076
const RHistEngine<long long> engineLL({axis});
7177
ExpectThrowOnWriteObject(engineLL);
7278

79+
const RHistEngine<unsigned long long> engineULL({axis});
80+
ExpectThrowOnWriteObject(engineULL);
81+
7382
const RHistEngine<float> engineF({axis});
7483
ExpectThrowOnWriteObject(engineF);
7584

7685
const RHistEngine<double> engineD({axis});
7786
ExpectThrowOnWriteObject(engineD);
87+
88+
const RHistEngine<RBinWithError> engineE({axis});
89+
ExpectThrowOnWriteObject(engineE);
7890
}
7991

8092
TEST(RHistStats, Streamer)
8193
{
8294
const RHistStats stats(1);
8395
ExpectThrowOnWriteObject(stats);
8496
}
97+
98+
TEST(RHist, Streamer)
99+
{
100+
static constexpr std::size_t Bins = 20;
101+
const RRegularAxis axis(Bins, 0, Bins);
102+
103+
const RHist<int> histI({axis});
104+
ExpectThrowOnWriteObject(histI);
105+
106+
const RHist<unsigned> histU({axis});
107+
ExpectThrowOnWriteObject(histU);
108+
109+
const RHist<long> histL({axis});
110+
ExpectThrowOnWriteObject(histL);
111+
112+
const RHist<unsigned long> histUL({axis});
113+
ExpectThrowOnWriteObject(histUL);
114+
115+
const RHist<long long> histLL({axis});
116+
ExpectThrowOnWriteObject(histLL);
117+
118+
const RHist<unsigned long long> histULL({axis});
119+
ExpectThrowOnWriteObject(histULL);
120+
121+
const RHist<float> histF({axis});
122+
ExpectThrowOnWriteObject(histF);
123+
124+
const RHist<double> histD({axis});
125+
ExpectThrowOnWriteObject(histD);
126+
127+
const RHist<RBinWithError> histE({axis});
128+
ExpectThrowOnWriteObject(histE);
129+
}

0 commit comments

Comments
 (0)