//  
// Author: Felix Thomas <mailto: Felix.Thomas@mailbox.tu-dresden.de>
// Update: $Id: AtlMETWeights.h,v 1.1 2011/10/06 08:40:20 fthomas Exp $
// Copyright: 2011 (C) Felix Thomas
//
#ifndef ATLAS_AtlMETWeights
#define ATLAS_AtlMETWeights
#ifndef ROOT_Rtypes
#include "Rtypes.h"
#endif


class AtlMETWeights {

private:

    Float_t        fMETw_tight_Px;         // Missing Et tight weight px
    Float_t        fMETw_tight_Py;         // Missing Et tight weight py
    Float_t        fMETw_tight_Et;         // Missing Et tight weight et
    UInt_t         fMET_tight_statusWord;  // Missing Et tight status word
    Float_t        fMETw_medium_Px;        // Missing Et medium weight px
    Float_t        fMETw_medium_Py;        // Missing Et medium weight py
    Float_t        fMETw_medium_Et;        // Missing Et medium weight et
    UInt_t         fMET_medium_statusWord; // Missing Et medium status word

public:
    AtlMETWeights();
    virtual ~AtlMETWeights();
    virtual void Clear(Option_t *option = "");

    // Weights are computed with tight electron definition
    inline Float_t GetMETw_tight_Px() {  return fMETw_tight_Px; }
    inline Float_t GetMETw_tight_Py() {  return fMETw_tight_Py; }
    inline Float_t GetMETw_tight_Et() {  return fMETw_tight_Et; }
    inline UInt_t GetMET_tight_statusWord() { return fMET_tight_statusWord; }
    inline void SetMET_tight_Weights(Float_t w_Px, Float_t w_Py, Float_t w_Et) {
        fMETw_tight_Px = w_Px;
        fMETw_tight_Py = w_Py;
        fMETw_tight_Et = w_Et;
    }
    // This method is necessary for backwards compatibility
    inline void SetMETWeights(Float_t w_Px, Float_t w_Py, Float_t w_Et) {
        SetMET_tight_Weights(w_Px, w_Py, w_Et);
    }
    inline void SetMET_tight_statusWord(UInt_t statusWord) { fMET_tight_statusWord = statusWord; }

    // Weights are computed with medium electron definition
    inline Float_t GetMETw_medium_Px() { return fMETw_medium_Px; }
    inline Float_t GetMETw_medium_Py() { return fMETw_medium_Py; }
    inline Float_t GetMETw_medium_Et() { return fMETw_medium_Et; }
    inline UInt_t GetMET_medium_statusWord() { return fMET_medium_statusWord; }
    
    inline void SetMET_medium_Weights(Float_t w_Px, Float_t w_Py, Float_t w_Et) {
        fMETw_medium_Px = w_Px;
        fMETw_medium_Py = w_Py;
        fMETw_medium_Et = w_Et;
    }
    inline void SetMET_medium_statusWord(UInt_t statusWord) { fMET_medium_statusWord = statusWord; }

    ClassDef(AtlMETWeights,1) // Interface for setting MET weights
};
#endif
 AtlMETWeights.h:1
 AtlMETWeights.h:2
 AtlMETWeights.h:3
 AtlMETWeights.h:4
 AtlMETWeights.h:5
 AtlMETWeights.h:6
 AtlMETWeights.h:7
 AtlMETWeights.h:8
 AtlMETWeights.h:9
 AtlMETWeights.h:10
 AtlMETWeights.h:11
 AtlMETWeights.h:12
 AtlMETWeights.h:13
 AtlMETWeights.h:14
 AtlMETWeights.h:15
 AtlMETWeights.h:16
 AtlMETWeights.h:17
 AtlMETWeights.h:18
 AtlMETWeights.h:19
 AtlMETWeights.h:20
 AtlMETWeights.h:21
 AtlMETWeights.h:22
 AtlMETWeights.h:23
 AtlMETWeights.h:24
 AtlMETWeights.h:25
 AtlMETWeights.h:26
 AtlMETWeights.h:27
 AtlMETWeights.h:28
 AtlMETWeights.h:29
 AtlMETWeights.h:30
 AtlMETWeights.h:31
 AtlMETWeights.h:32
 AtlMETWeights.h:33
 AtlMETWeights.h:34
 AtlMETWeights.h:35
 AtlMETWeights.h:36
 AtlMETWeights.h:37
 AtlMETWeights.h:38
 AtlMETWeights.h:39
 AtlMETWeights.h:40
 AtlMETWeights.h:41
 AtlMETWeights.h:42
 AtlMETWeights.h:43
 AtlMETWeights.h:44
 AtlMETWeights.h:45
 AtlMETWeights.h:46
 AtlMETWeights.h:47
 AtlMETWeights.h:48
 AtlMETWeights.h:49
 AtlMETWeights.h:50
 AtlMETWeights.h:51
 AtlMETWeights.h:52
 AtlMETWeights.h:53
 AtlMETWeights.h:54
 AtlMETWeights.h:55
 AtlMETWeights.h:56
 AtlMETWeights.h:57
 AtlMETWeights.h:58
 AtlMETWeights.h:59
 AtlMETWeights.h:60
 AtlMETWeights.h:61
 AtlMETWeights.h:62