From 3a645741bd889734f23e449d7bfc068e4d91a0c3 Mon Sep 17 00:00:00 2001
From: Walter Lampl <Walter.Lampl@cern.ch>
Date: Thu, 23 Jun 2016 11:38:00 +0200
Subject: [PATCH] auto-configure bunch spacing using new tool
 CoolConvUtilities.BunchSpacingUtils (RecExConfig-00-03-65)

	* auto-configure bunch spacing using new tool CoolConvUtilities.BunchSpacingUtils
	* tag RecExConfig-00-03-65

2016-06-07 Edward.Moyse@cern.ch
        * First attempt to set bunch spacing from autoconf (ATLASRECTS-3197)
---
 .../RecExConfig/python/AutoConfiguration.py   | 20 ++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

diff --git a/Reconstruction/RecExample/RecExConfig/python/AutoConfiguration.py b/Reconstruction/RecExample/RecExConfig/python/AutoConfiguration.py
index dca37f8a0e2..4267eba21b9 100644
--- a/Reconstruction/RecExample/RecExConfig/python/AutoConfiguration.py
+++ b/Reconstruction/RecExample/RecExConfig/python/AutoConfiguration.py
@@ -476,7 +476,25 @@ def ConfigureBeamBunchSpacing():
             logAutoConfiguration.info("Auto configured bunchSpacing: %s ", jobproperties.Beam.bunchSpacing())
         except:
             logAutoConfiguration.warning("bunchSpacing could not be auto configured, no info available using default value: %s ",jobproperties.Beam.bunchSpacing() )
-                        
+    else: 
+        #real data
+        if not jobproperties.Beam.beamType.is_locked():
+            ConfigureBeamType()
+        if jobproperties.Beam.beamType() == 'collisions':
+            #Real data collision run, try to get bunch spacing from database
+            from CoolConvUtilities.BunchSpacingUtils import bunchSpacingOfRun
+            bc=bunchSpacingOfRun(GetRunNumber(),GetLBNumber())
+            if bc is not None and bc==1: 
+                jobproperties.Beam.bunchSpacing.set_Value_and_Lock(25)
+                logAutoConfiguration.info("Autoconfigure bunch-spacing to 25 ns")
+            else:
+                logAutoConfiguration.info("No data or larger bunch spacing, autoconfigure to 50 ns")
+                pass
+            pass
+        else:
+            logAutoConfiguration.info("Not a collisions run, bunch spacing not autoconfigured")
+            pass
+        pass
     return
  
 
-- 
GitLab