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 public:
34  virtual ~FWItemAccessorFactory();
35 
36  // ---------- const member functions ---------------------
37  std::shared_ptr<FWItemAccessorBase> accessorFor(const TClass *) const;
38  static bool hasAccessor(const TClass *iClass, std::string &result);
39  static bool hasTVirtualCollectionProxy(const TClass *iClass);
40  static bool hasMemberTVirtualCollectionProxy(const TClass *iClass, TClass *&oMember, size_t &oOffset);
41 
42  static bool classAccessedAsCollection(const TClass *);
43 
44  // ---------- static member functions --------------------
45 
46  // ---------- member functions ---------------------------
47 
48 private:
49  FWItemAccessorFactory(const FWItemAccessorFactory &) = delete; // stop default
50 
51  const FWItemAccessorFactory &operator=(const FWItemAccessorFactory &) = delete; // stop default
52 
53  // ---------- member data --------------------------------
54 };
55 
56 #endif
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)
const FWItemAccessorFactory & operator=(const FWItemAccessorFactory &)=delete