1 #ifndef DataFormats_Common_BaseHolder_h
2 #define DataFormats_Common_BaseHolder_h
37 virtual T const*
getPtr()
const = 0;
42 virtual size_t key()
const = 0;
56 std::string&
msg)
const = 0;
57 virtual std::auto_ptr<RefHolderBase>
holder()
const = 0;
64 virtual void const *
product()
const = 0;
103 template <
typename T>
109 template <
typename T>
116 template <
typename T>
virtual BaseHolder< T > * clone() const =0
virtual std::auto_ptr< RefVectorHolderBase > makeVectorBaseHolder() const =0
virtual bool isEqualTo(BaseHolder< T > const &rhs) const =0
virtual T const * getPtr() const =0
virtual bool isAvailable() const =0
#define CMS_CLASS_VERSION(_version_)
virtual void const * product() const =0
virtual std::auto_ptr< BaseVectorHolder< T > > makeVectorHolder() const =0
virtual size_t key() const =0
virtual ProductID id() const =0
virtual std::auto_ptr< RefHolderBase > holder() const =0
virtual bool fillRefIfMyTypeMatches(RefHolderBase &fillme, std::string &msg) const =0
virtual EDProductGetter const * productGetter() const =0
virtual bool hasProductCache() const =0
BaseHolder & operator=(BaseHolder const &rhs)
void swap(BaseHolder< T > &lhs, BaseHolder< T > &rhs)