#------------------------------------------------------------------------------ # $Id: BetaMiniUserProduction.tcl,v 1.2 2004/11/26 23:41:08 khamano Exp $ # BetaMiniUser (sample) production tcl file # Defines the interface and set defaults for BetaMiniUser jobs # Guglielmo De Nardo SLAC 26 May 2004 # K. Hamano 10 Nov 2004 -- modified for general use #------------------------------------------------------------------------------ # always source the error logger early in your main tcl script sourceFoundFile ErrLogger/ErrLog.tcl sourceFoundFile FrameScripts/FwkCfgVar.tcl sourceFoundFile FrameScripts/talkto.tcl sourceFoundFile FrameScripts/setProduction.tcl sourceFoundFile BetaMiniSequences/BetaMiniSequence.tcl sourceFoundFile UsrTools/UsrDataProcs.tcl FwkCfgVar BetaMiniReadPersistence Kan ;# allowed values are (currently) ;# Kan or Bdb FwkCfgVar levelOfDetail cache ;# allowed values ;# micro, cache, extend or refit FwkCfgVar ConfigPatch MC ;# Run1 for all data ;# MC for MonteCarlo FwkCfgVar NEvent All ;# number of events to run ;# If this isn't set all events ;# will be processed FwkCfgVar BetaMiniTuple "root" ;# choose the flavor of ntuple ;# to write (hbook or root) FwkCfgVar histFileName "MyMiniAnalysis.root" ;# and the file name FwkCfgVarRequire streams ;# streams ( i.e. ) analyses to run FwkCfgVarRequire userPackage foreach stream $streams { sourceFoundFile $userPackage/${streams}Config.tcl } #FwkCfgListRequire inputList ;# input collection list FwkCfgVarRequire inputList ;# input collection list FwkCfgVar inputCndUsrBlocks "" ;# Candidate User Data Blocks to read FwkCfgVar inputEvtUsrBlocks "" ;# Event User Data Blocks to read FwkCfgVar outputCollection "" ;# Output collection name ;# if (empty) default value is overidden ;# the MiniWriteSequence is added by runSkim FwkCfgVar outputBtaCandidates "" ;# composite BtaCandidate lists to persist FwkCfgVar outputCndUsrBlocks "" ;# Candidate User Data Blocks to persist FwkCfgVar outputEvtUsrBlocks "" ;# Event User Data Blocks to persist # customize output Event store content FwkCfgVar components "deepCopyMicro" ;# components to write. Can be ;# deepCopyMicro ;# deepCopyMini ;# pointer ;# explicit list of components FwkCfgVar cndStoreLevel "compact" FwkCfgVar cndOptions "" FwkCfgVar trkFitType "All" FwkCfgVar trkFitStorage "ZAxis" ErrLoggingLevel warning # read User Data if [ info exists inputCndUsrBlocks ] { if { $inputCndUsrBlocks != "" } { enableReadUsrData foreach block $inputCndUsrBlocks { readCandUsrData $block } } } if [ info exists inputEvtUsrBlocks ] { if { $inputEvtUsrBlocks != "" } { enableReadUsrData foreach block $inputEvtUsrBlocks { readEventUsrData $block } } } foreach stream $streams { runSkim $stream $userPackage $outputCollection $components $outputBtaCandidates $outputCndUsrBlocks $outputEvtUsrBlocks $cndStoreLevel $cndOptions $trkFitType $trkFitStorage } path list if { $NEvent == "All" } { ev begin exit } elseif { $NEvent == "NoRun" } { ErrMsg warning "NEvent set to NoRun. Returning control" exit } else { ev begin -nev $NEvent exit }