1 #ifndef DataFormats_Common_IndirectHolder_h 2 #define DataFormats_Common_IndirectHolder_h 41 T const*
getPtr()
const override;
43 size_t key()
const override;
47 std::unique_ptr<RefHolderBase>
holder()
const override;
100 return helper_->template getPtr<T>();
103 template <
typename T>
108 template <
typename T>
113 template <
typename T>
118 template <
typename T>
124 template <
typename T>
129 template <
typename T>
131 return std::unique_ptr<RefHolderBase>(
helper_->
clone());
135 template <
typename T>
147 namespace reftobase {
148 template <
typename T>
151 std::shared_ptr<RefVectorHolderBase> sp(p.release());
BaseHolder< T > * clone() const override
FWCore Framework interface EventSetupRecordImplementation h
Helper function to determine trigger accepts.
virtual EDProductGetter const * productGetter() const =0
virtual ProductID id() const =0
size_t key() const override
std::unique_ptr< RefHolderBase > holder() const override
#define CMS_CLASS_VERSION(_version_)
virtual std::unique_ptr< RefVectorHolderBase > makeVectorHolder() const =0
virtual bool isEqualTo(RefHolderBase const &rhs) const =0
~IndirectHolder() override
ProductID id() const override
IndirectHolder(std::unique_ptr< U > p)
bool isEqualTo(BaseHolder< T > const &rhs) const override
EDProductGetter const * productGetter() const override
T const * getPtr() const override
IndirectHolder & operator=(IndirectHolder const &rhs)
virtual size_t key() const =0
void swap(edm::DataFrameContainer &lhs, edm::DataFrameContainer &rhs)
std::unique_ptr< BaseVectorHolder< T > > makeVectorHolder() const override
bool fillRefIfMyTypeMatches(RefHolderBase &fillme, std::string &msg) const override
def template(fileName, svg, replaceme="REPLACEME")
void swap(IndirectHolder &other)
bool isAvailable() const override
virtual bool isAvailable() const =0
virtual bool fillRefIfMyTypeMatches(RefHolderBase &ref, std::string &msg) const =0
virtual RefHolderBase * clone() const =0
virtual bool isTransient() const =0
bool isTransient() const override