ATLAS Offline Software
Loading...
Searching...
No Matches
graphics
VP1
VP1Utils
VP1Utils
InDetProjFlags.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// //
7
// Common flags for Inner Detector projections //
8
// //
9
// Author: Thomas H. Kittelmann (Thomas.Kittelmann@cern.ch) //
10
// Initial version: November 2007 //
11
// //
13
14
//NB: This header file is intended to be seen by other systems (so
15
// they can use the flag types as signal parameters) - thus don't add
16
// extra includes/functionality here!
17
18
#ifndef INDETPROJECTIONFLAGS_H
19
#define INDETPROJECTIONFLAGS_H
20
21
#include <QFlags>
22
23
class
InDetProjFlags
{
24
public
:
25
26
//Projected data in which parts of the detector:
27
enum
DetTypeFlag
{
28
NoDet
= 0x000000,
29
SCT_brlpos
= 0x000001,
30
SCT_brlneg
= 0x000002,
31
SCT_ecpos
= 0x000004,
32
SCT_ecneg
= 0x000008,
33
SCT_all
= 0x00000F,
34
Pixel_brlpos
= 0x000010,
35
Pixel_brlneg
= 0x000020,
36
Pixel_ecpos
= 0x000040,
37
Pixel_ecneg
= 0x000080,
38
Pixel_all
= 0x0000F0,
39
TRT_brlpos
= 0x000100,
40
TRT_brlneg
= 0x000200,
41
TRT_ecpos
= 0x000400,
42
TRT_ecneg
= 0x000800,
43
TRT_all
= 0x000F00
44
};
45
Q_DECLARE_FLAGS(DetTypeFlags,
DetTypeFlag
)
46
47
//Project to which surfaces:
48
enum
InDetProjPartsFlag
{
49
NoProjections
= 0x000000,
50
BarrelPositive
= 0x000001,
51
BarrelNegative
= 0x000002,
52
BarrelCentral
= 0x000004,
53
EndCapOuterPositive
= 0x000010,
54
EndCapOuterNegative
= 0x000020,
55
EndCapInnerPositive
= 0x000040,
56
EndCapInnerNegative
= 0x000080,
57
//TRT only:
58
TRT_EndCapZToRPositive
= 0x000100,
59
TRT_EndCapZToRNegative
= 0x000200,
60
TRT_EndCapZToRCentral
= 0x000400,
61
//Convenience:
62
Barrel_All
= 0x000007,
63
Barrel_AllPos
= 0x000005,
64
Barrel_AllNeg
= 0x000006,
65
EndCap_All
= 0x0007F0,
66
EndCap_AllPos
= 0x000550,
67
EndCap_AllNeg
= 0x0006A0
68
};
69
Q_DECLARE_FLAGS(InDetProjPartsFlags,
InDetProjPartsFlag
)
70
71
//To null out parts of the flags, if the corresponding detector parts are not used:
72
static
void
projectionPartsGivenUsedDetectors
( InDetProjPartsFlags& proj_pixel,
73
InDetProjPartsFlags& proj_sct,
74
InDetProjPartsFlags& proj_trt,
75
const
DetTypeFlags& useddets );
76
77
private
:
78
InDetProjFlags
();
79
~InDetProjFlags
();
80
};
81
82
Q_DECLARE_OPERATORS_FOR_FLAGS(InDetProjFlags::DetTypeFlags)
83
Q_DECLARE_OPERATORS_FOR_FLAGS(InDetProjFlags::InDetProjPartsFlags)
84
85
#endif
InDetProjFlags::DetTypeFlag
DetTypeFlag
Definition
InDetProjFlags.h:27
InDetProjFlags::TRT_all
@ TRT_all
Definition
InDetProjFlags.h:43
InDetProjFlags::Pixel_ecneg
@ Pixel_ecneg
Definition
InDetProjFlags.h:37
InDetProjFlags::Pixel_brlpos
@ Pixel_brlpos
Definition
InDetProjFlags.h:34
InDetProjFlags::Pixel_brlneg
@ Pixel_brlneg
Definition
InDetProjFlags.h:35
InDetProjFlags::Pixel_all
@ Pixel_all
Definition
InDetProjFlags.h:38
InDetProjFlags::SCT_brlpos
@ SCT_brlpos
Definition
InDetProjFlags.h:29
InDetProjFlags::TRT_ecpos
@ TRT_ecpos
Definition
InDetProjFlags.h:41
InDetProjFlags::TRT_ecneg
@ TRT_ecneg
Definition
InDetProjFlags.h:42
InDetProjFlags::SCT_all
@ SCT_all
Definition
InDetProjFlags.h:33
InDetProjFlags::TRT_brlneg
@ TRT_brlneg
Definition
InDetProjFlags.h:40
InDetProjFlags::Pixel_ecpos
@ Pixel_ecpos
Definition
InDetProjFlags.h:36
InDetProjFlags::SCT_ecneg
@ SCT_ecneg
Definition
InDetProjFlags.h:32
InDetProjFlags::SCT_ecpos
@ SCT_ecpos
Definition
InDetProjFlags.h:31
InDetProjFlags::SCT_brlneg
@ SCT_brlneg
Definition
InDetProjFlags.h:30
InDetProjFlags::NoDet
@ NoDet
Definition
InDetProjFlags.h:28
InDetProjFlags::TRT_brlpos
@ TRT_brlpos
Definition
InDetProjFlags.h:39
InDetProjFlags::InDetProjPartsFlag
InDetProjPartsFlag
Definition
InDetProjFlags.h:48
InDetProjFlags::Barrel_All
@ Barrel_All
Definition
InDetProjFlags.h:62
InDetProjFlags::BarrelPositive
@ BarrelPositive
Definition
InDetProjFlags.h:50
InDetProjFlags::EndCap_AllNeg
@ EndCap_AllNeg
Definition
InDetProjFlags.h:67
InDetProjFlags::EndCap_All
@ EndCap_All
Definition
InDetProjFlags.h:65
InDetProjFlags::BarrelNegative
@ BarrelNegative
Definition
InDetProjFlags.h:51
InDetProjFlags::Barrel_AllPos
@ Barrel_AllPos
Definition
InDetProjFlags.h:63
InDetProjFlags::TRT_EndCapZToRNegative
@ TRT_EndCapZToRNegative
Definition
InDetProjFlags.h:59
InDetProjFlags::EndCapInnerPositive
@ EndCapInnerPositive
Definition
InDetProjFlags.h:55
InDetProjFlags::EndCapInnerNegative
@ EndCapInnerNegative
Definition
InDetProjFlags.h:56
InDetProjFlags::TRT_EndCapZToRCentral
@ TRT_EndCapZToRCentral
Definition
InDetProjFlags.h:60
InDetProjFlags::EndCap_AllPos
@ EndCap_AllPos
Definition
InDetProjFlags.h:66
InDetProjFlags::NoProjections
@ NoProjections
Definition
InDetProjFlags.h:49
InDetProjFlags::Barrel_AllNeg
@ Barrel_AllNeg
Definition
InDetProjFlags.h:64
InDetProjFlags::EndCapOuterNegative
@ EndCapOuterNegative
Definition
InDetProjFlags.h:54
InDetProjFlags::EndCapOuterPositive
@ EndCapOuterPositive
Definition
InDetProjFlags.h:53
InDetProjFlags::BarrelCentral
@ BarrelCentral
Definition
InDetProjFlags.h:52
InDetProjFlags::TRT_EndCapZToRPositive
@ TRT_EndCapZToRPositive
Definition
InDetProjFlags.h:58
InDetProjFlags::~InDetProjFlags
~InDetProjFlags()
InDetProjFlags::projectionPartsGivenUsedDetectors
static void projectionPartsGivenUsedDetectors(InDetProjPartsFlags &proj_pixel, InDetProjPartsFlags &proj_sct, InDetProjPartsFlags &proj_trt, const DetTypeFlags &useddets)
Definition
InDetProjFlags.cxx:17
InDetProjFlags::InDetProjFlags
InDetProjFlags()
Generated on
for ATLAS Offline Software by
1.14.0