From 15a649e3e010a4e745a4bd665459c45beeeb2843 Mon Sep 17 00:00:00 2001
From: Enrico Guiraud <enrico.guiraud@cern.ch>
Date: Wed, 8 Mar 2017 19:25:24 +0100
Subject: [PATCH] [TDF] Avoid useless copies of BranchNames

---
 tree/treeplayer/inc/ROOT/TDataFrame.hxx |  6 +++---
 tree/treeplayer/src/TDataFrame.cxx      | 12 ++++++------
 2 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/tree/treeplayer/inc/ROOT/TDataFrame.hxx b/tree/treeplayer/inc/ROOT/TDataFrame.hxx
index bbe6450dbe5..5ced6f1ab85 100644
--- a/tree/treeplayer/inc/ROOT/TDataFrame.hxx
+++ b/tree/treeplayer/inc/ROOT/TDataFrame.hxx
@@ -248,7 +248,7 @@ protected:
    const BranchNames fTmpBranches;
    std::vector<TVBVec_t> fReaderValues;
 public:
-   TDataFrameActionBase(const std::weak_ptr<ROOT::Detail::TDataFrameImpl>& firstData, const BranchNames& bn);
+   TDataFrameActionBase(const std::weak_ptr<ROOT::Detail::TDataFrameImpl>& firstData, const BranchNames& tmpBranches);
    virtual ~TDataFrameActionBase() {}
    virtual void Run(unsigned int slot, Long64_t entry) = 0;
    virtual void BuildReaderValues(TTreeReader &r, unsigned int slot) = 0;
@@ -1284,7 +1284,7 @@ protected:
    BranchNames fTmpBranches;
    const std::string fName;
 public:
-   TDataFrameBranchBase(const std::weak_ptr<TDataFrameImpl>& df, BranchNames branches, const std::string &name);
+   TDataFrameBranchBase(const std::weak_ptr<TDataFrameImpl>& df, const BranchNames& tmpBranches, const std::string &name);
    virtual ~TDataFrameBranchBase() {}
    virtual void BuildReaderValues(TTreeReader &r, unsigned int slot) = 0;
    virtual void CreateSlots(unsigned int nSlots) = 0;
@@ -1390,7 +1390,7 @@ protected:
    const std::string fName;
 
 public:
-   TDataFrameFilterBase(const std::weak_ptr<TDataFrameImpl>& df, BranchNames branches, const std::string& name);
+   TDataFrameFilterBase(const std::weak_ptr<TDataFrameImpl>& df, const BranchNames& tmpBranches, const std::string& name);
    virtual ~TDataFrameFilterBase() {}
    virtual void BuildReaderValues(TTreeReader &r, unsigned int slot) = 0;
    virtual bool CheckFilters(unsigned int slot, Long64_t entry) = 0;
diff --git a/tree/treeplayer/src/TDataFrame.cxx b/tree/treeplayer/src/TDataFrame.cxx
index a067b4f428b..35b40afd6b4 100644
--- a/tree/treeplayer/src/TDataFrame.cxx
+++ b/tree/treeplayer/src/TDataFrame.cxx
@@ -464,8 +464,8 @@ const BranchNames &PickBranchNames(unsigned int nArgs, const BranchNames &bl, co
    return useDefBl ? defBl : bl;
 }
 
-TDataFrameActionBase::TDataFrameActionBase(const std::weak_ptr<ROOT::Detail::TDataFrameImpl>& firstData, const BranchNames& bn)
-   : fFirstData(firstData), fTmpBranches(bn) { }
+TDataFrameActionBase::TDataFrameActionBase(const std::weak_ptr<ROOT::Detail::TDataFrameImpl>& firstData, const BranchNames& tmpBranches)
+   : fFirstData(firstData), fTmpBranches(tmpBranches) { }
 
 void TDataFrameActionBase::CreateSlots(unsigned int nSlots) { fReaderValues.resize(nSlots); }
 
@@ -473,8 +473,8 @@ void TDataFrameActionBase::CreateSlots(unsigned int nSlots) { fReaderValues.resi
 
 namespace Detail {
 
-TDataFrameBranchBase::TDataFrameBranchBase(const std::weak_ptr<TDataFrameImpl>& df, BranchNames branches, const std::string &name)
-   : fFirstData(df), fTmpBranches(branches), fName(name) {};
+TDataFrameBranchBase::TDataFrameBranchBase(const std::weak_ptr<TDataFrameImpl>& df, const BranchNames& tmpBranches, const std::string &name)
+   : fFirstData(df), fTmpBranches(tmpBranches), fName(name) {};
 
 BranchNames TDataFrameBranchBase::GetTmpBranches() const { return fTmpBranches; }
 
@@ -482,8 +482,8 @@ std::string TDataFrameBranchBase::GetName() const { return fName; }
 
 std::weak_ptr<TDataFrameImpl> TDataFrameBranchBase::GetDataFrame() const { return fFirstData; }
 
-TDataFrameFilterBase::TDataFrameFilterBase(const std::weak_ptr<TDataFrameImpl>& df, BranchNames branches, const std::string& name)
-   : fFirstData(df), fTmpBranches(branches), fName(name) {};
+TDataFrameFilterBase::TDataFrameFilterBase(const std::weak_ptr<TDataFrameImpl>& df, const BranchNames& tmpBranches, const std::string& name)
+   : fFirstData(df), fTmpBranches(tmpBranches), fName(name) {};
 
 std::weak_ptr<TDataFrameImpl> TDataFrameFilterBase::GetDataFrame() const { return fFirstData; }
 
-- 
GitLab