Logo ROOT  
Reference Guide
REveDataSimpleProxyBuilderTemplate.hxx
Go to the documentation of this file.
1#ifndef ROOT7_REveDataProxySimpleBuilderTemplate
2#define ROOT7_REveDataProxySimpleBuilderTemplate
3
4
6
7
8namespace ROOT {
9namespace Experimental {
10
11template <typename T>
13
14public:
16 {
17 }
18
19protected:
21 void Build(const void *iData, int index, REveElement *itemHolder, const REveViewContext *context) override
22 {
23 if(iData) {
24 Build(*reinterpret_cast<const T*> (iData), index, itemHolder, context);
25 }
26 }
27
28 virtual void Build(const T & /*iData*/, int /*index*/, REveElement * /*itemHolder*/, const REveViewContext * /*context*/)
29 {
30 throw std::runtime_error("virtual Build(const T&, int, REveElement&, const REveViewContext*) not implemented by inherited class.");
31 }
32
34 void BuildViewType(const void *iData, int index, REveElement *itemHolder, std::string viewType, const REveViewContext *context) override
35 {
36 if(iData) {
37 BuildViewType(*reinterpret_cast<const T*> (iData), index, itemHolder, viewType, context);
38 }
39 }
40
41 virtual void BuildViewType(const T & /*iData*/, int /*index*/, REveElement * /*itemHolder*/, std::string /*viewType*/, const REveViewContext * /*context*/)
42 {
43 throw std::runtime_error("virtual BuildViewType(const T&, int, REveElement&, const REveViewContext*) not implemented by inherited class.");
44 }
45
46private:
48
50};
51
52
53} // namespace Experimental
54} // namespace ROOT
55#endif
void Build(const void *iData, int index, REveElement *itemHolder, const REveViewContext *context) override
void BuildViewType(const void *iData, int index, REveElement *itemHolder, std::string viewType, const REveViewContext *context) override
virtual void BuildViewType(const T &, int, REveElement *, std::string, const REveViewContext *)
REveDataSimpleProxyBuilderTemplate(const REveDataSimpleProxyBuilderTemplate &)
virtual void Build(const T &, int, REveElement *, const REveViewContext *)
const REveDataSimpleProxyBuilderTemplate & operator=(const REveDataSimpleProxyBuilderTemplate &)
void BuildViewType(const REveDataCollection *iCollection, REveElement *product, std::string viewType, const REveViewContext *) override
double T(double x)
Definition: ChebyshevPol.h:34
VSD Structures.
Definition: StringConv.hxx:21