DTreeNode

L1TMuonEndCapForest

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 38 39 40 41 42 43 44 45
//
// L1TMuonEndCapForests: Collection of Decision Tree Forests used to fill EMTF LUTs.
//

#ifndef l1t_L1TMuonEndCapForest_h
#define l1t_L1TMuonEndCapForest_h

#include <memory>
#include <iostream>
#include <vector>
#include <map>

#include "CondFormats/Serialization/interface/Serializable.h"

class L1TMuonEndCapForest {
public:
  class DTreeNode {
  public:
    DTreeNode() {
      splitVar = ileft = iright = 0;
      splitVal = fitVal = 0.0;
    }
    int splitVar;
    double splitVal;
    double fitVal;
    unsigned ileft;
    unsigned iright;

    COND_SERIALIZABLE;
  };
  typedef std::vector<DTreeNode> DTree;
  typedef std::vector<DTree> DForest;
  typedef std::vector<DForest> DForestColl;
  typedef std::map<int, int> DForestMap;

  unsigned version_;
  DForestColl forest_coll_;
  DForestMap forest_map_;

  L1TMuonEndCapForest() { version_ = 0; }
  ~L1TMuonEndCapForest() {}

  COND_SERIALIZABLE;
};
#endif