Logo ROOT   6.21/01
Reference Guide
REveDataSimpleProxyBuilder.hxx
Go to the documentation of this file.
1 // @(#)root/eve7:$Id$
2 // Authors: Matevz Tadel & Alja Mrak-Tadel, 2019
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2019, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT7_REveDataProxySimpleBuilder
13 #define ROOT7_REveDataProxySimpleBuilder
14 
16 
17 namespace ROOT {
18 namespace Experimental {
19 
20 class REveDataCollection;
21 class REveElement;
22 
24 {
25 public:
26  REveDataSimpleProxyBuilder(const std::string &type);
28 
29 protected:
30  void Build(const REveDataCollection* iCollection, REveElement* product, const REveViewContext*) override;
31 
32  void BuildViewType(const REveDataCollection* iCollection, REveElement* product, std::string viewType, const REveViewContext*) override;
33 
34  // Called once for every item in collection, the void* points to the
35  // item properly offset in memory.
36  virtual void Build(const void* data, int index, REveElement* iCollectionHolder, const REveViewContext*) = 0;
37  virtual void BuildViewType(const void* data, int index, REveElement* iCollectionHolder, std::string viewType, const REveViewContext*) = 0;
38 
39  void Clean() override;
40 
41 private:
43 
45 
46  bool VisibilityModelChanges(int idx, REveElement*, const REveViewContext*) override;
47 
48 };
49 
50 } // namespace Experimental
51 } // namespace ROOT
52 
53 #endif
Returns the available number of logical cores.
Definition: StringConv.hxx:21
const REveDataSimpleProxyBuilder & operator=(const REveDataSimpleProxyBuilder &)
void BuildViewType(const REveDataCollection *iCollection, REveElement *product, std::string viewType, const REveViewContext *) override
int type
Definition: TGX11.cxx:120
bool VisibilityModelChanges(int idx, REveElement *, const REveViewContext *) override