All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Types | Public Member Functions | List of all members
phot::PhotonMappingXMirrorTransformations Class Reference

Photon mapping transformation with reflection at x = 0. More...

#include <PhotonMappingXMirrorTransformations.h>

Inheritance diagram for phot::PhotonMappingXMirrorTransformations:
phot::PhotonMappingIdentityTransformations phot::IPhotonMappingTransformations

Classes

struct  Config
 

Public Types

using Parameters = art::ToolConfigTable< Config >
 
- Public Types inherited from phot::PhotonMappingIdentityTransformations
using Parameters = art::ToolConfigTable< Config >
 
- Public Types inherited from phot::IPhotonMappingTransformations
using OpDetID_t = int
 Type describing a optical detector ID. More...
 
using LibraryIndex_t = OpDetID_t
 Type describing a library index. FIXME former LibraryOpDetID_t. More...
 
using LibraryIndexToOpDetMap = std::vector< OpDetID_t >
 Type describing the mapping of optical detectors into library indices. More...
 
using OpDetToLibraryIndexMap = std::vector< LibraryIndex_t >
 Type describing the mapping of library indices into optical detectors. More...
 
template<typename LibDataColl >
using MappedOpDetData_t = phot::OpDetVisibilityData< util::collection_reference_t< LibDataColl >, util::collection_reference_t< OpDetToLibraryIndexMap const > >
 Type of optical detector data collection. More...
 

Public Member Functions

 PhotonMappingXMirrorTransformations (Parameters const &config)
 
 PhotonMappingXMirrorTransformations (Config const &config)
 
virtual geo::Point_t detectorToLibrary (geo::Point_t const &location) const override
 Returns the representation within the library of a detector location. More...
 
- Public Member Functions inherited from phot::PhotonMappingIdentityTransformations
 PhotonMappingIdentityTransformations (Config const &)
 Constructor: ignores the configuration. More...
 
 PhotonMappingIdentityTransformations (Parameters const &config)
 Constructor: ignores the configuration. More...
 
LibraryIndex_t opDetToLibraryIndex (geo::Point_t const &location, OpDetID_t opDetID) const override
 Maps an optical detector with its library index. More...
 
OpDetID_t libraryIndexToOpDet (geo::Point_t const &location, LibraryIndex_t libIndex) const override
 Maps a library index with an optical detector. More...
 
OpDetToLibraryIndexMap const & opDetsToLibraryIndices (geo::Point_t const &location) const override
 Returns a map of library indices as function of optical detectors. More...
 
std::size_t opDetMappingSize () const override
 Expected number of mappings of optical detector into library index. More...
 
LibraryIndexToOpDetMap const & libraryIndicesToOpDets (geo::Point_t const &location) const override
 Returns a map of optical detectors identifiers, one for each library index. More...
 
std::size_t libraryMappingSize (geo::Point_t const &location) const override
 Size of the mapping of library optical detectors. More...
 
- Public Member Functions inherited from phot::IPhotonMappingTransformations
virtual ~IPhotonMappingTransformations ()=default
 
template<typename Coll >
auto applyOpDetMapping (OpDetToLibraryIndexMap const &opDetToLibraryMap, Coll &&source, util::collection_value_t< Coll > defaultValue) const -> MappedOpDetData_t< Coll >
 
template<typename Coll >
MappedOpDetData_t< Coll > applyOpDetMapping (OpDetToLibraryIndexMap const &opDetToLibraryMap, Coll &&source, util::collection_value_t< Coll > defaultValue={}) const
 Remaps a collection indexed by library index into one indexed by optical detector IDs. More...
 
template<typename Coll >
auto applyOpDetMapping (geo::Point_t const &location, Coll &&source, util::collection_value_t< Coll > defaultValue={}) const
 Remaps a collection indexed by library index into one indexed by optical detector IDs according to the mapping at location. More...
 

Additional Inherited Members

- Static Public Attributes inherited from phot::IPhotonMappingTransformations
static constexpr OpDetID_t InvalidOpDetID = std::numeric_limits<OpDetID_t>::max()
 Value used to identify an invalid optical detector. More...
 
static constexpr LibraryIndex_t InvalidLibraryIndex = std::numeric_limits<LibraryIndex_t>::max()
 Value used for an invalid library index. More...
 
- Protected Member Functions inherited from phot::PhotonMappingIdentityTransformations
LibraryIndexToOpDetMap makeLibraryIndicesToOpDetsMap () const
 Return a trivial global optical detector identifier mapping. More...
 
OpDetToLibraryIndexMap makeOpDetsToLibraryIndicesMap () const
 Return a trivial library index mapping. More...
 
- Protected Attributes inherited from phot::PhotonMappingIdentityTransformations
geo::GeometryCore const * fGeom = nullptr
 Detector geometry service provider. More...
 
OpDetToLibraryIndexMap fOpDetsToLibraryIndicesMap
 Complete optical detector identifier mapping world-to-library. More...
 
LibraryIndexToOpDetMap fLibraryIndicesToOpDetsMap
 Complete optical detector identifier mapping library-to-world. More...
 

Detailed Description

Photon mapping transformation with reflection at x = 0.

This mapping describes an infinite planar mirror placed at $ x = 0 $.

Definition at line 30 of file PhotonMappingXMirrorTransformations.h.

Member Typedef Documentation

Definition at line 44 of file PhotonMappingXMirrorTransformations.h.

Constructor & Destructor Documentation

phot::PhotonMappingXMirrorTransformations::PhotonMappingXMirrorTransformations ( Parameters const &  config)
inline

Constructor: same configuration as phot::PhotonMappingIdentityTransformations.

Definition at line 49 of file PhotonMappingXMirrorTransformations.h.

phot::PhotonMappingXMirrorTransformations::PhotonMappingXMirrorTransformations ( Config const &  config)
inline

Constructor: same configuration as phot::PhotonMappingIdentityTransformations.

Definition at line 54 of file PhotonMappingXMirrorTransformations.h.

PhotonMappingIdentityTransformations(Config const &)
Constructor: ignores the configuration.

Member Function Documentation

virtual geo::Point_t phot::PhotonMappingXMirrorTransformations::detectorToLibrary ( geo::Point_t const &  location) const
inlineoverridevirtual

Returns the representation within the library of a detector location.

Parameters
locationposition in world coordinates [cm]
Returns
a vector expressing location in the library space

The returned vector is the same as location, but with the x component always positive..

No exception is ever thrown.

Reimplemented from phot::PhotonMappingIdentityTransformations.

Definition at line 70 of file PhotonMappingXMirrorTransformations.h.

71  { return { std::abs(location.X()), location.Y(), location.Z() }; }
T abs(T value)

The documentation for this class was generated from the following file: