Main Page
Namespaces
Classes
Package Documentation
DataFormats
GeometrySurface
interface
GeometricSorting.h
Go to the documentation of this file.
1
#ifndef Surface_GeometricSorting_h
2
#define Surface_GeometricSorting_h
3
4
#include <functional>
5
#include <
DataFormats/GeometryVector/interface/Phi.h
>
6
7
namespace
geomsort
{
8
21
template
<
class
T,
class
Scalar =
typename
T::Scalar>
22
struct
ExtractR
{
23
typedef
Scalar
result_type
;
24
Scalar
operator()
(
const
T
*
p
)
const
{
return
p->position().perp();}
25
Scalar
operator()
(
const
T
&
p
)
const
{
return
p.position().perp();}
26
};
27
28
45
template
<
class
T,
class
Scalar =
typename
T::Scalar>
46
struct
ExtractPhi
{
47
typedef
Geom::Phi<Scalar>
result_type
;
48
Geom::Phi<Scalar>
operator()
(
const
T
*
p
)
const
{
return
p->position().phi();}
49
Geom::Phi<Scalar>
operator()
(
const
T
&
p
)
const
{
return
p.position().phi();}
50
};
51
52
53
66
template
<
class
T,
class
Scalar =
typename
T::Scalar>
67
struct
ExtractZ
{
68
typedef
Scalar
result_type
;
69
Scalar
operator()
(
const
T
*
p
)
const
{
return
p->position().z();}
70
Scalar
operator()
(
const
T
&
p
)
const
{
return
p.position().z();}
71
};
72
85
template
<
class
T,
class
Scalar =
typename
T::Scalar>
86
struct
ExtractAbsZ
{
87
typedef
Scalar
result_type
;
88
Scalar
operator()
(
const
T
*
p
)
const
{
return
fabs(p->position().z());}
89
Scalar
operator()
(
const
T
&
p
)
const
{
return
fabs(p.position().z());}
90
};
91
92
93
}
94
#endif
95
geomsort::ExtractPhi::operator()
Geom::Phi< Scalar > operator()(const T *p) const
Definition:
GeometricSorting.h:48
geomsort::ExtractZ
Definition:
GeometricSorting.h:67
AlCaHLTBitMon_ParallelJobs.p
p
Definition:
AlCaHLTBitMon_ParallelJobs.py:153
align::Scalar
double Scalar
Definition:
Definitions.h:27
geomsort::ExtractAbsZ
Definition:
GeometricSorting.h:86
geomsort::ExtractR::operator()
Scalar operator()(const T *p) const
Definition:
GeometricSorting.h:24
geomsort
Definition:
GeometricSorting.h:7
geomsort::ExtractPhi::operator()
Geom::Phi< Scalar > operator()(const T &p) const
Definition:
GeometricSorting.h:49
geomsort::ExtractAbsZ::operator()
Scalar operator()(const T *p) const
Definition:
GeometricSorting.h:88
geomsort::ExtractPhi
Definition:
GeometricSorting.h:46
geomsort::ExtractAbsZ::result_type
Scalar result_type
Definition:
GeometricSorting.h:87
geomsort::ExtractPhi::result_type
Geom::Phi< Scalar > result_type
Definition:
GeometricSorting.h:47
geomsort::ExtractZ::operator()
Scalar operator()(const T &p) const
Definition:
GeometricSorting.h:70
geomsort::ExtractR::result_type
Scalar result_type
Definition:
GeometricSorting.h:23
geomsort::ExtractR::operator()
Scalar operator()(const T &p) const
Definition:
GeometricSorting.h:25
geomsort::ExtractAbsZ::operator()
Scalar operator()(const T &p) const
Definition:
GeometricSorting.h:89
geomsort::ExtractR
Definition:
GeometricSorting.h:22
geomsort::ExtractZ::operator()
Scalar operator()(const T *p) const
Definition:
GeometricSorting.h:69
T
long double T
Definition:
Basic3DVectorLD.h:66
Geom::Phi
Definition:
Phi.h:20
Phi.h
geomsort::ExtractZ::result_type
Scalar result_type
Definition:
GeometricSorting.h:68
Generated for CMSSW Reference Manual by
1.8.11