DeepDoubleXFeatures

Macros

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
#ifndef DataFormats_BTauReco_DeepDoubleXFeatures_h
#define DataFormats_BTauReco_DeepDoubleXFeatures_h

#include <vector>

#include "DataFormats/BTauReco/interface/JetFeatures.h"
#include "DataFormats/BTauReco/interface/SecondaryVertexFeatures.h"
#include "DataFormats/BTauReco/interface/BoostedDoubleSVTagInfoFeatures.h"
#include "DataFormats/BTauReco/interface/ChargedCandidateFeatures.h"
#include "DataFormats/BTauReco/interface/NeutralCandidateFeatures.h"

namespace btagbtvdeep {

  class DeepDoubleXFeatures {
  public:
    bool empty() const { return is_empty_; }

    void filled() { is_empty_ = false; }

    JetFeatures jet_features;
    BoostedDoubleSVTagInfoFeatures tag_info_features;

    std::vector<ChargedCandidateFeatures> c_pf_features;

    std::vector<NeutralCandidateFeatures> n_pf_features;

    std::vector<SecondaryVertexFeatures> sv_features;

    std::size_t npv;  // used by deep flavour

  private:
    bool is_empty_ = true;
  };

}  // namespace btagbtvdeep

#endif  //DataFormats_BTauReco_DeepDoubleXFeatures_h