TrackingTools
DetLayers
interface
RBorderFinder.h
Go to the documentation of this file.
1
#ifndef TrackingTools_DetLayers_RBorderFinder_H
2
#define TrackingTools_DetLayers_RBorderFinder_H
3
11
#include <
DataFormats/GeometrySurface/interface/BoundingBox.h
>
12
#include <
DataFormats/GeometrySurface/interface/GeometricSorting.h
>
13
14
#include <
Utilities/General/interface/precomputed_value_sort.h
>
15
#include <
Geometry/CommonDetUnit/interface/GeomDet.h
>
16
#include <
TrackingTools/DetLayers/interface/ForwardDetRing.h
>
17
#include <
TrackingTools/DetLayers/interface/simple_stat.h
>
18
#include <
FWCore/Utilities/interface/Exception.h
>
19
20
#include <vector>
21
22
class
RBorderFinder
{
23
public
:
24
typedef
ForwardDetRing
Det
;
//FIXME!!!
25
typedef
geomsort::ExtractR<Det, float>
DetR
;
26
27
RBorderFinder
(
const
std::vector<const Det*>& utheDets);
28
29
virtual
~RBorderFinder
(){};
30
32
inline
bool
isRPeriodic
()
const
{
return
isRPeriodic_
; }
33
35
inline
bool
isROverlapping
()
const
{
return
isROverlapping_
; }
36
39
inline
std::vector<double>
RBorders
()
const
{
return
theRBorders
; }
40
42
inline
std::vector<double>
RBins
()
const
{
return
theRBins
; }
43
44
// inline std::vector<double> etaBorders() {}
45
// inline std::vector<double> zBorders() {}
46
47
private
:
48
int
theNbins
;
49
bool
isRPeriodic_
;
50
bool
isROverlapping_
;
51
std::vector<double>
theRBorders
;
52
std::vector<double>
theRBins
;
53
54
inline
int
binIndex
(
int
i
)
const
{
return
std::min
(
std::max
(
i
, 0),
theNbins
- 1); }
55
};
56
#endif
mps_fire.i
i
Definition:
mps_fire.py:428
min
T min(T a, T b)
Definition:
MathUtil.h:58
simple_stat.h
ForwardDetRing.h
RBorderFinder::theRBorders
std::vector< double > theRBorders
Definition:
RBorderFinder.h:51
precomputed_value_sort.h
BoundingBox.h
RBorderFinder::~RBorderFinder
virtual ~RBorderFinder()
Definition:
RBorderFinder.h:29
RBorderFinder::theNbins
int theNbins
Definition:
RBorderFinder.h:48
RBorderFinder::isROverlapping
bool isROverlapping() const
Returns true if any 2 of the Det overlap in R.
Definition:
RBorderFinder.h:35
RBorderFinder::isRPeriodic
bool isRPeriodic() const
Returns true if the Dets are periodic in R.
Definition:
RBorderFinder.h:32
RBorderFinder::RBins
std::vector< double > RBins() const
The centers of the Dets.
Definition:
RBorderFinder.h:42
RBorderFinder::RBorders
std::vector< double > RBorders() const
Definition:
RBorderFinder.h:39
RBorderFinder::binIndex
int binIndex(int i) const
Definition:
RBorderFinder.h:54
RBorderFinder::isRPeriodic_
bool isRPeriodic_
Definition:
RBorderFinder.h:49
SiStripPI::max
Definition:
SiStripPayloadInspectorHelper.h:169
RBorderFinder
Definition:
RBorderFinder.h:22
RBorderFinder::theRBins
std::vector< double > theRBins
Definition:
RBorderFinder.h:52
GeomDet.h
geomsort::ExtractR
Definition:
GeometricSorting.h:22
RBorderFinder::Det
ForwardDetRing Det
Definition:
RBorderFinder.h:24
RBorderFinder::DetR
geomsort::ExtractR< Det, float > DetR
Definition:
RBorderFinder.h:25
GeometricSorting.h
Exception.h
RBorderFinder::isROverlapping_
bool isROverlapping_
Definition:
RBorderFinder.h:50
RBorderFinder::RBorderFinder
RBorderFinder(const std::vector< const Det * > &utheDets)
Definition:
RBorderFinder.cc:3
ForwardDetRing
Definition:
ForwardDetRing.h:11
Generated for CMSSW Reference Manual by
1.8.16