<!DOCTYPE configuration SYSTEM "trigger_config.dtd">

<configuration name="global_L1CalMuon" version="1.3" type="global">

<!-- This trigger configuration file is intended to be used for global physics running
  Created:   22-Aug-2001 L.Babukhadia/E.Gallas from global_L1CalMuon-1.2
  General notes:
	- All triggers filter ONLY at Level 1, including
		a min_bias trigger, a zero_bias trigger
		a set of Cal EM and Jet triggers with no fastz requirement
		a set of muon triggers, all with fastz and some with Cal jet requirment
		two di-EM triggers:  one at lower threshold CEM(2,5)
                                     one at higher threshold called L1Zee [CEM(2,12)]
		one di-MUON trigger: 

  - Calorimeter reference sets:
      	em refsets (thresholds of 5 and 8 with 2 in restricted eta,phi region):
		em5
		em5eta8phi3	- for CTT studies ETA(-4:4)PHI(4:6)
		em12
		em15 ??
	hadveto refsets:  
		always null, extraneous hadveto refsets removed
  	jet refsets (with 2 in restricted eta,phi region):
		jt5, 
		jt10eta8phi3	- for CFT studies ETA(-4:4)PHI(4:6)
		jt10
		jt40

  Here is a list of modifications from global_L1CalMuon-1.2:
	EM refset em8eta3phi2 replaced with em15
	JT refset jt25eta3phi2 replaced with jt10
	di-EM trigger added with lower threshold CEM(2,5)
	di-MUON trigger added - NEW !
	muon plus jet triggers using current jet refsets
	forward n and s triggers now combined
	fastz requirement removed from cal only triggers
	fastz requirement retained for all muon and muon plus jet triggers

  Here are the L1bit and Trigger Names:
	L1BIT name		old TName	new TName ??

	Afastz			min_bias
	ALiveBX			zero_bias

        CEM(1,5)		CEM5		CEM_lo_5
	CEM(1,em5eta8phi3)	CEM5eta8phi3	CEM_lo_5CFT	
	CEM(1,12)		CEM12		CEM_hi_12
	CEM(1,15)		CEM15		CEM_mx_15
 	
	CJT(1,5)		CJT5		CJT_lo_5
	CJT(1,jt10eta8phi3)	CJT10eta8phi3	CJT_md_10CFT
	CJT(1,10)		CJT10		CJT_md_10
	CJT(1,40)		CJT40		CJT_mx_40
	
	mu1cmsc_fz		mu1cmsc_fz
	mu1pix_fz		mu1pix_fz
	
	mu1cmsc_j5_fz		mu1cmsc_j5_fz
	mu1cmsc_j10_fz		mu1cmsc_j10_fz
	mu1cmsc_j10m_fz		mu1cmsc_j10m_fz

	mu2pix_fz		mu2pix_fz
	
	CEM(2,5)		2CEM5
	CEM(2,12)		L1Zee

-->

&allcrates_readout;

  <l1refsets>
    <l1em_refset name="em5">
       TT_ETA(-4:4) Value 5.0
    </l1em_refset>
    <l1em_refset name="em5eta8phi3">
       TT_ETA(-4:4) TT_PHI(4:6) Value 5.0
    </l1em_refset>
    <l1em_refset name="em12">
       TT_ETA(-4:4) Value 12.0
    </l1em_refset>
    <l1em_refset name="em15">
       TT_ETA(-4:4) Value 15.0
    </l1em_refset>

    <l1hadveto_refset name="null">
       TT_ETA(-4:4) Value 10000.0
    </l1hadveto_refset>

    <l1jet_refset name="jt5">
       TT_ETA(-4:4) Value 5.0
    </l1jet_refset>
    <l1jet_refset name="jt10eta8phi3">
       TT_ETA(-4:4) TT_PHI(4:6) Value 10.0
    </l1jet_refset>
    <l1jet_refset name="jt10">
       TT_ETA(-4:4) Value 10.0
    </l1jet_refset>
    <l1jet_refset name="jt40">
       TT_ETA(-4:4) Value 40.0
    </l1jet_refset>

  </l1refsets>

  <trigdef num_nodes="8">

    <expogroup name="egall"  readout="allcrates">
      <l1termlist>
	  <l1specterm name="live_accel_bx"/>
      </l1termlist>
<!-- min_bias -->
      <l1trigger name="Afastz" prescale="10000">
        <l1termlist>
          <l1specterm name="fastz"/> 
	  <l1specterm name="live_accel_bx"/>
        </l1termlist>
	<l2trigger name="Afastz_none">
          <l3trigger name="min_bias"/>
        </l2trigger>
      </l1trigger>
<!-- zero_bias -->
      <l1trigger name="ALiveBX" prescale="10000">
        <l1termlist>
          <l1specterm name="live_accel_bx"/> 
        </l1termlist>
	<l2trigger name="ALiveBX_none">
          <l3trigger name="zero_bias"/>
        </l2trigger>
      </l1trigger>
