Classes describing partition of cryostat volume. More...
#include "larcorealg/Geometry/DriftPartitions.h"#include "larcorealg/Geometry/PlaneGeo.h"#include "larcorealg/Geometry/TPCGeo.h"#include "larcorealg/Geometry/CryostatGeo.h"#include "larcorealg/Geometry/Decomposer.h"#include "larcorealg/CoreUtils/DumpUtils.h"#include "larcorealg/CoreUtils/RealComparisons.h"#include "cetlib_except/exception.h"#include "messagefacility/MessageLogger/MessageLogger.h"#include <vector>#include <iterator>#include <algorithm>#include <utility>#include <memory>#include <type_traits>#include <cassert>#include <cmath>#include <cstdlib>Go to the source code of this file.
Classes | |
| struct | TPCgroup_t |
| struct | TPCwithArea_t |
| struct | SorterByKey< Key, ExtractKey, Comparer > |
Typedefs | |
| using | TPCandPos_t = std::pair< double, geo::TPCGeo const * > |
| template<geo::part::AreaOwner::AreaRangeMember_t Range> | |
| using | SortTPCareaByAreaRangeLower = SorterByKey< double, geo::part::details::RangeLowerBoundExtractor< Range >> |
| using | SortTPCwithAreaByWidth = SortTPCareaByAreaRangeLower<&geo::part::AreaOwner::Area_t::width > |
| using | SortTPCwithAreaByDepth = SortTPCareaByAreaRangeLower<&geo::part::AreaOwner::Area_t::depth > |
Functions | |
| std::vector< std::pair < geo::DriftPartitions::DriftDir_t, std::vector< geo::TPCGeo const * > > > | groupTPCsByDriftDir (geo::CryostatGeo const &cryo) |
| std::vector< TPCandPos_t > | sortTPCsByDriftCoord (std::vector< geo::TPCGeo const * > const &TPCs, geo::DriftPartitions::Decomposer_t const &decomp) |
| std::vector< TPCgroup_t > | groupByDriftCoordinate (std::vector< TPCandPos_t > const &TPCs) |
| unsigned int | checkTPCcoords (std::vector< geo::TPCGeo const * > const &TPCs) |
| template<typename Range > | |
| geo::DriftPartitions::DriftDir_t | detectGlobalDriftDir (Range &&directions) |
| geo::part::AreaOwner::Area_t | TPCarea (geo::TPCGeo const &TPC, geo::DriftPartitions::Decomposer_t const &decomposer) |
| std::vector< TPCwithArea_t > | addAreaToTPCs (std::vector< geo::TPCGeo const * > const &TPCs, geo::DriftPartitions::Decomposer_t const &decomposer) |
| template<typename BeginIter , typename EndIter > | |
| geo::part::AreaOwner::Area_t | computeTotalArea (BeginIter TPCbegin, EndIter TPCend) |
| template<geo::part::AreaOwner::AreaRangeMember_t sortingRange, typename BeginIter , typename EndIter > | |
| std::vector< std::vector < TPCwithArea_t const * > ::const_iterator > | groupTPCsByRangeCoord (BeginIter beginTPCwithArea, EndIter endTPCwithArea) |
| template<geo::part::AreaOwner::AreaRangeMember_t sortingRange, typename BeginIter , typename EndIter > | |
| std::pair< std::vector < TPCwithArea_t const * > , std::vector< std::vector < TPCwithArea_t const * > ::const_iterator > > | sortAndGroupTPCsByRangeCoord (BeginIter beginTPCwithArea, EndIter endTPCwithArea) |
| template<typename BeginIter , typename EndIter , typename TPCendIter , typename SubpartMaker > | |
| geo::part::Partition < geo::TPCGeo const > ::Subpartitions_t | createSubpartitions (BeginIter itTPCbegin, EndIter itTPCend, TPCendIter TPCend, SubpartMaker subpartMaker) |
| auto | makeTPCPartitionElement (TPCwithArea_t const &TPCinfo) |
| template<typename BeginIter , typename EndIter > | |
| std::unique_ptr < geo::part::Partition < geo::TPCGeo const > > | makeWidthPartition (BeginIter beginTPCwithArea, EndIter endTPCwithArea) |
| template<typename BeginIter , typename EndIter > | |
| std::unique_ptr < geo::part::Partition < geo::TPCGeo const > > | makeDepthPartition (BeginIter beginTPCwithArea, EndIter endTPCwithArea) |
| template<typename BeginIter , typename EndIter > | |
| std::unique_ptr < geo::part::Partition < geo::TPCGeo const > > | makeGridPartition (BeginIter beginTPCwithArea, EndIter endTPCwithArea) |
| template<typename BeginIter , typename EndIter > | |
| std::unique_ptr < geo::part::Partition < geo::TPCGeo const > > | makePartition (BeginIter beginTPCwithArea, EndIter endTPCwithArea) |
| template<typename TPCPartitionResultType , geo::part::AreaOwner::AreaRangeMember_t Range, typename BeginIter , typename EndIter , typename SubpartMaker > | |
| std::unique_ptr < geo::part::Partition < geo::TPCGeo const > > | makeSortedPartition (BeginIter beginTPCwithArea, EndIter endTPCwithArea, SubpartMaker subpartMaker) |
| template<typename BeginIter , typename EndIter > | |
| auto | makeCPointerVector (BeginIter b, EndIter e) |
| template<typename T > | |
| auto | makeCPointerVector (std::vector< T > const &v) |
| std::unique_ptr < geo::DriftPartitions::TPCPartition_t > | makePartition (std::vector< TPCwithArea_t > const &TPCs) |
Classes describing partition of cryostat volume.
Definition in file DriftPartitions.cxx.
| using SortTPCareaByAreaRangeLower = SorterByKey<double, geo::part::details::RangeLowerBoundExtractor<Range>> |
Definition at line 485 of file DriftPartitions.cxx.
Definition at line 490 of file DriftPartitions.cxx.
Definition at line 488 of file DriftPartitions.cxx.
| using TPCandPos_t = std::pair<double, geo::TPCGeo const*> |
Definition at line 156 of file DriftPartitions.cxx.
| std::vector<TPCwithArea_t> addAreaToTPCs | ( | std::vector< geo::TPCGeo const * > const & | TPCs, |
| geo::DriftPartitions::Decomposer_t const & | decomposer | ||
| ) |
Definition at line 426 of file DriftPartitions.cxx.
| unsigned int checkTPCcoords | ( | std::vector< geo::TPCGeo const * > const & | TPCs | ) |
Definition at line 302 of file DriftPartitions.cxx.
| geo::part::AreaOwner::Area_t computeTotalArea | ( | BeginIter | TPCbegin, |
| EndIter | TPCend | ||
| ) |
Definition at line 446 of file DriftPartitions.cxx.
| geo::part::Partition<geo::TPCGeo const>::Subpartitions_t createSubpartitions | ( | BeginIter | itTPCbegin, |
| EndIter | itTPCend, | ||
| TPCendIter | TPCend, | ||
| SubpartMaker | subpartMaker | ||
| ) |
Definition at line 590 of file DriftPartitions.cxx.
| geo::DriftPartitions::DriftDir_t detectGlobalDriftDir | ( | Range && | directions | ) |
Definition at line 356 of file DriftPartitions.cxx.
| std::vector<TPCgroup_t> groupByDriftCoordinate | ( | std::vector< TPCandPos_t > const & | TPCs | ) |
Definition at line 260 of file DriftPartitions.cxx.
| std::vector<std::pair<geo::DriftPartitions::DriftDir_t, std::vector<geo::TPCGeo const*> > > groupTPCsByDriftDir | ( | geo::CryostatGeo const & | cryo | ) |
Definition at line 180 of file DriftPartitions.cxx.
| std::vector<std::vector<TPCwithArea_t const*>::const_iterator> groupTPCsByRangeCoord | ( | BeginIter | beginTPCwithArea, |
| EndIter | endTPCwithArea | ||
| ) |
Definition at line 500 of file DriftPartitions.cxx.
| auto makeCPointerVector | ( | BeginIter | b, |
| EndIter | e | ||
| ) |
Definition at line 1071 of file DriftPartitions.cxx.
| auto makeCPointerVector | ( | std::vector< T > const & | v | ) |
Definition at line 1081 of file DriftPartitions.cxx.
| std::unique_ptr< geo::part::Partition< geo::TPCGeo const > > makeDepthPartition | ( | BeginIter | beginTPCwithArea, |
| EndIter | endTPCwithArea | ||
| ) |
Definition at line 747 of file DriftPartitions.cxx.
| std::unique_ptr< geo::part::Partition< geo::TPCGeo const > > makeGridPartition | ( | BeginIter | beginTPCwithArea, |
| EndIter | endTPCwithArea | ||
| ) |
Definition at line 760 of file DriftPartitions.cxx.
| std::unique_ptr< geo::part::Partition< geo::TPCGeo const > > makePartition | ( | BeginIter | beginTPCwithArea, |
| EndIter | endTPCwithArea | ||
| ) |
Definition at line 999 of file DriftPartitions.cxx.
| std::unique_ptr<geo::DriftPartitions::TPCPartition_t> makePartition | ( | std::vector< TPCwithArea_t > const & | TPCs | ) |
Definition at line 1087 of file DriftPartitions.cxx.
| std::unique_ptr<geo::part::Partition<geo::TPCGeo const> > makeSortedPartition | ( | BeginIter | beginTPCwithArea, |
| EndIter | endTPCwithArea, | ||
| SubpartMaker | subpartMaker | ||
| ) |
Definition at line 674 of file DriftPartitions.cxx.
| auto makeTPCPartitionElement | ( | TPCwithArea_t const & | TPCinfo | ) |
Definition at line 644 of file DriftPartitions.cxx.
| std::unique_ptr< geo::part::Partition< geo::TPCGeo const > > makeWidthPartition | ( | BeginIter | beginTPCwithArea, |
| EndIter | endTPCwithArea | ||
| ) |
Definition at line 735 of file DriftPartitions.cxx.
| std::pair< std::vector<TPCwithArea_t const*>, std::vector<std::vector<TPCwithArea_t const*>::const_iterator> > sortAndGroupTPCsByRangeCoord | ( | BeginIter | beginTPCwithArea, |
| EndIter | endTPCwithArea | ||
| ) |
Definition at line 563 of file DriftPartitions.cxx.
| std::vector<TPCandPos_t> sortTPCsByDriftCoord | ( | std::vector< geo::TPCGeo const * > const & | TPCs, |
| geo::DriftPartitions::Decomposer_t const & | decomp | ||
| ) |
Definition at line 226 of file DriftPartitions.cxx.
| geo::part::AreaOwner::Area_t TPCarea | ( | geo::TPCGeo const & | TPC, |
| geo::DriftPartitions::Decomposer_t const & | decomposer | ||
| ) |
Definition at line 402 of file DriftPartitions.cxx.
1.8.5