LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
|
Access the description of detector geometry. More...
#include "larcorealg/Geometry/GeoObjectSorter.h"
#include "larcorealg/Geometry/ChannelMapAlg.h"
#include "larcorealg/Geometry/CryostatGeo.h"
#include "larcorealg/Geometry/TPCGeo.h"
#include "larcorealg/Geometry/PlaneGeo.h"
#include "larcorealg/Geometry/WireGeo.h"
#include "larcorealg/Geometry/OpDetGeo.h"
#include "larcorealg/Geometry/AuxDetGeo.h"
#include "larcorealg/Geometry/AuxDetSensitiveGeo.h"
#include "larcorealg/Geometry/BoxBoundedGeo.h"
#include "larcorealg/Geometry/GeometryDataContainers.h"
#include "larcorealg/Geometry/geo_vectors_utils.h"
#include "larcorealg/CoreUtils/RealComparisons.h"
#include "larcoreobj/SimpleTypesAndConstants/readout_types.h"
#include "larcoreobj/SimpleTypesAndConstants/geo_vectors.h"
#include "larcoreobj/SimpleTypesAndConstants/geo_types.h"
#include "larcoreobj/SimpleTypesAndConstants/RawTypes.h"
#include "fhiclcpp/ParameterSet.h"
#include "TVector3.h"
#include <cstddef>
#include <string>
#include <vector>
#include <set>
#include <memory>
#include <iterator>
#include <type_traits>
Go to the source code of this file.
Classes | |
class | geo::details::geometry_iterator_types |
Base class for geometry iterators, containing some type definitions. More... | |
struct | geo::details::geometry_iterator_types::BeginPos_t |
Structures to distinguish the constructors. More... | |
struct | geo::details::geometry_iterator_types::EndPos_t |
struct | geo::details::geometry_iterator_types::UndefinedPos_t |
class | geo::details::geometry_iterator_base |
Base class for geometry iterators (note: this is not an iterator) More... | |
class | geo::details::cryostat_id_iterator_base< GEOID > |
Base forward iterator browsing all cryostat IDs in the detector. More... | |
class | geo::details::TPC_id_iterator_base< GEOID > |
Base forward iterator browsing all TPC IDs in the detector. More... | |
class | geo::details::plane_id_iterator_base< GEOID > |
Base forward iterator browsing all plane IDs in the detector. More... | |
class | geo::details::wire_id_iterator_base< GEOID > |
Base forward iterator browsing all wire IDs in the detector. More... | |
class | geo::details::geometry_element_iterator< GEOIDITER > |
Forward iterator browsing all geometry elements in the detector. More... | |
class | geo::details::geometry_element_iterator< GEOIDITER > |
Forward iterator browsing all geometry elements in the detector. More... | |
class | geo::details::TPCset_id_iterator_base< GEOID > |
Base forward iterator browsing all TPC set IDs in the detector. More... | |
class | geo::details::ROP_id_iterator_base< GEOID > |
Base forward iterator browsing all readout plane IDs in the detector. More... | |
class | geo::IteratorBoxBase< Iter > |
class | geo::IteratorBox< Iter, BeginFunc, EndFunc > |
class | geo::LocalIteratorBox< Iter, GeoID, BeginFunc, EndFunc > |
struct | geo::GeometryData_t |
Data in the geometry description. More... | |
class | geo::GeometryCore |
Description of geometry of one entire detector. More... | |
struct | geo::GeometryCore::Segment< Point > |
Simple class with two points (a pair with aliases). More... | |
class | geo::ROOTGeoNodeForwardIterator |
Iterator to navigate through all the nodes. More... | |
struct | geo::ROOTGeoNodeForwardIterator::NodeInfo_t |
Namespaces | |
geo | |
Namespace collecting geometry-related classes utilities. | |
geo::details | |
geo::iterators | |
Typedefs | |
using | geo::iterators::BeginPos_t = details::geometry_iterator_types::BeginPos_t |
using | geo::iterators::EndPos_t = details::geometry_iterator_types::EndPos_t |
using | geo::iterators::UndefinedPos_t = details::geometry_iterator_types::UndefinedPos_t |
using | geo::cryostat_id_iterator = details::cryostat_id_iterator_base< geo::CryostatID > |
Forward iterator browsing all cryostats in the detector. More... | |
using | geo::cryostat_iterator = details::geometry_element_iterator< cryostat_id_iterator > |
Forward iterator browsing all cryostats in the detector. More... | |
using | geo::TPC_id_iterator = details::TPC_id_iterator_base< geo::TPCID > |
Forward iterator browsing all TPCs in the detector. More... | |
using | geo::TPC_iterator = details::geometry_element_iterator< TPC_id_iterator > |
Forward iterator browsing all TPCs in the detector. More... | |
using | geo::plane_id_iterator = details::plane_id_iterator_base< geo::PlaneID > |
Forward iterator browsing all planes in the detector. More... | |
using | geo::plane_iterator = details::geometry_element_iterator< plane_id_iterator > |
Forward iterator browsing all planes in the detector. More... | |
using | geo::wire_id_iterator = details::wire_id_iterator_base< geo::WireID > |
Forward iterator browsing all wires in the detector. More... | |
using | geo::wire_iterator = details::geometry_element_iterator< wire_id_iterator > |
Forward iterator browsing all wires in the detector. More... | |
using | geo::TPCset_id_iterator = details::TPCset_id_iterator_base< readout::TPCsetID > |
Forward iterator browsing all TPC sets in the detector. More... | |
using | geo::ROP_id_iterator = details::ROP_id_iterator_base< readout::ROPID > |
Forward iterator browsing all readout planes in the detector. More... | |
Functions | |
template<typename GEOIDITER > | |
bool | geo::details::operator== (geometry_element_iterator< GEOIDITER > const &iter, GEOIDITER const &id_iter) |
Comparison operator: geometry ID and element point to the same ID. More... | |
template<typename GEOIDITER > | |
bool | geo::details::operator== (GEOIDITER const &id_iter, geometry_element_iterator< GEOIDITER > const &iter) |
Comparison operator: geometry ID and element point to the same ID. More... | |
template<typename GEOIDITER > | |
bool | geo::details::operator!= (geometry_element_iterator< GEOIDITER > const &iter, GEOIDITER const &id_iter) |
Comparison operator: geometry ID and element point to different IDs. More... | |
template<typename GEOIDITER > | |
bool | geo::details::operator!= (GEOIDITER const &id_iter, geometry_element_iterator< GEOIDITER > const &iter) |
Comparison operator: geometry ID and element point to different IDs. More... | |
template<> | |
geo::TPCID | geo::GeometryCore::GetBeginID< geo::TPCID, geo::CryostatID > (geo::CryostatID const &id) const |
template<> | |
geo::TPCID | geo::GeometryCore::GetEndID< geo::TPCID, geo::CryostatID > (geo::CryostatID const &id) const |
template<> | |
geo::PlaneID | geo::GeometryCore::GetBeginID< geo::PlaneID, geo::CryostatID > (geo::CryostatID const &id) const |
template<> | |
geo::PlaneID | geo::GeometryCore::GetEndID< geo::PlaneID, geo::CryostatID > (geo::CryostatID const &id) const |
Variables | |
constexpr auto | geo::iterators::begin_pos = details::geometry_iterator_types::begin_pos |
constexpr auto | geo::iterators::end_pos = details::geometry_iterator_types::end_pos |
constexpr auto | geo::iterators::undefined_pos = details::geometry_iterator_types::undefined_pos |
Access the description of detector geometry.
Structure of the header:
namespace geo { // forward class declarations namespace details { // geometry iterator base class } // geometry iterators declaration // - cryostat_id_iterator // - TPC_id_iterator // - plane_id_iterator // - wire_id_iterator // - TPCset_id_iterator // - ROP_id_iterator // GeometryData_t definition (part of GeometryCore) // GeometryCore declaration }
Revised selig 29-Jan-2009 Revise the class to make it into more of a general detector interface Revised man@ nevis .col umbia .edupetri 27-Apr-2015 Factorization into a framework-independent llo@ fnal. govGeometryCore.h and a art framework interface Revised petri 30-Apr-2015 Redesign of the iterators Revised llo@ fnal. govpetri 28-Jun-2015 Added interface for readout mapping llo@ fnal. gov
Definition in file GeometryCore.h.