From 82ab43e987f8a82fabbe688b98866cd8e513cea3 Mon Sep 17 00:00:00 2001
From: Vassil Vassilev <vvasilev@cern.ch>
Date: Thu, 9 Feb 2017 10:44:32 +0100
Subject: [PATCH] Revert "Handle TSelectorCint properly by invoking ShowMembers
 on the interpreted selector"

This reverts commit 04178a2807c272dc8ee7866eb074470ffc2e05e2.

This is not needed anymore because cling can bridge well compiled and interpreted worlds.
---
 .../src/TOutputListSelectorDataMap.cxx        | 40 ++-----------------
 1 file changed, 4 insertions(+), 36 deletions(-)

diff --git a/proof/proofplayer/src/TOutputListSelectorDataMap.cxx b/proof/proofplayer/src/TOutputListSelectorDataMap.cxx
index 2c4156e1fab..d4751068ae7 100644
--- a/proof/proofplayer/src/TOutputListSelectorDataMap.cxx
+++ b/proof/proofplayer/src/TOutputListSelectorDataMap.cxx
@@ -27,7 +27,6 @@ output list.
 #include "TMemberInspector.h"
 #include "TProofDebug.h"
 #include "TSelector.h"
-#include "TSelectorCint.h"
 
 #include <cstddef>
 
@@ -228,20 +227,7 @@ Bool_t TOutputListSelectorDataMap::Init(TSelector* sel)
    fMap->SetOwner();
 
    TCollectDataMembers cdm(*this);
-   TClass* cl = sel->IsA();
-   if (cl && cl->InheritsFrom(TSelectorCint::Class())) {
-      // we don't want to set TSelectorCint's data members, but
-      // the data members that it represents!
-      TSelectorCint* selCINT = dynamic_cast<TSelectorCint*>(sel);
-      if (selCINT) {
-         cl = selCINT->GetInterpretedClass();
-         sel = selCINT->GetInterpretedSelector();
-      } else {
-         cl = 0;
-         Error("Init", "failed to get TSelectorCint interpreted class!");
-      }
-   }
-   if (!cl || (cl && !cl->CallShowMembers(sel, cdm))) {
+   if (!sel->IsA()->CallShowMembers(sel, cdm, parent)) {
       // failed to map
       PDB(kOutput,1) Warning("Init","Failed to determine mapping!");
       return kFALSE;
@@ -289,27 +275,9 @@ Bool_t TOutputListSelectorDataMap::SetDataMembers(TSelector* sel) const
    Bool_t res = kFALSE;
    // Set fSelector's data members
    TSetSelDataMembers ssdm(*this, fMap, output);
-   TClass* cl = sel->IsA();
-   if (cl) {
-      if (cl->InheritsFrom(TSelectorCint::Class())) {
-         // we don't want to set TSelectorCint's data members, but
-         // the data members that it represents!
-         TSelectorCint* selCINT = dynamic_cast<TSelectorCint*>(sel);
-         if (selCINT) {
-            cl = selCINT->GetInterpretedClass();
-            sel = selCINT->GetInterpretedSelector();
-         } else {
-            cl = 0;
-            Error("Init", "failed to get TSelectorCint interpreted class!");
-            return kFALSE;
-         }
-      }
-      res = cl->CallShowMembers(sel, ssdm);
-      PDB(kOutput,1) Info("SetDataMembers()","%s, set %d data members.",
-                        (res ? "success" : "failure"), ssdm.GetNumSet());
-   } else {
-      PDB(kOutput,1) Warning("SetDataMembers","Failed to determine selector TClass!");
-   }
+   Bool_t res = sel->IsA()->CallShowMembers(sel, ssdm, parent);
+   PDB(kOutput,1) Info("SetDataMembers()","%s, set %d data members.",
+                       (res ? "success" : "failure"), ssdm.GetNumSet());
    return res;
 }
 
-- 
GitLab