From f1b71cb3025a65d0689d2f4e128ebb8c4093e285 Mon Sep 17 00:00:00 2001
From: James Beacham <j.beacham@cern.ch>
Date: Sat, 14 Oct 2017 21:20:02 +0200
Subject: [PATCH] Revert "Merge branch '21.0_Loose-Selection-2' into '21.0'"

This reverts commit 1000a1cfbad79703c734143c20e1375279e92a3c [formerly d57d58cd9ec70419f96e1a5459267738957d1b30], reversing
changes made to 05fc590621de8456aab6817b0ed736bd4a1a6028 [formerly 0389d6a7d1a1e7f666bb50109cdaccc4b54cffcc].


Former-commit-id: 42f7d3ded1f5aa33fb79736e93db4717994cc7da
---
 .../python/InDetPhysValDecoration.py          | 17 +++++++++++++
 .../python/InDetPhysValJobProperties.py       |  8 +------
 .../python/InDetPhysValMonitoringTool.py      | 24 +------------------
 .../python/TrackSelectionTool.py              | 19 ---------------
 .../share/PhysValInDet_jobOptions.py          | 22 ++---------------
 5 files changed, 21 insertions(+), 69 deletions(-)

diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValDecoration.py b/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValDecoration.py
index 126b877382661..4a361bb77593f 100644
--- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValDecoration.py
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValDecoration.py
@@ -377,6 +377,19 @@ def addExtraMonitoring() :
            mon_manager = topSequence.getChildren()[mon_index]
            from InDetPhysValMonitoring.InDetPhysValMonitoringTool import InDetPhysValMonitoringTool
 
+           from InDetRecExample.InDetKeys import InDetKeys
+           # for backward compatibility check whether DBM has been added already
+           if InDetPhysValFlags.doValidateTightPrimaryTracks() :
+              mon_manager.AthenaMonTools += [ toolFactory(InDetPhysValMonitoringTool.InDetPhysValMonitoringToolTightPrimary ) ]
+
+           if InDetPhysValFlags.doValidateGSFTracks() :
+              mon_manager.AthenaMonTools += [ toolFactory(InDetPhysValMonitoringTool.InDetPhysValMonitoringToolGSF ) ]
+
+           from InDetRecExample.InDetKeys import InDetKeys
+           # for backward compatibility check whether DBM has been added already
+           if InDetPhysValFlags.doValidateDBMTracks() and hasattr(InDetKeys,'DBMTrackParticles') :
+              mon_manager.AthenaMonTools += [ toolFactory(InDetPhysValMonitoringTool.InDetPhysValMonitoringToolDBM ) ]
+
   except ImportError :
     import sys,traceback
     exc_type, exc_value, exc_traceback = sys.exc_info()
@@ -442,6 +455,10 @@ def addDecoratorIfNeeded() :
    # the monitoring manager exists already.
    from  InDetPhysValMonitoring.InDetPhysValJobProperties import InDetPhysValFlags
    InDetPhysValFlags.init()
+   if InDetPhysValFlags.doValidateGSFTracks() or InDetPhysValFlags.doValidateDBMTracks() or InDetPhysValFlags.doValidateTightPrimaryTracks():
+       from RecExConfig.RecFlags import rec
+       rec.UserExecs += ['from InDetPhysValMonitoring.InDetPhysValDecoration import addExtraMonitoring;addExtraMonitoring();']
 
    # from AthenaCommon.AppMgr import ServiceMgr as svcMgr
    # print 'DEBUG addDecoratorIfNeeded add meta data %s.' % svcMgr.TagInfoMgr.ExtraTagValuePairs
+
diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValJobProperties.py b/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValJobProperties.py
index c2cdc56117157..751cd8c30e4db 100644
--- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValJobProperties.py
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValJobProperties.py
@@ -52,11 +52,6 @@ class doValidateGSFTracks(InDetPhysValFlagsJobProperty):
     allowedTypes = ['bool']
     StoredValue  = False
 
-class doValidateLooseTracks(InDetPhysValFlagsJobProperty):
-    statusOn     = True
-    allowedTypes = ['bool']
-    StoredValue  = False
-
 class doValidateTightPrimaryTracks(InDetPhysValFlagsJobProperty):
     statusOn     = True
     allowedTypes = ['bool']
@@ -122,8 +117,7 @@ jobproperties.add_Container(InDetPhysValJobProperties)
 _list_InDetPhysValJobProperties = [
     Enabled,
     doValidateDBMTracks,
-    doValidateGSFTracks,    
-    doValidateLooseTracks,
+    doValidateGSFTracks,
     doValidateTightPrimaryTracks,
     doValidateTracksInJets
 ]
diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValMonitoringTool.py b/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValMonitoringTool.py
index 6e9d441c958ba..e941f93a2bfb5 100644
--- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValMonitoringTool.py
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/InDetPhysValMonitoringTool.py
@@ -85,29 +85,6 @@ class InDetPhysValMonitoringTool(object) :
             from RecExConfig.RecFlags import rec
             rec.UserExecs += ['from InDetPhysValMonitoring.InDetPhysValMonitoringTool import removePhysValExample;removePhysValExample();']
 
