//this file looks like plain C, but it's actually -*- c++ -*-
#ifndef __TQCutflowAnalysisJob__
#define __TQCutflowAnalysisJob__

#include "QFramework/TQAnalysisJob.h"
#include "TObject.h"
#include "QFramework/TQCounter.h"

class TQSample;

class TQCutflowAnalysisJob : public TQAnalysisJob {

protected:

  TQCounter * fCounter = NULL;
  TQSampleFolder* poolAt = NULL;

	bool finalizeCounter();

public:

  TQCutflowAnalysisJob();
  TQCutflowAnalysisJob(const TString& name_);

  bool initializeSampleFolder(TQSampleFolder* sf) override;
  bool finalizeSampleFolder (TQSampleFolder* sf) override;

  using TQAnalysisJob::getBranchNames;

  virtual bool initializeSelf() override;
  virtual bool finalizeSelf() override;
  virtual bool execute(double weight) override;
 
  virtual ~TQCutflowAnalysisJob();
 
  ClassDefOverride(TQCutflowAnalysisJob, 1); // analysis job that creates counters for a cutflow

};

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