Project

General

Profile

Bug #9791

Deprecated definition of template specializations in classes.h files

Added by Gianluca Petrillo over 5 years ago. Updated over 4 years ago.

Status:
Closed
Priority:
Low
Category:
Other
Target version:
-
Start date:
08/05/2015
Due date:
% Done:

100%

Estimated time:
Occurs In:
Experiment:
LArSoft
Co-Assignees:
Duration:

Description

The mechanism we use to instruct ROOT to create dictionaries in classes.h files has been declared deprecated by the art team.
This was mentioned in the art/LArSoft school data product session .

The deprecated construct:

template class art::Wrapper< std::vector<recob::Hit> >;
// more products ...

should be replaced with something like:
namespace {
  struct products {
    art::Wrapper< std::vector<recob::Hit> > hit;
    // more products ...
  }; // struct products
} // local namespace

History

#1 Updated by Lynn Garren over 5 years ago

  • Status changed from New to Assigned
  • Assignee set to Gianluca Petrillo

#2 Updated by Gianluca Petrillo over 4 years ago

  • Status changed from Assigned to Resolved
  • % Done changed from 0 to 100
  • Experiment LArSoft added
  • Experiment deleted (-)

We dragged it long enough that ROOT 6 came, and with it both explicit template instantiation and dummy variable declaration became obsolete.
Lynn Garren already removed both from LArSoft classes.h, and the only survival in LArSoft 6-adopting experiments is in MicroBooNE code (issue #13442).

I love it when a plan comes together.

#3 Updated by Gianluca Petrillo over 4 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF