ATLAS Offline Software
MuonFixedId.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 /***************************************************************************
6  * Muon Calibration Utilities
7  * -----------------------------------------
8  *
9  * Authors : Martin Woudstra, Zdenko van Kesteren, Peter Kluit
10  * Creation Date: 21 March 2005
11  * Updated : 03 December 2007
12  * Updated : 16 January 2015 E. Diehl Add BME/BOE/BMG chambers
13  * Note: BOE=BOL in offline, so do not need to explicitly add BOE, it will be handled as BOL
14  ***************************************************************************/
15 
16 
17 #ifndef MUONCALIBIDENTIFIER_MUONFIXEDID_H
18 #define MUONCALIBIDENTIFIER_MUONFIXEDID_H
19 // std
20 #include <iostream>
21 #include <iomanip>
22 #include <string>
23 
24 #include <cstdlib>
25 
26 // other packages
27 
28 // this package
29 //#include "MuonCalibIdentifier/MuonStationName.h"
30 
31 
36 namespace MuonCalib {
37 
50 class MuonFixedId {
51 public:
53  MuonFixedId();
55  explicit MuonFixedId( unsigned int id );
56 
58  unsigned int getIdInt() const;
60  void clear();
62  bool isValid() const;
63 
65  bool is_mdt() const;
67  bool is_tgc() const;
69  bool is_csc() const;
71  bool is_rpc() const;
72 
74  void set_mdt();
76  void set_tgc();
78  void set_csc();
80  void set_rpc();
81 
82 
84  bool operator==( const MuonFixedId& rhs ) const;
86  bool operator!=( const MuonFixedId& rhs ) const;
88  bool operator<( const MuonFixedId& rhs ) const;
89 
91  std::ostream& dump(std::ostream& os) const;
92 
93 // friend std::istream& operator>>( std::istream& is, MuonCalib::MuonFixedId& id );
94 
95 // Muon generic code
96 
99  bool setTechnologyIndex( unsigned int idx );
102  bool setStationNameIndex( unsigned int idx );
105  bool setStationEtaIndex( unsigned int idx );
108  bool setStationPhiIndex( unsigned int idx );
109 
112  bool setTechnology( int num );
115  bool setStationName( int num );
118  bool setStationEta( int num );
121  bool setStationPhi( int num );
122 
124  int technologyIndex() const;
126  int stationNameIndex() const;
128  int etaIndex() const;
130  int phiIndex() const;
131 
133  int technology() const;
135  std::string technologyString() const;
137  int stationName() const;
139  std::string stationNameString() const;
141  int eta() const;
143  int phi() const;
144 
146  static int technologyMin();
148  static int stationNameMin();
150  static int etaMin();
152  static int phiMin();
153 
155  static int technologyMax();
157  static int stationNameMax();
159  static int etaMax();
161  static int phiMax();
162 
166  static int stationStringToFixedStationNumber(const std::string& station);
170  static std::string stationNumberToFixedStationString(const int station);
171 
172 
173 // Mdt specific code
174 
177  bool setMdtTubeIndex( unsigned int idx ) ;
180  bool setMdtTubeLayerIndex( unsigned int idx ) ;
183  bool setMdtMultilayerIndex( unsigned int idx ) ;
184 
187  bool setMdtTube( int num );
190  bool setMdtTubeLayer( int num );
193  bool setMdtMultilayer( int num );
194 
196  int mdtTubeIndex() const;
198  int mdtTubeLayerIndex() const;
200  int mdtMultilayerIndex() const;
201 
203  int mdtTube() const;
205  int mdtTubeLayer() const;
207  int mdtMultilayer() const;
210  int mdtMezzanine() const;
211 
213  MuonFixedId mdtChamberId() const;
214 
217 
219  static int mdtTubeMin();
221  static int mdtTubeLayerMin();
223  static int mdtMultilayerMin();
224 
226  static int mdtTubeMax();
228  static int mdtTubeLayerMax();
230  static int mdtMultilayerMax();
231 
232 
233 // Csc specific code
234 
237  bool setCscChamberLayerIndex( unsigned int idx );
240  bool setCscWireLayerIndex( unsigned int idx );
243  bool setCscMeasuresPhiIndex( unsigned int idx );
246  bool setCscStripIndex( unsigned int idx );
247 
250  bool setCscChamberLayer( int num );
253  bool setCscWireLayer( int num );
256  bool setCscMeasuresPhi( int num );
259  bool setCscStrip( int num );
260 
262  int cscChamberLayerIndex() const;
264  int cscWireLayerIndex() const;
266  int cscMeasuresPhiIndex() const;
268  int cscStripIndex() const;
269 
271  int cscChamberLayer() const;
273  int cscWireLayer() const;
275  int cscMeasuresPhi() const;
277  int cscStrip() const;
278 
280  static int cscChamberLayerMin();
282  static int cscWireLayerMin();
284  static int cscMeasuresPhiMin();
286  static int cscStripMin();
287 
289  static int cscChamberLayerMax();
291  static int cscWireLayerMax();
293  static int cscMeasuresPhiMax();
295  static int cscStripMax();
296 
297 // Rpc specific code
298 
301  bool setRpcDoubletRIndex( unsigned int idx );
304  bool setRpcDoubletZIndex( unsigned int idx );
307  bool setRpcDoubletPhiIndex( unsigned int idx );
310  bool setRpcGasGapIndex( unsigned int idx );
313  bool setRpcMeasuresPhiIndex( unsigned int idx );
316  bool setRpcStripIndex( unsigned int idx );
317 
320  bool setRpcDoubletR( int num );
323  bool setRpcDoubletZ( int num );
326  bool setRpcDoubletPhi( int num );
329  bool setRpcGasGap( int num );
332  bool setRpcMeasuresPhi( int num );
335  bool setRpcStrip( int num );
336 
339  int rpcDoubletRIndex() const;
342  int rpcDoubletZIndex() const;
345  int rpcDoubletPhiIndex() const;
348  int rpcGasGapIndex() const;
351  int rpcMeasuresPhiIndex() const;
354  int rpcStripIndex() const;
355 
358  int rpcDoubletR() const;
361  int rpcDoubletZ() const;
364  int rpcDoubletPhi() const;
367  int rpcGasGap() const;
370  int rpcMeasuresPhi() const;
373  int rpcStrip() const;
374 
375 // Tgc specific code
376 
379  bool setTgcGasGapIndex( unsigned int idx );
382  bool setTgcIsStripIndex( unsigned int idx );
385  bool setTgcChannelIndex( unsigned int idx );
386 
389  bool setTgcGasGap( int num );
392  bool setTgcIsStrip( int num );
395  bool setTgcChannel( int num );
396 
399  int tgcGasGapIndex() const;
402  int tgcIsStripIndex() const;
405  int tgcChannelIndex() const;
406 
409  int tgcGasGap() const;
412  int tgcIsStrip() const;
415  int tgcChannel() const;
416 
418  static const int technologyMDT = 0;
419  static const int technologyCSC = 1;
420  static const int technologyTGC = 2;
421  static const int technologyRPC = 3;
422 
423 private:
424  // the member holding the packed fields
425  unsigned int m_data;
426 
427  static const unsigned int kInvalidData = 0xFFFFFFFF;
428 
429 // Muon generic
430 
431  static const unsigned int kTechnologyMask = 3;
432  static const unsigned int kTechnologyShift = 30;
433  static const unsigned int kTechnologyMin = 0;
434 
435  static const int kNumberOfTechnologies = 4;
437 
438  static const unsigned int kStationNameMask = 63;
439  static const unsigned int kStationNameShift = 24;
440  static const unsigned int kStationNameMin = 1;
441 
442  static const unsigned int kStationEtaMask = 31;
443  static const unsigned int kStationEtaShift = 19;
444  static const int kStationEtaMin = -8;
445 
446  static const unsigned int kStationPhiMask = 63;
447  static const unsigned int kStationPhiShift = 13;
448  static const unsigned int kStationPhiMin = 1;
449 
450  static const int kNumberOfStationNames = 35;
452 
453  // the full station information for making a station identifier
454  static const unsigned int kStationShift = kStationPhiShift; // the smallest shift
455  static const unsigned int kStationMask =
459  (kStationPhiMask << kStationPhiShift) ) >> kStationShift; // kStationShift for consistent meaning
460 
461 // Mdt specific code
462 
463  static const unsigned int kMdtMultilayerMask = 1;
464  static const unsigned int kMdtMultilayerShift = 9;
465  static const unsigned int kMdtMultilayerMin = 1;
466 
467  static const unsigned int kMdtTubeLayerMask = 3;
468  static const unsigned int kMdtTubeLayerShift = 7;
469  static const unsigned int kMdtTubeLayerMin = 1;
470 
471  static const unsigned int kMdtTubeMask = 127;
472  static const unsigned int kMdtTubeShift = 0;
473  static const unsigned int kMdtTubeMin = 1;
474 
475 // Csc specific code
476 
477  static const unsigned int kCscChamberLayerMask = 1;
478  static const unsigned int kCscChamberLayerShift = 11;
479  static const unsigned int kCscChamberLayerMin = 1;
480 
481  static const unsigned int kCscWireLayerMask = 3;
482  static const unsigned int kCscWireLayerShift = 9;
483  static const unsigned int kCscWireLayerMin = 1;
484 
485  static const unsigned int kCscMeasuresPhiMask = 1;
486  static const unsigned int kCscMeasuresPhiShift = 8;
487  static const unsigned int kCscMeasuresPhiMin = 0;
488 
489  static const unsigned int kCscStripMask = 255;
490  static const unsigned int kCscStripShift = 0;
491  static const unsigned int kCscStripMin = 1;
492 
493 // Rpc specific code
494 
495  static const unsigned int kRpcDoubletRMask = 1;
496  static const unsigned int kRpcDoubletRShift = 12;
497  static const unsigned int kRpcDoubletRMin = 1;
498 
499  static const unsigned int kRpcDoubletZMask = 3;
500  static const unsigned int kRpcDoubletZShift = 10;
501  static const unsigned int kRpcDoubletZMin = 1;
502 
503  static const unsigned int kRpcDoubletPhiMask = 1;
504  static const unsigned int kRpcDoubletPhiShift = 9;
505  static const unsigned int kRpcDoubletPhiMin = 1;
506 
507  static const unsigned int kRpcGasGapMask = 1;
508  static const unsigned int kRpcGasGapShift = 8;
509  static const unsigned int kRpcGasGapMin = 1;
510 
511  static const unsigned int kRpcMeasuresPhiMask = 1;
512  static const unsigned int kRpcMeasuresPhiShift = 7;
513  static const unsigned int kRpcMeasuresPhiMin = 0;
514 
515  static const unsigned int kRpcStripMask = 127;
516  static const unsigned int kRpcStripShift = 0;
517  static const unsigned int kRpcStripMin = 1;
518 
519 // Tgc specific code
520  static const unsigned int kTgcGasGapMask = 3;
521  static const unsigned int kTgcGasGapShift = 9;
522  static const unsigned int kTgcGasGapMin = 1;
523 
524  static const unsigned int kTgcIsStripMask = 1;
525  static const unsigned int kTgcIsStripShift = 8;
526  static const unsigned int kTgcIsStripMin = 0;
527 
528  static const unsigned int kTgcChannelMask = 255;
529  static const unsigned int kTgcChannelShift = 0;
530  static const unsigned int kTgcChannelMin = 1;
531 
532 };
533 
534 // Muon generic methods
535 
537  : m_data(kInvalidData){
538  }
539 
540 inline MuonFixedId::MuonFixedId( unsigned int id ) : m_data(id){
541 }
542 
543 inline unsigned int MuonFixedId::getIdInt() const{
544  return m_data;
545 }
546 /* void MuonFixedId::setMuonIdentifier( int id ){ */
547 /* if( id>-1 || id<kInvalidData ) m_data = id; */
548 /* else m_data = kInvalidData; */
549 /* } */
550 
551 inline void MuonFixedId::clear() {
553 }
554 
555 inline bool MuonFixedId::isValid() const {
556  return m_data != kInvalidData;
557 }
558 
559 inline bool MuonFixedId::is_mdt() const{
560  return isValid() && technology() == technologyMDT;
561 }
562 
563 inline bool MuonFixedId::is_tgc() const{
564  return isValid() && technology() == technologyTGC;
565 }
566 
567 inline bool MuonFixedId::is_csc() const{
568  return isValid() && technology() == technologyCSC;
569 }
570 
571 inline bool MuonFixedId::is_rpc() const{
572  return isValid() && technology() == technologyRPC;
573 }
574 
575 inline void MuonFixedId::set_mdt() {
577 }
578 
579 inline void MuonFixedId::set_csc() {
581 }
582 
583 inline void MuonFixedId::set_tgc() {
585 }
586 
587 inline void MuonFixedId::set_rpc() {
589 }
590 
591 inline bool MuonFixedId::operator==( const MuonFixedId& rhs ) const {
592  return m_data == rhs.m_data;
593 }
594 
595 inline bool MuonFixedId::operator!=( const MuonFixedId& rhs ) const {
596  return m_data != rhs.m_data;
597 }
598 
599 inline bool MuonFixedId::operator<( const MuonFixedId& rhs ) const {
600  return m_data < rhs.m_data;
601 }
602 
603 inline bool MuonFixedId::setTechnologyIndex( unsigned int idx ) {
604  if ( idx > kTechnologyMask ) {
605  clear();
606  return false;
607  }
610  return true;
611 }
612 
613 inline bool MuonFixedId::setTechnology( int num ) {
615 }
616 
617 inline int MuonFixedId::technologyIndex() const {
619 }
620 
621 inline int MuonFixedId::technology() const {
622  return technologyIndex() + kTechnologyMin;
623 }
624 
625 inline std::string MuonFixedId::technologyString() const {
626  int index = technologyIndex();
627  if ( index >= 0 && index < kNumberOfTechnologies ) {
628  return kTechnologyStrings[index];
629  }
630  return "???";
631 }
632 
633 inline bool MuonFixedId::setStationNameIndex( unsigned int idx ) {
634  if ( idx > kStationNameMask ) {
635  clear();
636  return false;
637  }
640  return true;
641 }
642 
643 inline bool MuonFixedId::setStationName( int num ) {
645 }
646 
647 inline int MuonFixedId::stationNameIndex() const {
649 }
650 
651 inline int MuonFixedId::stationName() const {
653 }
654 
655 inline std::string MuonFixedId::stationNameString() const {
656  int index = stationNameIndex();
657  if ( index >= 0 && index < kNumberOfStationNames ) {
658  return kStationNameStrings[index];
659  }
660  return "XXX";
661 }
662 
663 inline bool MuonFixedId::setStationEtaIndex( unsigned int idx ) {
664  if ( idx > kStationEtaMask ) {
665  clear();
666  return false;
667  }
670  return true;
671 }
672 
673 inline bool MuonFixedId::setStationEta( int num ) {
675 }
676 
677 inline int MuonFixedId::etaIndex() const {
679 }
680 
681 inline int MuonFixedId::eta() const {
682  return etaIndex() + kStationEtaMin;
683 }
684 
685 
686 inline bool MuonFixedId::setStationPhiIndex( unsigned int idx ) {
687  if ( idx > kStationPhiMask ) {
688  clear();
689  return false;
690  }
693  return true;
694 }
695 
696 inline bool MuonFixedId::setStationPhi( int num ) {
698 }
699 
700 inline int MuonFixedId::phiIndex() const {
702 }
703 
704 inline int MuonFixedId::phi() const {
705  return phiIndex() + kStationPhiMin;
706 }
707 
709  return kTechnologyMin;
710 }
711 
713  return kStationNameMin;
714 }
715 
716 inline int MuonFixedId::etaMin(){
717  return kStationEtaMin;
718 }
719 
720 inline int MuonFixedId::phiMin(){
721  return kStationPhiMin;
722 }
723 
726 }
727 
730 }
731 
732 inline int MuonFixedId::etaMax(){
734 }
735 
736 inline int MuonFixedId::phiMax(){
738 }
739 
740 inline int MuonFixedId::stationStringToFixedStationNumber(const std::string& station ) {
741  for ( int i = 0; i < kNumberOfStationNames; ++i ) {
742  if ( station == kStationNameStrings[i] ) return i + kStationNameMin;
743  }
744  return -1; // signal error if not found
745 }
746 
747 inline std::string MuonFixedId::stationNumberToFixedStationString(const int station) {
748  int index = station - kStationNameMin;
749  if ( index >= 0 && index < kNumberOfStationNames ) {
750  return kStationNameStrings[index];
751  }
752  return "XXX"; // signal error if not found
753 }
754 
755 // Mdt specific methods
756 
757 inline bool MuonFixedId::setMdtTubeIndex( unsigned int idx ) {
758  if ( idx > kMdtTubeMask ) {
759  clear();
760  return false;
761  }
764  return true;
765 }
766 
767 inline bool MuonFixedId::setMdtTube( int num ) {
768  return setMdtTubeIndex( num - kMdtTubeMin );
769 }
770 
771 inline int MuonFixedId::mdtTubeIndex() const {
772  return (m_data >> kMdtTubeShift) & kMdtTubeMask;
773 }
774 
775 inline int MuonFixedId::mdtTube() const {
776  return mdtTubeIndex() + kMdtTubeMin;
777 }
778 
779 inline int MuonFixedId::mdtMezzanine() const {
780  int Ichamber = stationName() ;
781  int Ieta = eta() ;
782  int Iphi = phi() ;
783  int Iml = mdtMultilayer() ;
784  int Itube = mdtTube() ;
785  if (Ieta < 0 ) Ieta = -Ieta*10 ;
786  int ImezzTubes = 8 ;
787  if (Ichamber==1 || Ichamber==2 || Ichamber==8 || Ichamber==13 || Ichamber==7 || Ichamber==15 || Ichamber==24) ImezzTubes=6;
788 //exception BIS eta=8 is a 3-layer chamber
789  if(Ichamber==2 && std::abs(Ieta)==8) ImezzTubes=8;
790  int Imezz = ((Itube-1)/ImezzTubes)*2+(Iml-1) ;
791  Imezz = 9*100000000 + Ichamber*1000000 + Ieta*10000 + Iphi*100 + Imezz ;
792  return Imezz ;
793 }
794 
795 inline bool MuonFixedId::setMdtTubeLayerIndex( unsigned int idx ) {
796  if ( idx > kMdtTubeLayerMask ) {
797  clear();
798  return false;
799  }
802  return true;
803 }
804 
805 inline bool MuonFixedId::setMdtTubeLayer( int num ) {
807 }
808 
809 inline int MuonFixedId::mdtTubeLayerIndex() const {
811 }
812 
813 inline int MuonFixedId::mdtTubeLayer() const {
815 }
816 
817 inline bool MuonFixedId::setMdtMultilayerIndex( unsigned int idx ) {
818  if ( idx > kMdtMultilayerMask ) {
819  clear();
820  return false;
821  }
824  return true;
825 }
826 
827 inline bool MuonFixedId::setMdtMultilayer( int num ) {
829 }
830 
833 }
834 
835 inline int MuonFixedId::mdtMultilayer() const {
837 }
838 
840  return kMdtTubeMin;
841 }
842 
844  return kMdtTubeMin + kMdtTubeMask;
845 }
846 
848  return kMdtTubeLayerMin;
849 }
850 
853 }
854 
856  return kMdtMultilayerMin;
857 }
858 
861 }
862 
864  // mdt chamber id = muon station id
865  return MuonFixedId( m_data & (kStationMask << kStationShift) );
866 }
867 
869  // mdt multilayer id = muon station id + multilayer field
871 }
872 
873 
874 // Csc specific methods
875 
876 inline bool MuonFixedId::setCscChamberLayerIndex( unsigned int idx ) {
877  if ( idx > kCscChamberLayerMask ) {
878  clear();
879  return false;
880  }
883  return true;
884 }
885 
888 }
889 
892 }
893 
894 inline int MuonFixedId::cscChamberLayer() const {
896 }
897 
898 
899 inline bool MuonFixedId::setCscWireLayerIndex( unsigned int idx ) {
900  if ( idx > kCscWireLayerMask ) {
901  clear();
902  return false;
903  }
906  return true;
907 }
908 
909 inline bool MuonFixedId::setCscWireLayer( int num ) {
911 }
912 
913 inline int MuonFixedId::cscWireLayerIndex() const {
915 }
916 
917 inline int MuonFixedId::cscWireLayer() const {
919 }
920 
921 inline bool MuonFixedId::setCscMeasuresPhiIndex( unsigned int idx ) {
922  if ( idx > kCscMeasuresPhiMask ) {
923  clear();
924  return false;
925  }
928  return true;
929 }
930 
933 }
934 
937 }
938 
939 inline int MuonFixedId::cscMeasuresPhi() const {
941 }
942 
943 inline bool MuonFixedId::setCscStripIndex( unsigned int idx ) {
944  if ( idx > kCscStripMask ) {
945  clear();
946  return false;
947  }
950  return true;
951 }
952 
953 inline bool MuonFixedId::setCscStrip( int num ) {
954  return setCscStripIndex( num - kCscStripMin );
955 }
956 
957 inline int MuonFixedId::cscStripIndex() const {
958  return (m_data >> kCscStripShift) & kCscStripMask;
959 }
960 
961 inline int MuonFixedId::cscStrip() const {
962  return cscStripIndex() + kCscStripMin;
963 }
964 
966  return kCscChamberLayerMin;
967 }
968 
971 }
972 
974  return kCscWireLayerMin;
975 }
976 
979 }
980 
982  return kCscMeasuresPhiMin;
983 }
984 
987 }
988 
990  return kCscStripMin;
991 }
992 
994  return kCscStripMin + kCscStripMask;
995 }
996 
997 // Rpc specific methods
998 inline bool MuonFixedId::setRpcDoubletRIndex( unsigned int idx ) {
999  if ( idx > kRpcDoubletRMask ) {
1000  clear();
1001  return false;
1002  }
1005  return true;
1006 }
1007 
1008 inline bool MuonFixedId::setRpcDoubletR( int num ) {
1010 }
1011 
1012 inline int MuonFixedId::rpcDoubletRIndex() const {
1014 }
1015 
1016 inline int MuonFixedId::rpcDoubletR() const {
1017  return rpcDoubletRIndex() + kRpcDoubletRMin;
1018 }
1019 
1020 inline bool MuonFixedId::setRpcDoubletZIndex( unsigned int idx ) {
1021  if ( idx > kRpcDoubletZMask ) {
1022  clear();
1023  return false;
1024  }
1027  return true;
1028 }
1029 
1030 inline bool MuonFixedId::setRpcDoubletZ( int num ) {
1032 }
1033 
1034 inline int MuonFixedId::rpcDoubletZIndex() const {
1036 }
1037 
1038 inline int MuonFixedId::rpcDoubletZ() const {
1039  return rpcDoubletZIndex() + kRpcDoubletZMin;
1040 }
1041 
1042 inline bool MuonFixedId::setRpcDoubletPhiIndex( unsigned int idx ) {
1043  if ( idx > kRpcDoubletPhiMask ) {
1044  clear();
1045  return false;
1046  }
1049  return true;
1050 }
1051 
1054 }
1055 
1058 }
1059 
1060 inline int MuonFixedId::rpcDoubletPhi() const {
1062 }
1063 
1064 inline bool MuonFixedId::setRpcGasGapIndex( unsigned int idx ) {
1065  if ( idx > kRpcGasGapMask ) {
1066  clear();
1067  return false;
1068  }
1071  return true;
1072 }
1073 
1074 inline bool MuonFixedId::setRpcGasGap( int num ) {
1075  return setRpcGasGapIndex( num - kRpcGasGapMin );
1076 }
1077 
1078 inline int MuonFixedId::rpcGasGapIndex() const {
1079  return (m_data >> kRpcGasGapShift) & kRpcGasGapMask;
1080 }
1081 
1082 inline int MuonFixedId::rpcGasGap() const {
1083  return rpcGasGapIndex() + kRpcGasGapMin;
1084 }
1085 
1086 inline bool MuonFixedId::setRpcMeasuresPhiIndex( unsigned int idx ) {
1087  if ( idx > kRpcMeasuresPhiMask ) {
1088  clear();
1089  return false;
1090  }
1093  return true;
1094 }
1095 
1098 }
1099 
1102 }
1103 
1104 inline int MuonFixedId::rpcMeasuresPhi() const {
1106 }
1107 
1108 inline bool MuonFixedId::setRpcStripIndex( unsigned int idx ) {
1109  if ( idx > kRpcStripMask ) {
1110  clear();
1111  return false;
1112  }
1113  m_data &= ~( kRpcStripMask << kRpcStripShift );
1115  return true;
1116 }
1117 
1118 inline bool MuonFixedId::setRpcStrip( int num ) {
1119  return setRpcStripIndex( num - kRpcStripMin );
1120 }
1121 
1122 inline int MuonFixedId::rpcStripIndex() const {
1123  return (m_data >> kRpcStripShift) & kRpcStripMask;
1124 }
1125 
1126 inline int MuonFixedId::rpcStrip() const {
1127  return rpcStripIndex() + kRpcStripMin;
1128 }
1129 
1130 
1131 // Tgc specific methods
1132 inline bool MuonFixedId::setTgcGasGapIndex( unsigned int idx ) {
1133  if ( idx > kTgcGasGapMask ) {
1134  clear();
1135  return false;
1136  }
1139  return true;
1140 }
1141 
1142 inline bool MuonFixedId::setTgcGasGap( int num ) {
1143  return setTgcGasGapIndex( num - kTgcGasGapMin );
1144 }
1145 
1146 inline int MuonFixedId::tgcGasGapIndex() const {
1147  return (m_data >> kTgcGasGapShift) & kTgcGasGapMask;
1148 }
1149 
1150 inline int MuonFixedId::tgcGasGap() const {
1151  return tgcGasGapIndex() + kTgcGasGapMin;
1152 }
1153 
1154 inline bool MuonFixedId::setTgcIsStripIndex( unsigned int idx ) {
1155  if ( idx > kTgcIsStripMask ) {
1156  clear();
1157  return false;
1158  }
1161  return true;
1162 }
1163 
1164 inline bool MuonFixedId::setTgcIsStrip( int num ) {
1166 }
1167 
1168 inline int MuonFixedId::tgcIsStripIndex() const {
1169  return (m_data >> kTgcIsStripShift) & kTgcIsStripMask;
1170 }
1171 
1172 inline int MuonFixedId::tgcIsStrip() const {
1173  return tgcIsStripIndex() + kTgcIsStripMin;
1174 }
1175 
1176 
1177 inline bool MuonFixedId::setTgcChannelIndex( unsigned int idx ) {
1178  if ( idx > kTgcChannelMask ) {
1179  clear();
1180  return false;
1181  }
1184  return true;
1185 }
1186 
1187 inline bool MuonFixedId::setTgcChannel( int num ) {
1189 }
1190 
1191 inline int MuonFixedId::tgcChannelIndex() const {
1192  return (m_data >> kTgcChannelShift) & kTgcChannelMask;
1193 }
1194 
1195 inline int MuonFixedId::tgcChannel() const {
1196  return tgcChannelIndex() + kTgcChannelMin;
1197 }
1198 
1199 
1200 inline std::ostream& operator<<( std::ostream& os, const MuonCalib::MuonFixedId& id ) {
1201  return id.dump( os );
1202 }
1203 } //MuonCalib namespace
1204 
1205 /*
1206 ***** must solve conflicts between MuonCalib namespace and friendship
1207 inline std::istream& operator>>( std::istream& is, MuonCalib::MuonFixedId& id){
1208  is >> id.m_data ;
1209  return is;
1210 }
1211 */
1212 #endif // MUONCALIBIDENTIFIER_MUONFIXEDID_H
MuonCalib::MuonFixedId::kRpcDoubletPhiMin
static const unsigned int kRpcDoubletPhiMin
Definition: MuonFixedId.h:505
MuonCalib::MuonFixedId::isValid
bool isValid() const
check validity of the identifier.
Definition: MuonFixedId.h:555
MuonCalib::MuonFixedId::phiMin
static int phiMin()
Definition: MuonFixedId.h:720
MuonCalib::MuonFixedId::setMdtTubeLayer
bool setMdtTubeLayer(int num)
Mdt specific: set layer to num.
Definition: MuonFixedId.h:805
MuonCalib::MuonFixedId::setMdtMultilayer
bool setMdtMultilayer(int num)
Mdt specific: set multilayer to num.
Definition: MuonFixedId.h:827
MuonCalib::MuonFixedId::rpcDoubletZIndex
int rpcDoubletZIndex() const
Rpc specific:
Definition: MuonFixedId.h:1034
MuonCalib::MuonFixedId::operator<
bool operator<(const MuonFixedId &rhs) const
comparison operator
Definition: MuonFixedId.h:599
MuonCalib::MuonFixedId::kCscWireLayerShift
static const unsigned int kCscWireLayerShift
Definition: MuonFixedId.h:482
MuonCalib::MuonFixedId::setCscWireLayerIndex
bool setCscWireLayerIndex(unsigned int idx)
Csc specific: set wire layer index to idx.
Definition: MuonFixedId.h:899
MuonCalib::MuonFixedId::mdtTubeMin
static int mdtTubeMin()
Mdt specific:
Definition: MuonFixedId.h:839
MuonCalib::MuonFixedId::setTgcIsStripIndex
bool setTgcIsStripIndex(unsigned int idx)
Tgc specific: set index for is_strip to idx.
Definition: MuonFixedId.h:1154
MuonCalib::MuonFixedId::tgcGasGap
int tgcGasGap() const
Tgc specific:
Definition: MuonFixedId.h:1150
MuonCalib::MuonFixedId::setTgcIsStrip
bool setTgcIsStrip(int num)
Tgc specific: set is_strip to num.
Definition: MuonFixedId.h:1164
MuonCalib::MuonFixedId::rpcMeasuresPhiIndex
int rpcMeasuresPhiIndex() const
Rpc specific:
Definition: MuonFixedId.h:1100
MuonCalib::MuonFixedId::kRpcStripMask
static const unsigned int kRpcStripMask
Definition: MuonFixedId.h:515
MuonCalib::MuonFixedId::kInvalidData
static const unsigned int kInvalidData
Definition: MuonFixedId.h:427
MuonCalib::MuonFixedId::setMdtTube
bool setMdtTube(int num)
Mdt specific: set tube to num.
Definition: MuonFixedId.h:767
MuonCalib::MuonFixedId::setCscChamberLayer
bool setCscChamberLayer(int num)
Csc specific: set chamber layer to num.
Definition: MuonFixedId.h:886
MuonCalib::MuonFixedId::kStationNameMask
static const unsigned int kStationNameMask
Definition: MuonFixedId.h:438
MuonCalib::MuonFixedId::rpcDoubletR
int rpcDoubletR() const
Rpc specific:
Definition: MuonFixedId.h:1016
MuonCalib::MuonFixedId::tgcChannelIndex
int tgcChannelIndex() const
Tgc specific:
Definition: MuonFixedId.h:1191
MuonCalib::MuonFixedId::kMdtTubeMin
static const unsigned int kMdtTubeMin
Definition: MuonFixedId.h:473
MuonCalib::MuonFixedId::setTgcChannel
bool setTgcChannel(int num)
Tgc specific: set channel to num.
Definition: MuonFixedId.h:1187
MuonCalib::MuonFixedId::kNumberOfStationNames
static const int kNumberOfStationNames
Definition: MuonFixedId.h:450
MuonCalib::MuonFixedId::kMdtTubeLayerShift
static const unsigned int kMdtTubeLayerShift
Definition: MuonFixedId.h:468
MuonCalib::MuonFixedId::technologyMin
static int technologyMin()
Definition: MuonFixedId.h:708
MuonCalib::MuonFixedId::setTgcGasGap
bool setTgcGasGap(int num)
Tgc specific: set gas_gap to num.
Definition: MuonFixedId.h:1142
MuonCalib::MuonFixedId::kTgcChannelShift
static const unsigned int kTgcChannelShift
Definition: MuonFixedId.h:529
MuonCalib::MuonFixedId::mdtMultilayerMax
static int mdtMultilayerMax()
Mdt specific:
Definition: MuonFixedId.h:859
MuonCalib::MuonFixedId::technologyCSC
static const int technologyCSC
Definition: MuonFixedId.h:419
MuonCalib::MuonFixedId::dump
std::ostream & dump(std::ostream &os) const
dump all the information corresponding to the identifier
Definition: MuonFixedId.cxx:9
MuonCalib::MuonFixedId::stationNameIndex
int stationNameIndex() const
Definition: MuonFixedId.h:647
index
Definition: index.py:1
MuonCalib::MuonFixedId::stationNameMax
static int stationNameMax()
Definition: MuonFixedId.h:728
MuonCalib::MuonFixedId::kMdtMultilayerMin
static const unsigned int kMdtMultilayerMin
Definition: MuonFixedId.h:465
m_data
std::vector< T > m_data
Definition: TrackTruthMatchingBaseAlg.cxx:660
MuonCalib::MuonFixedId::kMdtTubeShift
static const unsigned int kMdtTubeShift
Definition: MuonFixedId.h:472
MuonCalib::MuonFixedId::cscStripIndex
int cscStripIndex() const
Csc specific:
Definition: MuonFixedId.h:957
MuonCalib::MuonFixedId::mdtMultilayerId
MuonFixedId mdtMultilayerId() const
Mdt specific: convert channel ID into MDT Multilayer ID.
Definition: MuonFixedId.h:868
MuonCalib::MuonFixedId::set_csc
void set_csc()
set identifier to CSC technology type
Definition: MuonFixedId.h:579
MuonCalib::MuonFixedId::stationNameMin
static int stationNameMin()
Definition: MuonFixedId.h:712
MuonCalib::MuonFixedId::set_rpc
void set_rpc()
set identifier to RPC technology type
Definition: MuonFixedId.h:587
MuonCalib::MuonFixedId::is_mdt
bool is_mdt() const
Definition: MuonFixedId.h:559
MuonCalib::MuonFixedId::setCscWireLayer
bool setCscWireLayer(int num)
Csc specific: set wire layer to num.
Definition: MuonFixedId.h:909
MuonCalib::MuonFixedId::cscChamberLayerIndex
int cscChamberLayerIndex() const
Csc specific:
Definition: MuonFixedId.h:890
MuonCalib::MuonFixedId::set_mdt
void set_mdt()
set identifier to MDT technology type
Definition: MuonFixedId.h:575
MuonCalib::MuonFixedId::mdtMultilayer
int mdtMultilayer() const
Mdt specific:
Definition: MuonFixedId.h:835
MuonCalib::MuonFixedId::kCscChamberLayerMin
static const unsigned int kCscChamberLayerMin
Definition: MuonFixedId.h:479
MuonCalib::MuonFixedId::kMdtTubeLayerMask
static const unsigned int kMdtTubeLayerMask
Definition: MuonFixedId.h:467
MuonCalib::MuonFixedId::cscMeasuresPhiMax
static int cscMeasuresPhiMax()
Csc specific:
Definition: MuonFixedId.h:985
MuonCalib::MuonFixedId::cscStrip
int cscStrip() const
Csc specific:
Definition: MuonFixedId.h:961
MuonCalib::MuonFixedId::setTechnologyIndex
bool setTechnologyIndex(unsigned int idx)
set technology index in the fixed identifier
Definition: MuonFixedId.h:603
MuonCalib::MuonFixedId::cscStripMax
static int cscStripMax()
Csc specific:
Definition: MuonFixedId.h:993
MuonCalib::MuonFixedId::rpcDoubletRIndex
int rpcDoubletRIndex() const
Rpc specific:
Definition: MuonFixedId.h:1012
MuonCalib::MuonFixedId::technology
int technology() const
Definition: MuonFixedId.h:621
MuonCalib::MuonFixedId::kTgcIsStripMin
static const unsigned int kTgcIsStripMin
Definition: MuonFixedId.h:526
MuonCalib::MuonFixedId::setTechnology
bool setTechnology(int num)
set technology to num in the fixed identifier
Definition: MuonFixedId.h:613
MuonCalib::MuonFixedId::setStationPhiIndex
bool setStationPhiIndex(unsigned int idx)
set station phi index in the fixed identifier
Definition: MuonFixedId.h:686
MuonCalib::MuonFixedId::kCscMeasuresPhiShift
static const unsigned int kCscMeasuresPhiShift
Definition: MuonFixedId.h:486
MuonCalib::MuonFixedId::MuonFixedId
MuonFixedId()
default constructor
Definition: MuonFixedId.h:536
MuonCalib::MuonFixedId::kRpcDoubletPhiShift
static const unsigned int kRpcDoubletPhiShift
Definition: MuonFixedId.h:504
MuonCalib::MuonFixedId::setCscMeasuresPhiIndex
bool setCscMeasuresPhiIndex(unsigned int idx)
Csc specific: set measures_phi index to idx.
Definition: MuonFixedId.h:921
MuonCalib::MuonFixedId::setStationEtaIndex
bool setStationEtaIndex(unsigned int idx)
set station eta index in the fixed identifier
Definition: MuonFixedId.h:663
MuonCalib::MuonFixedId::kRpcStripMin
static const unsigned int kRpcStripMin
Definition: MuonFixedId.h:517
MuonCalib::MuonFixedId::stationNameString
std::string stationNameString() const
Definition: MuonFixedId.h:655
MuonCalib::MuonFixedId::kCscWireLayerMask
static const unsigned int kCscWireLayerMask
Definition: MuonFixedId.h:481
MuonCalib::MuonFixedId::mdtTubeIndex
int mdtTubeIndex() const
Mdt specific:
Definition: MuonFixedId.h:771
MuonCalib::MuonFixedId::kRpcGasGapShift
static const unsigned int kRpcGasGapShift
Definition: MuonFixedId.h:508
MuonCalib::MuonFixedId::setStationNameIndex
bool setStationNameIndex(unsigned int idx)
set station name index in the fixed identifier
Definition: MuonFixedId.h:633
MuonCalib::MuonFixedId::kRpcStripShift
static const unsigned int kRpcStripShift
Definition: MuonFixedId.h:516
MuonCalib::MuonFixedId::kRpcDoubletRMin
static const unsigned int kRpcDoubletRMin
Definition: MuonFixedId.h:497
MuonCalib::MuonFixedId::kStationNameShift
static const unsigned int kStationNameShift
Definition: MuonFixedId.h:439
MuonCalib::MuonFixedId::cscMeasuresPhiIndex
int cscMeasuresPhiIndex() const
Csc specific:
Definition: MuonFixedId.h:935
MuonCalib::MuonFixedId::kMdtTubeLayerMin
static const unsigned int kMdtTubeLayerMin
Definition: MuonFixedId.h:469
MuonCalib::MuonFixedId::setCscChamberLayerIndex
bool setCscChamberLayerIndex(unsigned int idx)
Csc specific: set chamber layer index to idx.
Definition: MuonFixedId.h:876
MuonCalib::MuonFixedId::kRpcDoubletRShift
static const unsigned int kRpcDoubletRShift
Definition: MuonFixedId.h:496
MuonCalib::MuonFixedId::stationStringToFixedStationNumber
static int stationStringToFixedStationNumber(const std::string &station)
Definition: MuonFixedId.h:740
MuonCalib::MuonFixedId::setStationPhi
bool setStationPhi(int num)
set station phi to num in the fixed identifier
Definition: MuonFixedId.h:696
MuonCalib::MuonFixedId::mdtMultilayerIndex
int mdtMultilayerIndex() const
Mdt specific:
Definition: MuonFixedId.h:831
MuonCalib::MuonFixedId::kTgcChannelMin
static const unsigned int kTgcChannelMin
Definition: MuonFixedId.h:530
MuonCalib::MuonFixedId::rpcGasGapIndex
int rpcGasGapIndex() const
Rpc specific:
Definition: MuonFixedId.h:1078
MuonCalib::MuonFixedId::kCscMeasuresPhiMin
static const unsigned int kCscMeasuresPhiMin
Definition: MuonFixedId.h:487
MuonCalib::MuonFixedId::setCscMeasuresPhi
bool setCscMeasuresPhi(int num)
Csc specific: set measures_phi to num.
Definition: MuonFixedId.h:931
MuonCalib::MuonFixedId::kCscMeasuresPhiMask
static const unsigned int kCscMeasuresPhiMask
Definition: MuonFixedId.h:485
MuonCalib::MuonFixedId::set_tgc
void set_tgc()
set identifier to TGC technology type
Definition: MuonFixedId.h:583
MuonCalib::MuonFixedId::phiIndex
int phiIndex() const
Definition: MuonFixedId.h:700
MuonCalib::MuonFixedId::rpcStripIndex
int rpcStripIndex() const
Rpc specific:
Definition: MuonFixedId.h:1122
MuonCalib::MuonFixedId::tgcIsStripIndex
int tgcIsStripIndex() const
Tgc specific:
Definition: MuonFixedId.h:1168
MuonCalib::MuonFixedId::cscStripMin
static int cscStripMin()
Csc specific:
Definition: MuonFixedId.h:989
MuonCalib::MuonFixedId::setStationName
bool setStationName(int num)
set station name to num in the fixed identifier
Definition: MuonFixedId.h:643
MuonCalib::MuonFixedId::setRpcDoubletZIndex
bool setRpcDoubletZIndex(unsigned int idx)
Rpc specific: set index for doublet_Z to idx.
Definition: MuonFixedId.h:1020
MuonCalib::MuonFixedId::is_tgc
bool is_tgc() const
Definition: MuonFixedId.h:563
lumiFormat.i
int i
Definition: lumiFormat.py:92
MuonCalib::MuonFixedId::is_rpc
bool is_rpc() const
Definition: MuonFixedId.h:571
MuonCalib::operator<<
std::ostream & operator<<(std::ostream &os, const RtFullInfo &data)
Definition: RtFullInfo.cxx:13
MuonCalib::MuonFixedId::tgcIsStrip
int tgcIsStrip() const
Tgc specific:
Definition: MuonFixedId.h:1172
MuonCalib::MuonFixedId::technologyTGC
static const int technologyTGC
Definition: MuonFixedId.h:420
MuonCalib::MuonFixedId::rpcDoubletZ
int rpcDoubletZ() const
Rpc specific:
Definition: MuonFixedId.h:1038
MuonCalib::MuonFixedId::getIdInt
unsigned int getIdInt() const
Definition: MuonFixedId.h:543
MuonCalib::MuonFixedId::rpcStrip
int rpcStrip() const
Rpc specific:
Definition: MuonFixedId.h:1126
MuonCalib::MuonFixedId::setCscStripIndex
bool setCscStripIndex(unsigned int idx)
Csc specific: set strip index to idx.
Definition: MuonFixedId.h:943
MuonCalib::MuonFixedId::mdtMultilayerMin
static int mdtMultilayerMin()
Mdt specific:
Definition: MuonFixedId.h:855
MuonCalib::MuonFixedId::setRpcGasGap
bool setRpcGasGap(int num)
Rpc specific: set gas_gap to num.
Definition: MuonFixedId.h:1074
MuonCalib::MuonFixedId::rpcDoubletPhi
int rpcDoubletPhi() const
Rpc specific:
Definition: MuonFixedId.h:1060
MuonCalib::MuonFixedId::kRpcMeasuresPhiMask
static const unsigned int kRpcMeasuresPhiMask
Definition: MuonFixedId.h:511
MuonCalib::MuonFixedId::kTgcGasGapMask
static const unsigned int kTgcGasGapMask
Definition: MuonFixedId.h:520
MuonCalib::MuonFixedId::operator==
bool operator==(const MuonFixedId &rhs) const
comparison operator
Definition: MuonFixedId.h:591
MuonCalib
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
Definition: CscCalcPed.cxx:22
MuonCalib::MuonFixedId::kStationMask
static const unsigned int kStationMask
Definition: MuonFixedId.h:455
MuonCalib::MuonFixedId::setRpcMeasuresPhi
bool setRpcMeasuresPhi(int num)
Rpc specific: set measures_phi to num.
Definition: MuonFixedId.h:1096
MuonCalib::MuonFixedId::setTgcChannelIndex
bool setTgcChannelIndex(unsigned int idx)
Tgc specific: set index for channel to idx.
Definition: MuonFixedId.h:1177
MuonCalib::MuonFixedId::etaMax
static int etaMax()
Definition: MuonFixedId.h:732
MuonCalib::MuonFixedId::kTgcIsStripMask
static const unsigned int kTgcIsStripMask
Definition: MuonFixedId.h:524
MuonCalib::MuonFixedId::kMdtMultilayerMask
static const unsigned int kMdtMultilayerMask
Definition: MuonFixedId.h:463
MuonCalib::MuonFixedId::technologyMDT
static const int technologyMDT
constants for technology numbers
Definition: MuonFixedId.h:418
MuonCalib::MuonFixedId::kCscChamberLayerMask
static const unsigned int kCscChamberLayerMask
Definition: MuonFixedId.h:477
MuonCalib::MuonFixedId::kTgcChannelMask
static const unsigned int kTgcChannelMask
Definition: MuonFixedId.h:528
MuonCalib::MuonFixedId::kTechnologyMin
static const unsigned int kTechnologyMin
Definition: MuonFixedId.h:433
MuonCalib::MuonFixedId::kStationShift
static const unsigned int kStationShift
Definition: MuonFixedId.h:454
MuonCalib::MuonFixedId::kRpcMeasuresPhiMin
static const unsigned int kRpcMeasuresPhiMin
Definition: MuonFixedId.h:513
MuonCalib::MuonFixedId::setCscStrip
bool setCscStrip(int num)
Csc specific: set strip to num.
Definition: MuonFixedId.h:953
MuonCalib::MuonFixedId::kCscStripShift
static const unsigned int kCscStripShift
Definition: MuonFixedId.h:490
MuonCalib::MuonFixedId::stationNumberToFixedStationString
static std::string stationNumberToFixedStationString(const int station)
Definition: MuonFixedId.h:747
MuonCalib::MuonFixedId::kCscStripMask
static const unsigned int kCscStripMask
Definition: MuonFixedId.h:489
MuonCalib::MuonFixedId::clear
void clear()
clear the identifier (=set to invalid)
Definition: MuonFixedId.h:551
MuonCalib::MuonFixedId::rpcMeasuresPhi
int rpcMeasuresPhi() const
Rpc specific:
Definition: MuonFixedId.h:1104
MuonCalib::MuonFixedId::kStationPhiMask
static const unsigned int kStationPhiMask
Definition: MuonFixedId.h:446
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
MuonCalib::MuonFixedId::kStationEtaShift
static const unsigned int kStationEtaShift
Definition: MuonFixedId.h:443
trigbs_pickEvents.num
num
Definition: trigbs_pickEvents.py:76
MuonCalib::MuonFixedId::kTechnologyStrings
static const char kTechnologyStrings[kNumberOfTechnologies][4]
Definition: MuonFixedId.h:436
MuonCalib::MuonFixedId::kTgcGasGapShift
static const unsigned int kTgcGasGapShift
Definition: MuonFixedId.h:521
MuonCalib::MuonFixedId::mdtTubeLayerMin
static int mdtTubeLayerMin()
Mdt specific:
Definition: MuonFixedId.h:847
MuonCalib::MuonFixedId::cscWireLayer
int cscWireLayer() const
Csc specific:
Definition: MuonFixedId.h:917
MuonCalib::MuonFixedId::is_csc
bool is_csc() const
Definition: MuonFixedId.h:567
MuonCalib::MuonFixedId::setMdtTubeIndex
bool setMdtTubeIndex(unsigned int idx)
Mdt specific: set index idx for tube.
Definition: MuonFixedId.h:757
MuonCalib::MuonFixedId::kStationEtaMask
static const unsigned int kStationEtaMask
Definition: MuonFixedId.h:442
id
SG::auxid_t id
Definition: Control/AthContainers/Root/debug.cxx:194
MuonCalib::MuonFixedId::kStationNameMin
static const unsigned int kStationNameMin
Definition: MuonFixedId.h:440
MuonCalib::MuonFixedId::cscChamberLayerMin
static int cscChamberLayerMin()
Csc specific:
Definition: MuonFixedId.h:965
MuonCalib::MuonFixedId::stationName
int stationName() const
Definition: MuonFixedId.h:651
MuonCalib::MuonFixedId::kTgcIsStripShift
static const unsigned int kTgcIsStripShift
Definition: MuonFixedId.h:525
MuonCalib::MuonFixedId
Definition: MuonFixedId.h:50
MuonCalib::MuonFixedId::kStationEtaMin
static const int kStationEtaMin
Definition: MuonFixedId.h:444
MuonCalib::MuonFixedId::m_data
unsigned int m_data
Definition: MuonFixedId.h:425
MuonCalib::MuonFixedId::cscWireLayerIndex
int cscWireLayerIndex() const
Csc specific:
Definition: MuonFixedId.h:913
MuonCalib::MuonFixedId::kMdtMultilayerShift
static const unsigned int kMdtMultilayerShift
Definition: MuonFixedId.h:464
MuonCalib::MuonFixedId::phiMax
static int phiMax()
Definition: MuonFixedId.h:736
MuonCalib::MuonFixedId::setRpcDoubletPhi
bool setRpcDoubletPhi(int num)
Rpc specific: set doublet_Phi to num.
Definition: MuonFixedId.h:1052
MuonCalib::MuonFixedId::setStationEta
bool setStationEta(int num)
set station eta to num in the fixed identifier
Definition: MuonFixedId.h:673
MuonCalib::MuonFixedId::technologyRPC
static const int technologyRPC
Definition: MuonFixedId.h:421
MuonCalib::MuonFixedId::kRpcGasGapMin
static const unsigned int kRpcGasGapMin
Definition: MuonFixedId.h:509
MuonCalib::MuonFixedId::cscChamberLayer
int cscChamberLayer() const
Csc specific:
Definition: MuonFixedId.h:894
MuonCalib::MuonFixedId::kTgcGasGapMin
static const unsigned int kTgcGasGapMin
Definition: MuonFixedId.h:522
MuonCalib::MuonFixedId::phi
int phi() const
Definition: MuonFixedId.h:704
MuonCalib::MuonFixedId::kRpcDoubletRMask
static const unsigned int kRpcDoubletRMask
Definition: MuonFixedId.h:495
MuonCalib::MuonFixedId::kMdtTubeMask
static const unsigned int kMdtTubeMask
Definition: MuonFixedId.h:471
MuonCalib::MuonFixedId::setRpcDoubletR
bool setRpcDoubletR(int num)
Rpc specific: set doublet_R to num.
Definition: MuonFixedId.h:1008
MuonCalib::MuonFixedId::cscWireLayerMin
static int cscWireLayerMin()
Csc specific:
Definition: MuonFixedId.h:973
MuonCalib::MuonFixedId::rpcGasGap
int rpcGasGap() const
Rpc specific:
Definition: MuonFixedId.h:1082
DeMoScan.index
string index
Definition: DeMoScan.py:362
MuonCalib::MuonFixedId::setMdtTubeLayerIndex
bool setMdtTubeLayerIndex(unsigned int idx)
Mdt specific: set index idx for layer.
Definition: MuonFixedId.h:795
MuonCalib::MuonFixedId::setRpcDoubletZ
bool setRpcDoubletZ(int num)
Rpc specific: set doublet_Z to num.
Definition: MuonFixedId.h:1030
MuonCalib::MuonFixedId::kCscChamberLayerShift
static const unsigned int kCscChamberLayerShift
Definition: MuonFixedId.h:478
MuonCalib::MuonFixedId::mdtTubeLayerMax
static int mdtTubeLayerMax()
Mdt specific:
Definition: MuonFixedId.h:851
MuonCalib::MuonFixedId::technologyMax
static int technologyMax()
Definition: MuonFixedId.h:724
MuonCalib::MuonFixedId::cscMeasuresPhiMin
static int cscMeasuresPhiMin()
Csc specific:
Definition: MuonFixedId.h:981
MuonCalib::MuonFixedId::kRpcDoubletPhiMask
static const unsigned int kRpcDoubletPhiMask
Definition: MuonFixedId.h:503
MuonCalib::MuonFixedId::kTechnologyMask
static const unsigned int kTechnologyMask
Definition: MuonFixedId.h:431
MuonCalib::MuonFixedId::kNumberOfTechnologies
static const int kNumberOfTechnologies
Definition: MuonFixedId.h:435
MuonCalib::MuonFixedId::setRpcMeasuresPhiIndex
bool setRpcMeasuresPhiIndex(unsigned int idx)
Rpc specific: set index for measures_phi to idx.
Definition: MuonFixedId.h:1086
LArNewCalib_DelayDump_OFC_Cali.idx
idx
Definition: LArNewCalib_DelayDump_OFC_Cali.py:69
MuonCalib::MuonFixedId::technologyIndex
int technologyIndex() const
Definition: MuonFixedId.h:617
MuonCalib::MuonFixedId::setRpcDoubletPhiIndex
bool setRpcDoubletPhiIndex(unsigned int idx)
Rpc specific: set index for doublet_Phi to idx.
Definition: MuonFixedId.h:1042
MuonCalib::MuonFixedId::tgcGasGapIndex
int tgcGasGapIndex() const
Tgc specific:
Definition: MuonFixedId.h:1146
MuonCalib::MuonFixedId::mdtMezzanine
int mdtMezzanine() const
Mdt specific: compute the mezzanine number.
Definition: MuonFixedId.h:779
MuonCalib::MuonFixedId::cscChamberLayerMax
static int cscChamberLayerMax()
Csc specific:
Definition: MuonFixedId.h:969
MuonCalib::MuonFixedId::mdtTube
int mdtTube() const
Mdt specific:
Definition: MuonFixedId.h:775
MuonCalib::MuonFixedId::kCscStripMin
static const unsigned int kCscStripMin
Definition: MuonFixedId.h:491
MuonCalib::MuonFixedId::kRpcDoubletZShift
static const unsigned int kRpcDoubletZShift
Definition: MuonFixedId.h:500
MuonCalib::MuonFixedId::tgcChannel
int tgcChannel() const
Tgc specific:
Definition: MuonFixedId.h:1195
MuonCalib::MuonFixedId::eta
int eta() const
Definition: MuonFixedId.h:681
MuonCalib::MuonFixedId::setRpcDoubletRIndex
bool setRpcDoubletRIndex(unsigned int idx)
Rpc specific: set index for doublet_R to idx.
Definition: MuonFixedId.h:998
MuonCalib::MuonFixedId::mdtTubeLayerIndex
int mdtTubeLayerIndex() const
Mdt specific:
Definition: MuonFixedId.h:809
MuonCalib::MuonFixedId::kTechnologyShift
static const unsigned int kTechnologyShift
Definition: MuonFixedId.h:432
MuonCalib::MuonFixedId::kRpcDoubletZMask
static const unsigned int kRpcDoubletZMask
Definition: MuonFixedId.h:499
MuonCalib::MuonFixedId::setRpcStrip
bool setRpcStrip(int num)
Rpc specific: set strip to num.
Definition: MuonFixedId.h:1118
MuonCalib::MuonFixedId::mdtTubeMax
static int mdtTubeMax()
Mdt specific:
Definition: MuonFixedId.h:843
MuonCalib::MuonFixedId::kStationPhiMin
static const unsigned int kStationPhiMin
Definition: MuonFixedId.h:448
MuonCalib::MuonFixedId::kCscWireLayerMin
static const unsigned int kCscWireLayerMin
Definition: MuonFixedId.h:483
MuonCalib::MuonFixedId::setTgcGasGapIndex
bool setTgcGasGapIndex(unsigned int idx)
Tgc specific: set index for gas_gap to idx.
Definition: MuonFixedId.h:1132
MuonCalib::MuonFixedId::etaIndex
int etaIndex() const
Definition: MuonFixedId.h:677
MuonCalib::MuonFixedId::setMdtMultilayerIndex
bool setMdtMultilayerIndex(unsigned int idx)
Mdt specific: set index idx for multilayer.
Definition: MuonFixedId.h:817
MuonCalib::MuonFixedId::kRpcMeasuresPhiShift
static const unsigned int kRpcMeasuresPhiShift
Definition: MuonFixedId.h:512
MuonCalib::MuonFixedId::rpcDoubletPhiIndex
int rpcDoubletPhiIndex() const
Rpc specific:
Definition: MuonFixedId.h:1056
MuonCalib::MuonFixedId::operator!=
bool operator!=(const MuonFixedId &rhs) const
comparison operator
Definition: MuonFixedId.h:595
MuonCalib::MuonFixedId::kStationNameStrings
static const char kStationNameStrings[kNumberOfStationNames][4]
Definition: MuonFixedId.h:451
MuonCalib::MuonFixedId::mdtTubeLayer
int mdtTubeLayer() const
Mdt specific:
Definition: MuonFixedId.h:813
MuonCalib::MuonFixedId::cscMeasuresPhi
int cscMeasuresPhi() const
Csc specific:
Definition: MuonFixedId.h:939
MuonCalib::MuonFixedId::setRpcGasGapIndex
bool setRpcGasGapIndex(unsigned int idx)
Rpc specific: set index for gas_gap to idx.
Definition: MuonFixedId.h:1064
MuonCalib::MuonFixedId::kStationPhiShift
static const unsigned int kStationPhiShift
Definition: MuonFixedId.h:447
MuonCalib::MuonFixedId::etaMin
static int etaMin()
Definition: MuonFixedId.h:716
MuonCalib::MuonFixedId::cscWireLayerMax
static int cscWireLayerMax()
Csc specific:
Definition: MuonFixedId.h:977
MuonCalib::MuonFixedId::setRpcStripIndex
bool setRpcStripIndex(unsigned int idx)
Rpc specific: set index for strip to idx.
Definition: MuonFixedId.h:1108
MuonCalib::MuonFixedId::mdtChamberId
MuonFixedId mdtChamberId() const
Mdt specific: convert channel ID into MDT Chamber ID.
Definition: MuonFixedId.h:863
MuonCalib::MuonFixedId::kRpcGasGapMask
static const unsigned int kRpcGasGapMask
Definition: MuonFixedId.h:507
MuonCalib::MuonFixedId::technologyString
std::string technologyString() const
Definition: MuonFixedId.h:625
MuonCalib::MuonFixedId::kRpcDoubletZMin
static const unsigned int kRpcDoubletZMin
Definition: MuonFixedId.h:501