LArSoft  v10_04_05
Liquid Argon Software toolkit - https://larsoft.org/
id_iterators.h File Reference
#include "larcorealg/Geometry/fwd.h"
#include "larcoreobj/SimpleTypesAndConstants/geo_types.h"
#include "larcoreobj/SimpleTypesAndConstants/readout_types.h"
#include <iterator>
#include <string>
#include <utility>

Go to the source code of this file.

Classes

struct  geo::details::id_sentinel< ID >
 
class  geo::details::id_iterator_base< LocalID, GEOID, IterationPolicy >
 Base forward iterator browsing all cryostat IDs in the detector. More...
 
class  geo::details::id_iterator_base< CryostatID, GEOID, IterationPolicy >
 
struct  geo::details::id_iterator_base< CryostatID, GEOID, IterationPolicy >::GeometryIDIteratorTag
 
class  geo::details::id_iterator_base< LocalID, GEOID, IterationPolicy >
 Base forward iterator browsing all cryostat IDs in the detector. More...
 
struct  geo::details::id_iterator_base< LocalID, GEOID, IterationPolicy >::GeometryIDIteratorTag
 
struct  geo::details::has_geometry_id_iterator_tag< T, typename >
 Stream output for all geometry ID iterator types: prints the pointed ID. More...
 
struct  geo::details::has_geometry_id_iterator_tag< T, std::void_t< typename T::GeometryIDIteratorTag > >
 
struct  geo::details::supported< ID, Policy >
 

Namespaces

 geo::details
 

Typedefs

template<typename LocalID , typename SiblingPolicy >
using geo::details::id_iterator = id_iterator_base< LocalID, LocalID, SiblingPolicy >
 

Functions

template<typename ID >
 geo::details::id_sentinel (ID) -> id_sentinel< ID >
 
template<typename ID >
std::ostream & geo::details::operator<< (std::ostream &out, id_sentinel< ID > const &sentinel)
 
template<typename LocalID , typename SiblingPolicy >
auto geo::details::iterator_for (LocalID const &id, SiblingPolicy const &siblingPolicy)
 
template<typename GEOIT >
std::enable_if_t< has_geometry_id_iterator_tag< GEOIT >::value, std::ostream & > geo::details::operator<< (std::ostream &out, GEOIT const &it)
 
template<typename ID , typename IterationPolicy >
void geo::details::IncrementID (ID &id, IterationPolicy const &policy)
 
template<typename GeoID , typename IterationPolicy >
GeoID geo::details::GetNextID (GeoID const &id, IterationPolicy const &policy)
 Returns the ID next to the specified one. More...
 
template<typename LocalID , typename GeoID , typename IterationPolicy >
bool geo::details::operator== (id_iterator_base< LocalID, GeoID, IterationPolicy > const &a, id_iterator_base< LocalID, GeoID, IterationPolicy > const &b)
 
template<typename LocalID , typename GeoID , typename IterationPolicy >
bool geo::details::operator!= (id_iterator_base< LocalID, GeoID, IterationPolicy > const &a, id_iterator_base< LocalID, GeoID, IterationPolicy > const &b)
 
template<typename LocalID , typename GeoID , typename IterationPolicy >
bool geo::details::operator== (id_iterator_base< LocalID, GeoID, IterationPolicy > const &a, id_sentinel< LocalID > const &b)
 
template<typename LocalID , typename GeoID , typename IterationPolicy >
bool geo::details::operator!= (id_iterator_base< LocalID, GeoID, IterationPolicy > const &a, id_sentinel< LocalID > const &b)
 
template<typename LocalID , typename GeoID , typename IterationPolicy >
bool geo::details::operator== (id_sentinel< LocalID > const &a, id_iterator_base< LocalID, GeoID, IterationPolicy > const &b)
 
template<typename LocalID , typename GeoID , typename IterationPolicy >
bool geo::details::operator!= (id_sentinel< LocalID > const &a, id_iterator_base< LocalID, GeoID, IterationPolicy > const &b)
 
template<typename LocalID >
bool geo::details::operator== (id_sentinel< LocalID > const &a, id_sentinel< LocalID > const &b)
 
template<typename LocalID >
bool geo::details::operator!= (id_sentinel< LocalID > const &a, id_sentinel< LocalID > const &b)