<!-- Cal EM -->
      <l1trigger name="CEM(1,5)" prescale="10000">
        <l1termlist>
	  <l1specterm name="live_accel_bx"/>
          <l1emcount em_refset="em5" hadveto_refset="null" count="1"/>
        </l1termlist>
	<l2trigger name="CEM5_none">
          <l3trigger name="CEM5"/>
        </l2trigger>
      </l1trigger>
      <l1trigger name="CEM(1,em5eta8phi3)" prescale="10000">
        <l1termlist>
	  <l1specterm name="live_accel_bx"/>
          <l1emcount em_refset="em5eta8phi3" hadveto_refset="null" count="1"/>
        </l1termlist>
	<l2trigger name="CEM5eta8phi3_none">
          <l3trigger name="CEM5eta8phi3"/>
        </l2trigger>
      </l1trigger>
      <l1trigger name="CEM(1,12)" prescale="10000">
        <l1termlist>
	  <l1specterm name="live_accel_bx"/>
          <l1emcount em_refset="em12" hadveto_refset="null" count="1"/>
        </l1termlist>
	<l2trigger name="CEM12_none">
          <l3trigger name="CEM12"/>
        </l2trigger>
      </l1trigger>
      <l1trigger name="CEM(1,15)" prescale="10000">
        <l1termlist>
	  <l1specterm name="live_accel_bx"/>
          <l1emcount em_refset="em15" hadveto_refset="null" count="1"/>
        </l1termlist>
	<l2trigger name="CEM15_none">
          <l3trigger name="CEM15"/>
        </l2trigger>
      </l1trigger>
<!-- Cal JET -->
      <l1trigger name="CJT(1,5)" prescale="10000">
        <l1termlist>
          <l1jetcount jet_refset="jt5" count="1"/>
          <l1specterm name="live_accel_bx"/>
        </l1termlist>
        <l2trigger name="CJT5_none">
          <l3trigger name="CJT5"/>
        </l2trigger>
      </l1trigger>
      <l1trigger name="CJT(1,jt10eta8phi3)" prescale="10000">
        <l1termlist>
          <l1jetcount jet_refset="jt10eta8phi3" count="1"/>
       	  <l1specterm name="live_accel_bx"/>
        </l1termlist>
        <l2trigger name="CJT10eta8phi3_none">
          <l3trigger name="CJT10eta8phi3"/>
        </l2trigger>
      </l1trigger>
      <l1trigger name="CJT(1,10)" prescale="10000">
        <l1termlist>
          <l1jetcount jet_refset="jt10" count="1"/>
       	  <l1specterm name="live_accel_bx"/>
        </l1termlist>
        <l2trigger name="CJT10_none">
          <l3trigger name="CJT10"/>
        </l2trigger>
      </l1trigger>
      <l1trigger name="CJT(1,40)" prescale="10000">
        <l1termlist>
          <l1jetcount jet_refset="jt40" count="1"/>
       	  <l1specterm name="live_accel_bx"/>
        </l1termlist>
        <l2trigger name="CJT40_none">
          <l3trigger name="CJT40"/>
        </l2trigger>
      </l1trigger>
<!-- Muon -->
      <l1trigger name="mu1cmsc_fz" prescale="10000">
        <l1termlist>
          <l1specterm name="fastz"/> 
          <l1muo name="mu1pt1cllx"/>
      	  <l1specterm name="live_accel_bx"/>
        </l1termlist>
        <l2trigger name="mu1cmsc_fz_none">
          <l3trigger name="mu1cmsc_fz"/>
        </l2trigger>
      </l1trigger>
      <l1trigger name="mu1pix_fz" prescale="10000">
        <l1termlist>
          <l1specterm name="fastz"/> 
          <l1muo name="mu1pt2cllx"/>
       	  <l1specterm name="live_accel_bx"/>
        </l1termlist>
        <l2trigger name="mu1pix_fz_none">
          <l3trigger name="mu1pix_fz"/>
        </l2trigger>
      </l1trigger>
<!-- Muon plus jet -->
      <l1trigger name="mu1cmsc_j5_fz" prescale="10000">
        <l1termlist>
          <l1specterm name="fastz"/> 
          <l1muo name="mu1pt1cllx"/>
          <l1jetcount jet_refset="jt5" count="1"/>
          <l1specterm name="live_accel_bx"/>
        </l1termlist>
        <l2trigger name="mu1cmsc_j5_fz_none">
          <l3trigger name="mu1cmsc_j5_fz"/>
        </l2trigger>
      </l1trigger>
      <l1trigger name="mu1cmsc_j10_fz" prescale="10000">
        <l1termlist>
          <l1specterm name="fastz"/> 
          <l1muo name="mu1pt1cllx"/>
          <l1jetcount jet_refset="jt10" count="1"/>
          <l1specterm name="live_accel_bx"/>
        </l1termlist>
        <l2trigger name="mu1cmsc_j10_fz_none">
          <l3trigger name="mu1cmsc_j10_fz"/>
        </l2trigger>
      </l1trigger>
      <l1trigger name="mu1cmsc_j10m_fz" prescale="10000">
        <l1termlist>
          <l1specterm name="fastz"/> 
          <l1muo name="mu1pt1cllx"/>
          <l1jetcount jet_refset="jt5" count="1"/>
          <l1jetcount jet_refset="jt10eta8phi3" count="1"/>
      	  <l1specterm name="live_accel_bx"/>
        </l1termlist>
        <l2trigger name="mu1cmsc_j10m_fz_none">
          <l3trigger name="mu1cmsc_j10m_fz"/>
        </l2trigger>
      </l1trigger>

