void TauAnalysisSelector::setOutput(TDirectory *dir) {
  if(dir)
    dir->cd();

  hTau_AfterDecayModeFindingIsolation.book("tau_AfterDecayModeFindingIsolation");
  hGenTau_AfterDecayModeFindingIsolation.book("gentau_AfterDecayModeFindingIsolation");
  hVertexCount_AfterDecayModeFindingIsolation = makeVertexCount("vertexCount_AfterDecayModeFindingIsolation");

  hTau_AfterEtaCutIsolation.book("tau_AfterEtaCutIsolation");
  hGenTau_AfterEtaCutIsolation.book("gentau_AfterEtaCutIsolation");
  hVertexCount_AfterEtaCutIsolation = makeVertexCount("vertexCount_AfterEtaCutIsolation");

  hTau_AfterPtCutIsolation.book("tau_AfterPtCutIsolation");
  hGenTau_AfterPtCutIsolation.book("gentau_AfterPtCutIsolation");
  hTauLeadingTrackPt_AfterPtCutIsolation = makePt("tau_AfterPtCutIsolation_leadingTrackPt");
  hVertexCount_AfterPtCutIsolation = makeVertexCount("vertexCount_AfterPtCutIsolation");

  hTau_AfterLeadingTrackPtCutIsolation.book("tau_AfterLeadingTrackPtCutIsolation");
  hGenTau_AfterLeadingTrackPtCutIsolation.book("gentau_AfterLeadingTrackPtCutIsolation");

  hTau_AfterAgainstElectronIsolation.book("tau_AfterAgainstElectronIsolation");
  hGenTau_AfterAgainstElectronIsolation.book("gentau_AfterAgainstElectronIsolation");

  hTau_AfterAgainstMuonIsolation.book("tau_AfterAgainstMuonIsolation");
  hGenTau_AfterAgainstMuonIsolation.book("gentau_AfterAgainstMuonIsolation");

  hTau_AfterIsolation.book("tau_AfterIsolation");
  hGenTau_AfterIsolation.book("gentau_AfterIsolation");
  hTauDecayMode_AfterIsolation = makeTH<TH1F>("tauDecayMode_AfterIsolation", "Decay mode", 5, 0, 5);
  hTauDecayModeAll_AfterIsolation = makeTH<TH1F>("tauDecayModeAll_AfterIsolation", "Decay mode", 16, 0, 16);
  hVertexCount_AfterIsolation = makeVertexCount("vertexCount_AfterIsolation");

  hTau_AfterOneProng.book("tau_AfterOneProng");
  hGenTau_AfterOneProng.book("gentau_AfterOneProng");
  hTauP_AfterOneProng = makePt("tau_AfterOneProng_p");
  hTauLeadingTrackPt_AfterOneProng = makePt("tau_AfterOneProng_leadingTrackPt");
  hTauLeadingTrackP_AfterOneProng = makePt("tau_AfterOneProng_leadingTrackP");
  hTauRtau_AfterOneProng = makeTH<TH1F>("tau_AfterOneProng_rtau", "Rtau", 22, 0, 1.1);
  hVertexCount_AfterOneProng = makeVertexCount("vertexCount_AfterOneProng");

  hTau_AfterRtau.book("tau_AfterRtau");
  hGenTau_AfterRtau.book("gentau_AfterRtau");
  hVertexCount_AfterRtau = makeVertexCount("vertexCount_AfterRtau");
}