Dear ROOT,
I have a class for which I use reflex I/O, which formerly contained a member:
std::vector<TrackConstraintOnSurface*> m_constraints;
I have replaced this std::vector with a custom object:
TrackConstraintList m_constraints;
I am providing conversion from the old type to the new type through a constructor and an operator=:
TrackConstraintList(const std::vector<MuonAlign::TrackConstraintOnSurface*>&);
TrackConstraintList& operator= (const std::vector<MuonAlign::TrackConstraintOnSurface*>&);
However ROOT’s automatic schema evolution is confused by that when I try to read an old file:
What is the a proper way to tell ROOT schema evolution about this change of type?
As a side question, I’ve tried to implement the manual schema evolution documented here:
http://root.cern.ch/root/html532/io/DataModelEvolution.html
However, this needs me to set the version of my class in Reflex. Could you tell me how to do that? (i.e. how do I ClassDef with Reflex?)
Many thanks,
Pierre-François