All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
icaruscode/icaruscode/CRT/CRTUtils/TPCGeoUtil.h
Go to the documentation of this file.
1 #ifndef IC_CRT_TPCGEOUTIL_H
2 #define IC_CRT_TPCGEOUTIL_H
3 // framework
4 #include "art/Framework/Principal/Event.h"
5 #include "art/Framework/Core/ModuleMacros.h"
6 #include "fhiclcpp/ParameterSet.h"
7 #include "art/Framework/Principal/Handle.h"
8 #include "canvas/Persistency/Common/Ptr.h"
9 #include "canvas/Persistency/Common/PtrVector.h"
10 #include "art/Framework/Services/Registry/ServiceHandle.h"
11 #include "messagefacility/MessageLogger/MessageLogger.h"
12 
13 // LArSoft
16 #include "nusimdata/SimulationBase/MCParticle.h"
18 
19 // c++
20 #include <vector>
21 
22 namespace icarus {
23  namespace TPCGeoUtil {
24  int DetectedInTPC(std::vector<art::Ptr<recob::Hit>> hits);
25  // Work out the drift limits for a collection of hits
26  std::pair<double, double> XLimitsFromHits(const geo::GeometryCore *GeometryService, std::vector<art::Ptr<recob::Hit>> hits);
27  // Is point inside given TPC
28  bool InsideTPC(geo::Point_t point, const geo::TPCGeo& tpc, double buffer);
29  int DriftDirectionFromHits(const geo::GeometryCore *GeometryService, std::vector<art::Ptr<recob::Hit>> hits);
30  } // namespace TPCGeoUtil
31 } // namespace icarus
32 #endif
std::pair< double, double > XLimitsFromHits(const geo::GeometryCore *GeometryService, std::vector< art::Ptr< recob::Hit >> hits)
Declaration of signal hit object.
Geometry information for a single TPC.
Definition: TPCGeo.h:38
int DetectedInTPC(std::vector< art::Ptr< recob::Hit >> hits)
int DriftDirectionFromHits(const geo::GeometryCore *GeometryService, std::vector< art::Ptr< recob::Hit >> hits)
auto vector(Vector const &v)
Returns a manipulator which will print the specified array.
Definition: DumpUtils.h:265
Access the description of detector geometry.
Description of geometry of one entire detector.
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< double >, ROOT::Math::GlobalCoordinateSystemTag > Point_t
Type for representation of position in physical 3D space.
Definition: geo_vectors.h:184
bool InsideTPC(geo::Point_t point, const geo::TPCGeo &tpc, double buffer)
art framework interface to geometry description