-
-  class InDetPhysValMonitoringToolLoose(InDetPhysValMonitoringTool) :
-      '''
-      InDetPhysValMonitoringTool for track particles which pass the loose selection
-      '''
-      #@injectNameArgument
-      #def __new__(cls, *args, **kwargs) :
-      #    return InDetPhysValMonitoringTool.InDetPhysValMonitoringTool.__new__(cls,*args,**kwargs)
-
-      @checkKWArgs
-      def __init__(self, **kwargs) :
-          super(InDetPhysValMonitoringTool.InDetPhysValMonitoringToolLoose,self)\
-                        .__init__(**_args( kwargs,
-                                           name = self.__class__.__name__))
-
-          # special parameters of the InDetPhysValMonitoringTool for monitoring loose tracks
-          self.SubFolder='Loose/'
-          self.useTrackSelection = True
-
-          from InDetPhysValMonitoring.TrackSelectionTool import InDetTrackSelectionTool
-          self.TrackSelectionTool = toolFactory(InDetTrackSelectionTool.InDetTrackSelectionToolLoose)
-
-
   class InDetPhysValMonitoringToolTightPrimary(InDetPhysValMonitoringTool) :
       '''
       InDetPhysValMonitoringTool for track particles which pass the tight primary selection
@@ -129,6 +106,7 @@ class InDetPhysValMonitoringTool(object) :
           from InDetPhysValMonitoring.TrackSelectionTool import InDetTrackSelectionTool
           self.TrackSelectionTool = toolFactory(InDetTrackSelectionTool.InDetTrackSelectionToolTightPrimary)
 
+
   class InDetPhysValMonitoringToolGSF(InDetPhysValMonitoringTool) :
       '''
       InDetPhysValMonitoringTool for GSF track particles
diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/TrackSelectionTool.py b/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/TrackSelectionTool.py
index 90b888e37f419..e24bf518dcd12 100644
--- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/TrackSelectionTool.py
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/python/TrackSelectionTool.py
@@ -9,23 +9,6 @@ class InDetTrackSelectionTool(object) :
   '''
   def __init__(self) :
      raise('must not be instantiated. Only child classes should be instantiated.')
-  
-  class InDetTrackSelectionToolLoose(InDet__InDetTrackSelectionTool) :
-      '''
-      Default InDetTrackSelectionTool for InDetTrackParticles
-      '''
-      @injectNameArgument
-      def __new__(cls, *args, **kwargs) :
-          return InDet__InDetTrackSelectionTool.__new__(cls,*args,**kwargs)
-
-      @checkKWArgs
-      def __init__(self, **kwargs) :
-          super(InDetTrackSelectionTool.InDetTrackSelectionToolLoose,self)\
-                        .__init__(**_args( kwargs,
-                                           name = self.__class__.__name__))
-
-          # special parameters of the InDetTrackSelectionToolLoose
-          self.CutLevel = "Loose"
 
   class InDetTrackSelectionToolTightPrimary(InDet__InDetTrackSelectionTool) :
       '''
@@ -43,5 +26,3 @@ class InDetTrackSelectionTool(object) :
 
           # special parameters of the InDetTrackSelectionToolTightPrimary
           self.CutLevel = "TightPrimary"
- 
-
diff --git a/PhysicsAnalysis/PhysicsValidation/PhysValMonitoring/share/PhysValInDet_jobOptions.py b/PhysicsAnalysis/PhysicsValidation/PhysValMonitoring/share/PhysValInDet_jobOptions.py
index b3b8c897ca789..5072048d1ee39 100644
--- a/PhysicsAnalysis/PhysicsValidation/PhysValMonitoring/share/PhysValInDet_jobOptions.py
+++ b/PhysicsAnalysis/PhysicsValidation/PhysValMonitoring/share/PhysValInDet_jobOptions.py
@@ -4,27 +4,9 @@ decoration = InDetPhysValMonitoring.InDetPhysValDecoration.addDecoratorIfNeeded(
 # add ID physics validation monitoring tool
 
 from InDetPhysValMonitoring.InDetPhysValMonitoringTool import InDetPhysValMonitoringTool
-
 indet_mon_tool = InDetPhysValMonitoringTool.InDetPhysValMonitoringTool()
-ToolSvc += [indet_mon_tool] 
-monMan.AthenaMonTools += [indet_mon_tool] 
-
-if InDetPhysValFlags.doValidateDBMTracks():
-    indet_mon_tool_DBM = InDetPhysValMonitoringTool.InDetPhysValMonitoringToolDBM()
-    ToolSvc += [ indet_mon_tool_DBM ]
-    monMan.AthenaMonTools += [ indet_mon_tool_DBM ] 
 
-if InDetPhysValFlags.doValidateGSFTracks():
-    indet_mon_tool_GSF = InDetPhysValMonitoringTool.InDetPhysValMonitoringToolGSF()
-    ToolSvc += [ indet_mon_tool_GSF ]
-    monMan.AthenaMonTools += [ indet_mon_tool_GSF ]
+ToolSvc += indet_mon_tool
+monMan.AthenaMonTools += [indet_mon_tool]
 
-if InDetPhysValFlags.doValidateLooseTracks():
-    indet_mon_tool_Loose = InDetPhysValMonitoringTool.InDetPhysValMonitoringToolLoose()
-    ToolSvc += [ indet_mon_tool_Loose ]
-    monMan.AthenaMonTools += [ indet_mon_tool_Loose ] 
 
-if InDetPhysValFlags.doValidateTightPrimaryTracks():
-    indet_mon_tool_TightPrimary = InDetPhysValMonitoringTool.InDetPhysValMonitoringToolTightPrimary()
-    ToolSvc += [ indet_mon_tool_TightPrimary ]
-    monMan.AthenaMonTools += [ indet_mon_tool_TightPrimary ] 
-- 
GitLab