CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
FWItemAccessorBase.h
Go to the documentation of this file.
1 #ifndef Fireworks_Core_FWItemAccessorBase_h
2 #define Fireworks_Core_FWItemAccessorBase_h
3 // -*- C++ -*-
4 //
5 // Package: Core
6 // Class : FWItemAccessorBase
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Sat Oct 18 08:14:21 EDT 2008
19 //
20 
21 // system include files
22 #include <typeinfo>
23 
24 // user include files
25 
26 // forward declarations
27 class TClass;
28 namespace edm {
29  class EDProduct;
30  class ObjectWithDict;
31 }
32 
34 
35 public:
37  virtual ~FWItemAccessorBase();
38 
39  // ---------- const member functions ---------------------
40  virtual const void* modelData(int iIndex) const = 0;
41  virtual const void* data() const = 0;
42  virtual unsigned int size() const = 0;
43  virtual const TClass* modelType() const = 0;
44  virtual const TClass* type() const = 0;
45 
46  virtual bool isCollection() const = 0;
47 
49  //virtual std::string idForIndex(int iIndex) const;
50  // ---------- member functions ---------------------------
51  virtual void setData(const edm::ObjectWithDict& )=0;
52  virtual void reset() = 0;
53 
54 private:
55  //FWItemAccessorBase(const FWItemAccessorBase&); // stop default
56 
57  //const FWItemAccessorBase& operator=(const FWItemAccessorBase&); // stop default
58 
59  // ---------- member data --------------------------------
60 
61 };
62 
63 
64 #endif
virtual const TClass * modelType() const =0
virtual const void * data() const =0
virtual void setData(const edm::ObjectWithDict &)=0
override if id of an object should be different than the index
virtual const void * modelData(int iIndex) const =0
virtual bool isCollection() const =0
virtual const TClass * type() const =0
virtual void reset()=0
virtual unsigned int size() const =0