CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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 public:
32  FWSimpleProxyBuilder(const std::type_info& iType);
33  ~FWSimpleProxyBuilder() override;
34 
35  // ---------- const member functions ---------------------
36 
37  // ---------- static member functions --------------------
39  static std::string typeOfBuilder();
40 
41  // ---------- member functions ---------------------------
42 
43 protected:
45  void build(const FWEventItem* iItem, TEveElementList* product, const FWViewContext*) override;
47  void buildViewType(const FWEventItem* iItem,
48  TEveElementList* product,
49  FWViewType::EType viewType,
50  const FWViewContext*) override;
51 
52  //called once for each item in collection, the void* points to the
53  // object properly offset in memory
54  virtual void build(const void*, unsigned int iIndex, TEveElement& iItemHolder, const FWViewContext*) = 0;
55  virtual void buildViewType(
56  const void*, unsigned int iIndex, TEveElement& iItemHolder, FWViewType::EType, const FWViewContext*) = 0;
57 
58  void clean() override;
60 
61 public:
62  FWSimpleProxyBuilder(const FWSimpleProxyBuilder&) = delete; // stop default
63 
64  const FWSimpleProxyBuilder& operator=(const FWSimpleProxyBuilder&) = delete; // stop default
65 private:
66  virtual void itemChangedImp(const FWEventItem*);
67 
68  bool visibilityModelChanges(const FWModelId&, TEveElement*, FWViewType::EType, const FWViewContext*) override;
69 
70  // ---------- member data --------------------------------
71 };
72 
73 #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 *)