FedCablingAlgorithm

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 46 47 48 49 50
#ifndef DQM_SiStripCommissioningAnalysis_FedCablingAlgorithm_H
#define DQM_SiStripCommissioningAnalysis_FedCablingAlgorithm_H

#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "DQM/SiStripCommissioningAnalysis/interface/CommissioningAlgorithm.h"
#include <vector>

class FedCablingAnalysis;
class TH1;

/** 
   @class FedCablingAlgorithm
   @author R.Bainbridge
   @brief Histogram-based analysis for connection loop.
*/
class FedCablingAlgorithm : public CommissioningAlgorithm {
public:
  // ---------- Con(de)structors and typedefs ----------

  FedCablingAlgorithm(const edm::ParameterSet& pset, FedCablingAnalysis* const);

  ~FedCablingAlgorithm() override { ; }

  /** Pointer to FED id histogram. */
  inline const Histo& hFedId() const;

  /** Pointer to FED channel histogram. */
  inline const Histo& hFedCh() const;

private:
  FedCablingAlgorithm() { ; }

  /** Extracts and organises histograms. */
  void extract(const std::vector<TH1*>&) override;

  /** Performs histogram anaysis. */
  void analyse() override;

private:
  /** Histo containing FED id */
  Histo hFedId_;

  /** Histo containing FED channel */
  Histo hFedCh_;
};

const FedCablingAlgorithm::Histo& FedCablingAlgorithm::hFedId() const { return hFedId_; }
const FedCablingAlgorithm::Histo& FedCablingAlgorithm::hFedCh() const { return hFedCh_; }

#endif  // DQM_SiStripCommissioningAnalysis_FedCablingAlgorithm_H