ATLAS Offline Software
Loading...
Searching...
No Matches
IRegionSelectorTool.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// IRegionSelectorTool.h
7// Header file for class IRegionSelectorTool
9// (c) ATLAS Detector software
11// Niels.Van.Eldik@cern.ch,
13
14
15#ifndef MUONCALIB_IREGIONSELECTORTOOL_H
16#define MUONCALIB_IREGIONSELECTORTOOL_H
17
18// Gaudi
19#include "GaudiKernel/IAlgTool.h"
20
22
23#include <vector>
24
25namespace MuonCalib {
26
28 static const InterfaceID IID_IRegionSelectorTool("MuonCalib::IRegionSelectorTool", 1, 0);
29
37
38 class MuonCalibSegment;
39
40 class IRegionSelectorTool : virtual public IAlgTool {
41 public:
42
44 typedef std::string RegionKey;
45 typedef std::pair<const MuonCalibSegment*,RegionKey> Region;
46 typedef std::vector<Region> RegionVec;
47 public:
48 IRegionSelectorTool() : m_notUsed("notUsed") {};
50
51 static const InterfaceID& interfaceID() { return IID_IRegionSelectorTool; };
52
53 virtual RegionKey getRegionKey(const id_type& id) const = 0;
54 virtual RegionVec splitIntoRegions( const MuonCalibSegment* seg) const = 0;
55
56
57 virtual bool useRegion( const RegionKey& key ) const { return key != m_notUsed; }
58 virtual RegionKey notUsed() const { return m_notUsed; }
59
60 private:
62 };
63
64}
65
66#endif //
std::vector< Region > RegionVec
typedef of a set of Region (pairs)
virtual bool useRegion(const RegionKey &key) const
virtual IAlgTool interface: returns true if the generated key corresponds to a region that should be ...
virtual RegionKey getRegionKey(const id_type &id) const =0
retrieve Interface ID
MuonFixedId id_type
typedef for a MuonFixedId
virtual RegionKey notUsed() const
virtual IAlgTool interface: returns the notUsed key
virtual ~IRegionSelectorTool()
IAlgTool default constructor.
std::pair< const MuonCalibSegment *, RegionKey > Region
typedef of a pair of a MuonCalibSegment and a RegionKey
RegionKey m_notUsed
flag for regions that are not to be calibrated
static const InterfaceID & interfaceID()
pure virtual IAlgTool destructor
virtual RegionVec splitIntoRegions(const MuonCalibSegment *seg) const =0
pure virtual IAlgTool interface: divide MdtSegment into subsegments if they belong to differnt region...
std::string RegionKey
typedef for a std::string used as region key
A MuonCalibSegment is a reconstructed three dimensional track segment in the MuonSpectrometer.
Implements fixed identifiers not dependent upon Athena Identifier for internal use in the calibration...
Definition MuonFixedId.h:50
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
static const InterfaceID IID_IRegionSelectorTool("MuonCalib::IRegionSelectorTool", 1, 0)
Interface ID for IRegionSelectorTool.