Skip to content

Commit

Permalink
groot/{rcmd,rdict}: add support for reading ROOT::VecOps::RVec<T>
Browse files Browse the repository at this point in the history
Signed-off-by: Sebastien Binet <binet@cern.ch>
  • Loading branch information
sbinet committed May 12, 2022
1 parent fd8c2dc commit dc2dcf6
Show file tree
Hide file tree
Showing 6 changed files with 301 additions and 5 deletions.
5 changes: 5 additions & 0 deletions groot/rcmd/dump_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -328,6 +328,11 @@ key[004]: tree;1 "my tree title" (TTree)
name: "../testdata/tgme.root",
want: loadRef("testdata/tgme.root.txt"),
},
{
// ROOT::VecOps::RVec<T>
name: "../testdata/rvec.root",
want: loadRef("testdata/rvec.root.txt"),
},
} {
t.Run(tc.name, func(t *testing.T) {
got := new(strings.Builder)
Expand Down
291 changes: 291 additions & 0 deletions groot/rcmd/testdata/rvec.root.txt

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions groot/rdict/rstreamer.go
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,7 @@ func (si *StreamerInfo) makeROp(sictx rbytes.StreamerInfoContext, i int, descr e

case *StreamerSTL:
switch se.STLType() {
case rmeta.STLvector, rmeta.STLlist, rmeta.STLdeque:
case rmeta.STLvector, rmeta.STLlist, rmeta.STLdeque, rmeta.STLend:
var (
ct = se.ContainedType()
typename = se.TypeName()
Expand Down Expand Up @@ -467,7 +467,7 @@ func (si *StreamerInfo) makeROp(sictx rbytes.StreamerInfoContext, i int, descr e

case *StreamerSTL:
switch se.STLType() {
case rmeta.STLvector, rmeta.STLlist, rmeta.STLdeque:
case rmeta.STLvector, rmeta.STLlist, rmeta.STLdeque, rmeta.STLend:
var (
ct = se.ContainedType()
typename = se.TypeName()
Expand Down
2 changes: 1 addition & 1 deletion groot/rdict/type.go
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,7 @@ func TypeFromSE(ctx rbytes.StreamerInfoContext, se rbytes.StreamerElement) (refl

case *StreamerSTL:
switch se.STLType() {
case rmeta.STLvector, rmeta.STLlist, rmeta.STLdeque:
case rmeta.STLvector, rmeta.STLlist, rmeta.STLdeque, rmeta.STLend:
var (
ct = se.ContainedType()
typevers = int16(-1)
Expand Down
4 changes: 2 additions & 2 deletions groot/rdict/wstreamer.go
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@ func (si *StreamerInfo) makeWOp(sictx rbytes.StreamerInfoContext, i int, descr e

case *StreamerSTL:
switch se.STLType() {
case rmeta.STLvector, rmeta.STLlist, rmeta.STLdeque:
case rmeta.STLvector, rmeta.STLlist, rmeta.STLdeque, rmeta.STLend:
var (
ct = se.ContainedType()
typename = se.TypeName()
Expand Down Expand Up @@ -423,7 +423,7 @@ func (si *StreamerInfo) makeWOp(sictx rbytes.StreamerInfoContext, i int, descr e

case *StreamerSTL:
switch se.STLType() {
case rmeta.STLvector, rmeta.STLlist, rmeta.STLdeque:
case rmeta.STLvector, rmeta.STLlist, rmeta.STLdeque, rmeta.STLend:
var (
ct = se.ContainedType()
typename = se.TypeName()
Expand Down
Binary file added groot/testdata/rvec.root
Binary file not shown.

0 comments on commit dc2dcf6

Please sign in to comment.