All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ICARUSPhotonMappingTransformations_tool.cc
Go to the documentation of this file.
1 /**
2  * @file icaruscode/PMT/LibraryMappingTools/ICARUSPhotonMappingTransformations_tool.cc
3  * @brief A photon mapping identity transformation: toolification.
4  * @author Gianluca Petrillo (petrillo@slac.stanford.edu)
5  * @date April 3, 2019
6  * @see `icaruscode/PMT/LibraryMappingTools/ICARUSPhotonMappingTransformations.h`
7  * `icaruscode/PMT/LibraryMappingTools/ICARUSPhotonMappingTransformations.cxx`
8  *
9  * Note that the separation of the code into a implementation and a tool part
10  * is not because of factorization to have art-independent code, but because
11  * we want this object to be customizable by inheritance.
12  * An _art_ tool derived from `phot::ICARUSPhotonMappingTransformations` class
13  * must link with the library where its implementation is defined. When that
14  * library also contains the registration of the tool into the _art_ framework
15  * (`DEFINE_ART_CLASS_TOOL()` macro), the functions registering the base tool
16  * will conflict with the ones for the registration of the derived tool.
17  *
18  */
19 
20 
21 // LArSoft libraries
23 
24 // framework libraries
25 #include "art/Utilities/ToolMacros.h"
26 
27 
28 //------------------------------------------------------------------------------
29 DEFINE_ART_CLASS_TOOL(phot::ICARUSPhotonMappingTransformations)
30 
31 
32 //------------------------------------------------------------------------------
33 
Photon library mapping for ICARUS geometry.
Photon library mapping for ICARUS geometry.