Go to the documentation of this file. 1 #ifndef DataFormats_Common_RefHolder__h
2 #define DataFormats_Common_RefHolder__h
18 class RefHolder :
public RefHolderBase {
26 ProductID
id()
const override;
27 size_t key()
const override;
73 RefHolder const*
h(dynamic_cast<RefHolder const*>(&rhs));
74 return h && (
getRef() ==
h->getRef());
79 RefHolder*
h = dynamic_cast<RefHolder*>(&fillme);
80 bool conversion_worked = (
h !=
nullptr);
81 if (conversion_worked)
85 return conversion_worked;
95 return ref_.productGetter();
111 if (iToType ==
typeid(contained_type)) {
std::unique_ptr< RefVectorHolderBase > makeVectorHolder() const override
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
bool isAvailable() const override
void const * pointerToBase(std::type_info const &baseTypeInfo, T const *address)
RefHolderBase * clone() const override
REF const & getRef() const
void swap(edm::DataFrameContainer &lhs, edm::DataFrameContainer &rhs)
void const * pointerToType(std::type_info const &iToType) const override
void setRef(REF const &r)
#define CMS_CLASS_VERSION(_version_)
bool fillRefIfMyTypeMatches(RefHolderBase &fillme, std::string &msg) const override
helper::MatcherGetRef< C >::ref_type getRef(const Handle< C > &c, size_t k)
bool isEqualTo(RefHolderBase const &rhs) const override
bool isTransient() const override
EDProductGetter const * productGetter() const override
Container::value_type value_type
def template(fileName, svg, replaceme="REPLACEME")
ProductID id() const override
void swap(RefHolder &other)
size_t key() const override