PhotonVisibilityTypes.h
Go to the documentation of this file.
1 /**
2  * @file larsim/PhotonPropagation/PhotonVisibilityTypes.h
3  * @brief Declaration of types related to photon visibility.
4  * @author Gianluca Petrillo (petrillo@slac.stanford.edu)
5  * @date April 5, 2019
6  * @see larsim/PhotonPropagation/PhotonVisibilityService.h
7  *
8  * The purpose of this header is to allow the inclusion of the types needed
9  * for interacting with `phot::PhotonVisibilityService` without having to
10  * include the full service.
11  *
12  * This is a header-only library.
13  */
14 
15 #ifndef LARSIM_PHOTONPROPAGATION_PHOTONVISIBILITYTYPES_H
16 #define LARSIM_PHOTONPROPAGATION_PHOTONVISIBILITYTYPES_H
17 
18 
19 // LArSoft libraries
22 
23 
24 namespace phot{
25 
26  /// Type of (global) optical detector ID.
28 
29  /**
30  * @brief Type of mapped visibility counts.
31  *
32  * No data storage is provided.
33  *
34  * This is the type returned by `phot::PhotonVisibilityService` when asked
35  * about visibility of a point from _all_ the optical detectors.
36  *
37  * It used to be `float const*`.
38  */
39  using MappedCounts_t
42  ;
43 
44  /**
45  * @brief Type of mapped arrival times.
46  *
47  * No data storage is provided.
48  *
49  * This is the type returned by `phot::PhotonVisibilityService` when asked
50  * about time of arrival from a point to _all_ the optical detectors.
51  */
52  using MappedT0s_t
55  ;
56 
57  /**
58  * @brief Type of set of parameters for functions.
59  *
60  * No data storage is provided.
61  *
62  * This is the type returned by `phot::PhotonVisibilityService` when asked
63  * about any parametrized... parameter, from a point to _all_ the optical
64  * detectors.
65  */
66  using MappedParams_t
69  ;
70 
71  /**
72  * @brief Type of mapped parametrization functions.
73  *
74  * No data storage is provided.
75  *
76  * This is the type returned by `phot::PhotonVisibilityService` when asked
77  * about any parameter directlyt described by functions (glorious ROOT `TF1`),
78  * from a point to _all_ the optical detectors.
79  */
80  using MappedFunctions_t
83  ;
84 
85 } // namespace phot
86 
87 
88 #endif // LARSIM_PHOTONPROPAGATION_PHOTONVISIBILITYTYPES_H
Interface for transformation of photon visibility maps.
phot::IPhotonMappingTransformations::OpDetID_t OpDetID_t
Type of (global) optical detector ID.
std::vector< float > const * Params_t
int OpDetID_t
Type describing a optical detector ID.
General LArSoft Utilities.
A container for photon visibility mapping data.
const float * Counts_t
Type for visibility count per optical channel.
const float * T0s_t
Type for time of arrival per optical channel.