44#include <ROOT/RNTupleWriteOptions.hxx>
55#include <ROOT/RNTupleWriter.hxx>
66
7- using ROOT ::ENTupleColumnType ;
8- using ROOT ::RField ;
9- using ROOT ::RNTupleModel ;
10- using ROOT ::RNTupleWriteOptions ;
11- using ROOT ::RNTupleWriter ;
12-
137#include <cstdint>
148#include <memory>
159#include <string>
@@ -18,37 +12,40 @@ using ROOT::RNTupleWriter;
1812
1913using Vector = std ::vector < std ::int32_t > ;
2014
21- static std ::shared_ptr < Vector > MakeVectorField ( RNTupleModel & model ,
22- std ::string_view name ,
23- ENTupleColumnType indexType ) {
24- auto field = std ::make_unique < RField < Vector >>(name );
15+ static std ::shared_ptr < Vector >
16+ MakeVectorField ( ROOT :: RNTupleModel & model , std ::string_view name ,
17+ ROOT :: ENTupleColumnType indexType ) {
18+ auto field = std ::make_unique < ROOT :: RField < Vector >>(name );
2519 field -> SetColumnRepresentatives ({{indexType }});
2620 model .AddField (std ::move (field ));
2721 return model .GetDefaultEntry ().GetPtr < Vector > (name );
2822}
2923
3024template < typename T >
31- static void AddProjectedCardinalityField (RNTupleModel & model ,
25+ static void AddProjectedCardinalityField (ROOT :: RNTupleModel & model ,
3226 std ::string_view name ,
3327 std ::string_view source ) {
34- auto field = std ::make_unique < RField < ROOT ::RNTupleCardinality < T >>> (name ) ;
28+ auto field =
29+ std ::make_unique < ROOT ::RField < ROOT ::RNTupleCardinality < T >>> (name ) ;
3530 model .AddProjectedField (std ::move (field ), [& source ](const std ::string & ) {
3631 return std ::string {source };
3732 });
3833}
3934
4035void write (std ::string_view filename = "projections.cardinality.root" ) {
41- auto model = RNTupleModel ::Create ();
36+ auto model = ROOT :: RNTupleModel ::Create ();
4237
4338 // Non-split index encoding
44- auto Index32 = MakeVectorField (* model , "Index32" , ENTupleColumnType ::kIndex32 );
45- auto Index64 = MakeVectorField (* model , "Index64" , ENTupleColumnType ::kIndex64 );
39+ auto Index32 =
40+ MakeVectorField (* model , "Index32" , ROOT ::ENTupleColumnType ::kIndex32 );
41+ auto Index64 =
42+ MakeVectorField (* model , "Index64" , ROOT ::ENTupleColumnType ::kIndex64 );
4643
4744 // Split index encoding
48- auto SplitIndex32 =
49- MakeVectorField ( * model , "SplitIndex32" , ENTupleColumnType ::kSplitIndex32 );
50- auto SplitIndex64 =
51- MakeVectorField ( * model , "SplitIndex64" , ENTupleColumnType ::kSplitIndex64 );
45+ auto SplitIndex32 = MakeVectorField ( * model , "SplitIndex32" ,
46+ ROOT :: ENTupleColumnType ::kSplitIndex32 );
47+ auto SplitIndex64 = MakeVectorField ( * model , "SplitIndex64" ,
48+ ROOT :: ENTupleColumnType ::kSplitIndex64 );
5249
5350 // Create RNTupleCardinality projections
5451 AddProjectedCardinalityField < std ::uint32_t > (* model , "Index32Cardinality" ,
@@ -60,10 +57,10 @@ void write(std::string_view filename = "projections.cardinality.root") {
6057 AddProjectedCardinalityField < std ::uint64_t > (* model , "SplitIndex64Cardinality" ,
6158 "SplitIndex64" );
6259
63- RNTupleWriteOptions options ;
60+ ROOT :: RNTupleWriteOptions options ;
6461 options .SetCompression (0 );
65- auto writer =
66- RNTupleWriter :: Recreate ( std :: move ( model ), " ntpl ", filename , options );
62+ auto writer = ROOT :: RNTupleWriter :: Recreate ( std :: move ( model ), " ntpl ",
63+ filename , options );
6764
6865 // First entry: single-element vectors, with ascending values
6966 * Index32 = {1 };
0 commit comments