CMS 3D CMS Logo

FWItemAccessorFactory.h
Go to the documentation of this file.
1 #ifndef Fireworks_Core_FWItemAccessorFactory_h
2 #define Fireworks_Core_FWItemAccessorFactory_h
3 // -*- C++ -*-
4 //
5 // Package: Core
6 // Class : FWItemAccessorFactory
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Sat Oct 18 14:47:03 EDT 2008
19 //
20 
21 // system include files
22 #include <memory>
23 #include <string>
24 
25 // user include files
26 
27 // forward declarations
28 class FWItemAccessorBase;
29 class TClass;
30 
32 
33 public:
35  virtual ~FWItemAccessorFactory();
36 
37  // ---------- const member functions ---------------------
38  std::shared_ptr<FWItemAccessorBase> accessorFor(const TClass*) const;
39  static bool hasAccessor(const TClass *iClass, std::string &result);
40  static bool hasTVirtualCollectionProxy(const TClass *iClass);
41  static bool hasMemberTVirtualCollectionProxy(const TClass *iClass,
42  TClass *&oMember,
43  size_t& oOffset);
44 
45  static bool classAccessedAsCollection(const TClass*);
46 
47  // ---------- static member functions --------------------
48 
49  // ---------- member functions ---------------------------
50 
51 private:
52  FWItemAccessorFactory(const FWItemAccessorFactory&); // stop default
53 
54  const FWItemAccessorFactory& operator=(const FWItemAccessorFactory&); // stop default
55 
56  // ---------- member data --------------------------------
57 
58 };
59 
60 #endif
const FWItemAccessorFactory & operator=(const FWItemAccessorFactory &)
static bool classAccessedAsCollection(const TClass *)
std::shared_ptr< FWItemAccessorBase > accessorFor(const TClass *) const
static bool hasTVirtualCollectionProxy(const TClass *iClass)
static bool hasMemberTVirtualCollectionProxy(const TClass *iClass, TClass *&oMember, size_t &oOffset)
static bool hasAccessor(const TClass *iClass, std::string &result)