CMS 3D CMS Logo

FWSimpleProxyBuilder.h
Go to the documentation of this file.
1 #ifndef Fireworks_Core_FWSimpleProxyBuilder_h
2 #define Fireworks_Core_FWSimpleProxyBuilder_h
3 // -*- C++ -*-
4 //
5 // Package: Core
6 // Class : FWSimpleProxyBuilder
7 //
16 //
17 // Original Author: Chris Jones, AljaMrak-Tadel
18 // Created: Tue March 28 2 09:46:36 EST 2010
19 //
20 
21 // system include files
22 #include <typeinfo>
23 
24 // user include files
27 
28 // forward declarations
29 
31 
32 public:
33  FWSimpleProxyBuilder(const std::type_info& iType);
34  ~FWSimpleProxyBuilder() override;
35 
36  // ---------- const member functions ---------------------
37 
38  // ---------- static member functions --------------------
40  static std::string typeOfBuilder();
41 
42  // ---------- member functions ---------------------------
43 
44 protected:
46  void build(const FWEventItem* iItem, TEveElementList* product, const FWViewContext*) override;
48  void buildViewType(const FWEventItem* iItem, TEveElementList* product, FWViewType::EType viewType, const FWViewContext*) override;
49 
50  //called once for each item in collection, the void* points to the
51  // object properly offset in memory
52  virtual void build(const void*, unsigned int iIndex, TEveElement& iItemHolder, const FWViewContext*) = 0;
53  virtual void buildViewType(const void*, unsigned int iIndex, TEveElement& iItemHolder, FWViewType::EType, const FWViewContext*) = 0;
54 
55  void clean() override;
57 
58 private:
59  FWSimpleProxyBuilder(const FWSimpleProxyBuilder&) = delete; // stop default
60 
61  const FWSimpleProxyBuilder& operator=(const FWSimpleProxyBuilder&) = delete; // stop default
62 
63  virtual void itemChangedImp(const FWEventItem*);
64 
65  bool visibilityModelChanges(const FWModelId&, TEveElement*, FWViewType::EType, const FWViewContext*) override;
66 
67 
68  // ---------- member data --------------------------------
69 };
70 
71 
72 #endif
virtual void buildViewType(const FWEventItem *iItem, TEveElementList *, FWViewType::EType, const FWViewContext *)
bool visibilityModelChanges(const FWModelId &, TEveElement *, FWViewType::EType, const FWViewContext *) override
FWSimpleProxyBuilder(const std::type_info &iType)
FWSimpleProxyHelper m_helper
void buildViewType(const FWEventItem *iItem, TEveElementList *product, FWViewType::EType viewType, const FWViewContext *) override
static std::string typeOfBuilder()
Used by the plugin system to determine how the proxy uses the data from FWEventItem.
const FWSimpleProxyBuilder & operator=(const FWSimpleProxyBuilder &)=delete
virtual void itemChangedImp(const FWEventItem *)