The pointer specified for ** is not of a class known to ROOT


I’m coding some athena stuff and I want to use addBranch with an object that has been declared as std::vector< std::vector >.

I use the same method with std::vector< std::vector > and it’s working fine and in another Algorithm I’m using addBranch with std::vector and it’s also working. I have an #include in both files, the .cxx and the .h

But with std::vector< std::vector > I get an error message as mentioned in the Subject.

What do I have to do? I know that originally the type std::vector< std::vector > wasn’t supposed to be used in addBranch, too. So someone changed something somewhere, but I have no idea what.

Thanks for your help!

Did you generate the dictionary for your vector<vector<… ?
Somewhere you must have a declaration in your LinkDef.h file like

#pragma link C++ class std::vector< std::vector<unsigned int> >+;