Logo ROOT  
Reference Guide
REveDataSimpleProxyBuilderTemplate.hxx
Go to the documentation of this file.
1 // @(#)root/eve7:$Id$
2 // Authors: Matevz Tadel & Alja Mrak-Tadel: 2020
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2020, 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_REveDataProxySimpleBuilderTemplate
13 #define ROOT7_REveDataProxySimpleBuilderTemplate
14 
16 
17 
18 namespace ROOT {
19 namespace Experimental {
20 
21 template <typename T>
23 
24 public:
26  {
27  }
28 
29 protected:
31  void Build(const void *iData, int index, REveElement *itemHolder, const REveViewContext *context) override
32  {
33  if(iData) {
34  Build(*reinterpret_cast<const T*> (iData), index, itemHolder, context);
35  }
36  }
37 
38  virtual void Build(const T & /*iData*/, int /*index*/, REveElement * /*itemHolder*/, const REveViewContext * /*context*/)
39  {
40  throw std::runtime_error("virtual Build(const T&, int, REveElement&, const REveViewContext*) not implemented by inherited class.");
41  }
42 
44  void BuildViewType(const void *iData, int index, REveElement *itemHolder, std::string viewType, const REveViewContext *context) override
45  {
46  if(iData) {
47  BuildViewType(*reinterpret_cast<const T*> (iData), index, itemHolder, viewType, context);
48  }
49  }
50 
51  virtual void BuildViewType(const T & /*iData*/, int /*index*/, REveElement * /*itemHolder*/, std::string /*viewType*/, const REveViewContext * /*context*/)
52  {
53  throw std::runtime_error("virtual BuildViewType(const T&, int, REveElement&, const REveViewContext*) not implemented by inherited class.");
54  }
55 
56 private:
58 
60 };
61 
62 } // namespace Experimental
63 } // namespace ROOT
64 
65 #endif
ROOT::Experimental::REveViewContext
Definition: REveViewContext.hxx:21
ROOT::Experimental::REveDataSimpleProxyBuilderTemplate::REveDataSimpleProxyBuilderTemplate
REveDataSimpleProxyBuilderTemplate(const REveDataSimpleProxyBuilderTemplate &)
ROOT::Experimental::REveDataSimpleProxyBuilderTemplate::Build
void Build(const void *iData, int index, REveElement *itemHolder, const REveViewContext *context) override
Definition: REveDataSimpleProxyBuilderTemplate.hxx:31
ROOT::Experimental::REveDataSimpleProxyBuilder::BuildViewType
void BuildViewType(const REveDataCollection *iCollection, REveElement *product, std::string viewType, const REveViewContext *) override
Definition: REveDataSimpleProxyBuilder.cxx:85
ROOT::Experimental::REveDataSimpleProxyBuilderTemplate::BuildViewType
void BuildViewType(const void *iData, int index, REveElement *itemHolder, std::string viewType, const REveViewContext *context) override
Definition: REveDataSimpleProxyBuilderTemplate.hxx:44
REveDataSimpleProxyBuilder.hxx
ROOT::Experimental::REveDataSimpleProxyBuilderTemplate::BuildViewType
virtual void BuildViewType(const T &, int, REveElement *, std::string, const REveViewContext *)
Definition: REveDataSimpleProxyBuilderTemplate.hxx:51
ROOT::Experimental::REveElement
Definition: REveElement.hxx:41
ROOT::Experimental::REveDataSimpleProxyBuilderTemplate::operator=
const REveDataSimpleProxyBuilderTemplate & operator=(const REveDataSimpleProxyBuilderTemplate &)
ROOT::Experimental::REveDataSimpleProxyBuilderTemplate::Build
virtual void Build(const T &, int, REveElement *, const REveViewContext *)
Definition: REveDataSimpleProxyBuilderTemplate.hxx:38
ROOT::Experimental::REveDataSimpleProxyBuilderTemplate
Definition: REveDataSimpleProxyBuilderTemplate.hxx:22
ROOT::Experimental::REveDataProxyBuilderBase::Build
void Build()
Definition: REveDataProxyBuilderBase.cxx:68
ROOT::Experimental::REveDataSimpleProxyBuilder
Definition: REveDataSimpleProxyBuilder.hxx:24
ROOT::Math::Chebyshev::T
double T(double x)
Definition: ChebyshevPol.h:34
ROOT::Experimental::REveDataSimpleProxyBuilderTemplate::Build
void Build(const REveDataCollection *iCollection, REveElement *product, const REveViewContext *) override
Definition: REveDataSimpleProxyBuilder.cxx:50
ROOT::Experimental::REveDataSimpleProxyBuilderTemplate::BuildViewType
void BuildViewType(const REveDataCollection *iCollection, REveElement *product, std::string viewType, const REveViewContext *) override
Definition: REveDataSimpleProxyBuilder.cxx:85
ROOT
VSD Structures.
Definition: StringConv.hxx:21
ROOT::Experimental::REveDataSimpleProxyBuilderTemplate::REveDataSimpleProxyBuilderTemplate
REveDataSimpleProxyBuilderTemplate()
Definition: REveDataSimpleProxyBuilderTemplate.hxx:25