LArSoft  v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
GeoObjectSorter.h
Go to the documentation of this file.
1 #ifndef GEO_GEOOBJECTSORTER_H
9 #define GEO_GEOOBJECTSORTER_H
10 
11 #include <vector>
12 
14 
15 #include "fhiclcpp/ParameterSet.h"
16 
17 namespace geo{
18 
19  class AuxDetGeo;
20  class AuxDetSensitiveGeo;
21  class CryostatGeo;
22  class TPCGeo;
23  class PlaneGeo;
24  class WireGeo;
25 
28 
29  public:
30 
31  virtual ~GeoObjectSorter() = default;
32 
33  virtual void SortAuxDets (std::vector<geo::AuxDetGeo*> & adgeo) const = 0;
34  virtual void SortAuxDetSensitive(std::vector<geo::AuxDetSensitiveGeo*> & adsgeo) const = 0;
35  virtual void SortCryostats (std::vector<geo::CryostatGeo*> & cgeo) const = 0;
36  virtual void SortTPCs (std::vector<geo::TPCGeo*> & tgeo) const = 0;
37  virtual void SortPlanes (std::vector<geo::PlaneGeo*> & pgeo,
38  geo::DriftDirection_t const & driftDir) const = 0;
39  virtual void SortWires (std::vector<geo::WireGeo*> & wgeo) const = 0;
40 
41  private:
42 
43  };
44 
45 }
46 
47 #endif // GEO_GEOOBJECTSORTER_H
virtual void SortCryostats(std::vector< geo::CryostatGeo * > &cgeo) const =0
virtual ~GeoObjectSorter()=default
virtual void SortTPCs(std::vector< geo::TPCGeo * > &tgeo) const =0
virtual void SortAuxDets(std::vector< geo::AuxDetGeo * > &adgeo) const =0
enum geo::driftdir DriftDirection_t
Drift direction: positive or negative.
virtual void SortAuxDetSensitive(std::vector< geo::AuxDetSensitiveGeo * > &adsgeo) const =0
virtual void SortWires(std::vector< geo::WireGeo * > &wgeo) const =0
Definition of data types for geometry description.
virtual void SortPlanes(std::vector< geo::PlaneGeo * > &pgeo, geo::DriftDirection_t const &driftDir) const =0
Namespace collecting geometry-related classes utilities.