//  
// Author: Oliver Maria Kind <mailto: kind@mail.desy.de>
// Update: $Id: AtlTriggerMatch.h,v 1.4 2011/03/08 16:08:23 fthomas Exp $
// Copyright: 2010 (C) Oliver Maria Kind
//
#ifndef ATLAS_AtlTriggerMatch
#define ATLAS_AtlTriggerMatch
#ifndef ROOT_TRefArray
#include <TRefArray.h>
#endif
#ifndef ATLAS_AtlTriggerItem
#include <AtlTriggerItem.h>
#endif

class AtlTrigger;

class AtlTriggerMatch {

private:
    TRefArray  *fL1Items;  // Matched L1 trigger items
    TRefArray  *fHLTItems; // Matched HLT trigger items
    
public:
    AtlTriggerMatch();
    virtual ~AtlTriggerMatch();
    virtual void Clear(Option_t *option = "");
    Bool_t HasMatchedL1(const char* L1ItemName, Int_t RunNr,
			AtlTrigger *trigger) const;
    Bool_t HasMatchedHLT(const char* HLTItemName, Int_t RunNr,
			 AtlTrigger *trigger) const;
    void AddL1Match(AtlTriggerItem *item);
    void AddHLTMatch(AtlTriggerItem *item);

    inline const TRefArray* GetMatchedL1Items()  const { return fL1Items;  }
    inline const TRefArray* GetMatchedHLTItems() const { return fHLTItems; }
    inline Int_t GetN_L1Matches()  const { return fL1Items->GetEntries();  }
    inline Int_t GetN_HLTMatches() const { return fHLTItems->GetEntries(); }
    inline Int_t GetN_TriggerMatches() const { return GetN_L1Matches() + GetN_HLTMatches(); }
    
    ClassDef(AtlTriggerMatch,2) // Match of trigger objects to offline reconstructed objects
};
#endif

 AtlTriggerMatch.h:1
 AtlTriggerMatch.h:2
 AtlTriggerMatch.h:3
 AtlTriggerMatch.h:4
 AtlTriggerMatch.h:5
 AtlTriggerMatch.h:6
 AtlTriggerMatch.h:7
 AtlTriggerMatch.h:8
 AtlTriggerMatch.h:9
 AtlTriggerMatch.h:10
 AtlTriggerMatch.h:11
 AtlTriggerMatch.h:12
 AtlTriggerMatch.h:13
 AtlTriggerMatch.h:14
 AtlTriggerMatch.h:15
 AtlTriggerMatch.h:16
 AtlTriggerMatch.h:17
 AtlTriggerMatch.h:18
 AtlTriggerMatch.h:19
 AtlTriggerMatch.h:20
 AtlTriggerMatch.h:21
 AtlTriggerMatch.h:22
 AtlTriggerMatch.h:23
 AtlTriggerMatch.h:24
 AtlTriggerMatch.h:25
 AtlTriggerMatch.h:26
 AtlTriggerMatch.h:27
 AtlTriggerMatch.h:28
 AtlTriggerMatch.h:29
 AtlTriggerMatch.h:30
 AtlTriggerMatch.h:31
 AtlTriggerMatch.h:32
 AtlTriggerMatch.h:33
 AtlTriggerMatch.h:34
 AtlTriggerMatch.h:35
 AtlTriggerMatch.h:36
 AtlTriggerMatch.h:37
 AtlTriggerMatch.h:38
 AtlTriggerMatch.h:39
 AtlTriggerMatch.h:40
 AtlTriggerMatch.h:41
 AtlTriggerMatch.h:42
 AtlTriggerMatch.h:43