Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:10:40

0001 // @(#)root/eve7:$Id$
0002 // Authors: Matevz Tadel & Alja Mrak-Tadel: 2020
0003 
0004 /*************************************************************************
0005  * Copyright (C) 1995-2020, Rene Brun and Fons Rademakers.               *
0006  * All rights reserved.                                                  *
0007  *                                                                       *
0008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0010  *************************************************************************/
0011 
0012 #ifndef ROOT7_REveTableProxyBuilder
0013 #define ROOT7_REveTableProxyBuilder
0014 
0015 #include <ROOT/REveDataProxyBuilderBase.hxx>
0016 
0017 namespace ROOT {
0018 namespace Experimental {
0019 
0020 class REveDataTable;
0021 class REveTableInfo;
0022 
0023 class REveTableProxyBuilder : public REveDataProxyBuilderBase
0024 {
0025 private:
0026    REveDataTable* fTable; // cached
0027 
0028 protected:
0029    void Clean() override;
0030 
0031 public:
0032    REveTableProxyBuilder();
0033    ~REveTableProxyBuilder() override;
0034 
0035    virtual bool WillHandleInteraction() const { return true; }
0036 
0037    using REveDataProxyBuilderBase::ModelChanges;
0038    void ModelChanges(const REveDataCollection::Ids_t&, REveDataProxyBuilderBase::Product* p) override;
0039 
0040    using REveDataProxyBuilderBase::Build;
0041    void Build() override;
0042 
0043    void SetCollection(REveDataCollection*) override;
0044    void ConfigChanged();
0045 };
0046 
0047 } // Experimental
0048 } // ROOT
0049 
0050 #endif