<!-- dimuon -->
      <l1trigger name="mu2pix_fz" prescale="10000">
        <l1termlist>
          <l1specterm name="fastz"/> 
          <l1muo name="mu1pt3cllx"/>
       	  <l1specterm name="live_accel_bx"/>
        </l1termlist>
        <l2trigger name="mu2pix_fz_none">
          <l3trigger name="mu2pix_fz"/>
        </l2trigger>
      </l1trigger>

<!-- di-EM triggers -->
      <l1trigger name="CEM(2,5)" prescale="10000">
        <l1termlist>
	  <l1specterm name="live_accel_bx"/>
          <l1emcount em_refset="em5" hadveto_refset="null" count="2"/>
        </l1termlist>
	<l2trigger name="2CEM5_none">
          <l3trigger name="2CEM5"/>
        </l2trigger>
      </l1trigger>
      <l1trigger name="CEM(2,12)" prescale="10000">
        <l1termlist>
	  <l1specterm name="live_accel_bx"/>
          <l1emcount em_refset="em12" hadveto_refset="null" count="2"/>
        </l1termlist>
	<l2trigger name="L1Zee_none">
          <l3trigger name="L1Zee"/>
        </l2trigger>
      </l1trigger>

    </expogroup>

    <triglist>
    |SRDirective useL1=yes
    |RUN_CFG L3RunConfigMgr(runcfg_file="cfg.dat")
    |ERR1 L3ErrHandle(port=52245, logfile=testfile1, statsfile=stat1, filethreshold=error, statsthreshold=info, host="d0olc.fnal.gov", exename="Srnode")
    |L2Trig Afastz_none
    |filter min_bias
    |L3FMarkAndPass(key=mpx1 pass_1_of_n=1. Stream="all")
    |L2Trig ALiveBX_none
    |filter zero_bias
    |L3FMarkAndPass(key=mpx2 pass_1_of_n=1. Stream="all")
    |L2Trig CEM5_none
    |filter CEM5
    |L3FMarkAndPass(key=mpx3 pass_1_of_n=1. Stream="all")
    |L2Trig CEM5eta8phi3_none
    |filter CEM5eta8phi3
    |L3FMarkAndPass(key=mpx4 pass_1_of_n=1. Stream="all")
    |L2Trig CEM12_none
    |filter CEM12
    |L3FMarkAndPass(key=mpx5 pass_1_of_n=1. Stream="all")
    |L2Trig CEM15_none
    |filter CEM15
    |L3FMarkAndPass(key=mpx6 pass_1_of_n=1. Stream="all")
    |L2Trig CJT5_none
    |filter CJT5
    |L3FMarkAndPass(key=mpx7 pass_1_of_n=1. Stream="all")
    |L2Trig CJT10eta8phi3_none
    |filter CJT10eta8phi3
    |L3FMarkAndPass(key=mpx8 pass_1_of_n=1. Stream="all")
    |L2Trig CJT10_none
    |filter CJT10
    |L3FMarkAndPass(key=mpx9 pass_1_of_n=1. Stream="all")
    |L2Trig CJT40_none
    |filter CJT40
    |L3FMarkAndPass(key=mpx10 pass_1_of_n=1. Stream="all")
    |L2Trig mu1cmsc_fz_none
    |filter mu1cmsc_fz
    |L3FMarkAndPass(key=mpx19 pass_1_of_n=1. Stream="all")
    |L2Trig mu1pix_fz_none
    |filter mu1pix_fz
    |L3FMarkAndPass(key=mpx20 pass_1_of_n=1. Stream="all")
    |L2Trig mu1cmsc_j5_fz_none
    |filter mu1cmsc_j5_fz
    |L3FMarkAndPass(key=mpx22 pass_1_of_n=1. Stream="all")
    |L2Trig mu1cmsc_j10_fz_none
    |filter mu1cmsc_j10_fz
    |L3FMarkAndPass(key=mpx23 pass_1_of_n=1. Stream="all")
    |L2Trig mu1cmsc_j10m_fz_none
    |filter mu1cmsc_j10m_fz
    |L3FMarkAndPass(key=mpx24 pass_1_of_n=1. Stream="all")
    |L2Trig mu2pix_fz_none
    |filter mu2pix_fz
    |L3FMarkAndPass(key=mpx25 pass_1_of_n=1. Stream="all")
    |L2Trig 2CEM5_none
    |filter 2CEM5
    |L3FMarkAndPass(key=mpx26 pass_1_of_n=1. Stream="all")
    |L2Trig L1Zee_none
    |filter L1Zee
    |L3FMarkAndPass(key=mpx27 pass_1_of_n=1. Stream="all")
    |
    </triglist>
  </trigdef>
  <stream name="all" relrate="100.0"/>
</configuration>

