Add placeholder producer for new LumiInfoRunHeader and use in EcalLocalReco

This supersedes https://github.com/cms-sw/cmssw/pull/6128.

Very basic producer for LumiInfoRunHeader is added.  There are two different instances of this producer, one running in DIGI and the other in RECO, with different (configuration-level) behaviour.

Currently only the bunch spacing is filled.

The lumiInfoRunHeaderMC has the bunch spacing set at configuration level, with ConfigBuilder automatically setting it to match the configured pileup scenario.  (It runs BEFORE the mixing module in the digi sequence though, to facilitate the eventual plan of having the mixing module steer itself based on this product).  The producer can also be configured to treat the run number as if it were real data (for run-dependent mc purposes)

The lumiInfoRunHeader running in RECO has an if (isRealData) statement.  For data there is a hardcoded list of runs for now.  For MC the product is simply copied from lumiInfoRunHeaderMC.

The lumiInfoRunHeaderMC has been added to the sim event content, but I have NOT added the lumiInfoRunHeader yet to any reco or aod content (it is currently used as a transient product in any case in the ecal local reco).  Proper lumi event content configs should be created at some point to cover this.

Tested 50ns, 25ns, data, fastsim, and heavy ion workflows (plus the weird 101.0 that was problematic before)

Ecal local reco is also adapted to use the lumiInfoRunHeader to switch between 25ns and 50ns behaviour.
On 11/8/14, 9:51 PM, Josh Bendavid wrote:
> In RecoLuminosity/LumiProducer/plugins/LumiInfoRunHeaderProducer.cc:
> 
>> +  
>> +  
>> +  mcFillSchemeFromConfig_ = ps.getParameter<bool>("MCFillSchemeFromConfig");
>> +  mcFillSchemeFromDB_ = ps.getParameter<bool>("MCFillSchemeFromDB");
>> +  mcBunchSpacing_ = ps.getParameter<int>("MCBunchSpacing");
>> +  
>> +  lumiInfoRunHeaderMC_ = consumes<LumiInfoRunHeader,edm::InRun>(edm::InputTag("lumiInfoRunHeaderMC"));
>> +  produces<LumiInfoRunHeader,edm::InRun>();
>> +  
>> +  
>> +}
>> +
>> +void LumiInfoRunHeaderProducer::beginRunProduce(edm::Run &run, edm::EventSetup const& es) {
>> +   
>> +  //this is a hack, replace with proper call
>> +  bool isRealData = (run.runAuxiliary().beginTime().unixTime()>0);
> 
> (but this would mean we get the wrong config for the current 25ns test
> runs from 2012)

(assuming we are still talking about the short-term solution "for Monday")
Does it really matter for these runs ? None of these runs are in the
good run list,
and it's unclear if they will be re-reconstructed now for the 73 DPG/POG
calibration samples


		


> 
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/cms-sw/cmssw/pull/6281/files#r20054347>.
> 

-- 
***********************************************************************
 Vyacheslav (Slava) Krutelyov
 TAMU: Physics Dept Texas A&M MS4242, College Station, TX 77843-4242
 CERN: 42-R-027
 AIM/Skype: siava16              googleTalk: slava77@gmail.com
 (630) 291-5128  Cell (US)       +41 76 275 7116 Cell (CERN)

-----------------------------------------------------------------------