Multimap dictionary

Dear ROOTers,
I have some problem with:

    std::multimap<int,int> mapId2j; // id->j
    std::pair<std::multimap<int,int>::iterator,std::multimap<int,int>::iterator> ret

I would like to use this object, I added to linkdef:

#pragma link C++ class std::multimap<int,int>;
#pragma link C++ class std::pair<std::multimap<int,int>::iterator,std::multimap<int,int>::iterator>;

But I get error “cant call equal_range” here:
ret = mapId2j.equal_range(mit->first);
this is somehow weird for me. Should I define somehow in linkdef each function that I want to use? Or I made some mistake?
I noticed that I can call std::multimap<int,int>, CINT seems to show few methods but not equal_range.


multimap is seamlessly supported in ROOT6.


This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.