1 #ifndef DataFormats_Common_WrapperBase_h
2 #define DataFormats_Common_WrapperBase_h
26 std::vector<void const*>& view,
29 void setPtr(std::type_info
const& iToType,
31 void const*& oPtr)
const;
34 std::vector<unsigned long>
const& iIndicies,
35 std::vector<void const*>& oPtr)
const;
70 std::vector<void const*>& pointers,
72 virtual void do_setPtr(std::type_info
const& iToType,
74 void const*& oPtr)
const = 0;
77 std::vector<unsigned long>
const& iIndicies,
78 std::vector<void const*>& oPtr)
const = 0;
virtual bool isMergeable_() const
bool mergeProduct(WrapperBase const *newProduct)
std::type_info const & dynamicTypeInfo() const
void setPtr(std::type_info const &iToType, unsigned long iIndex, void const *&oPtr) const
virtual void do_fillPtrVector(std::type_info const &iToType, std::vector< unsigned long > const &iIndicies, std::vector< void const * > &oPtr) const =0
virtual bool mergeProduct_(WrapperBase const *)
virtual void do_setPtr(std::type_info const &iToType, unsigned long iIndex, void const *&oPtr) const =0
virtual bool isPresent_() const
virtual bool isProductEqual_(WrapperBase const *) const
bool sameType(WrapperBase const &other) const
virtual std::type_info const & wrappedTypeInfo_() const =0
void fillPtrVector(std::type_info const &iToType, std::vector< unsigned long > const &iIndicies, std::vector< void const * > &oPtr) const
std::shared_ptr< reftobase::RefVectorHolderBase > helper_vector_ptr
virtual void do_fillView(ProductID const &id, std::vector< void const * > &pointers, helper_vector_ptr &helpers) const =0
std::type_info const & wrappedTypeInfo() const
void fillView(ProductID const &id, std::vector< void const * > &view, helper_vector_ptr &helpers) const
virtual bool hasIsProductEqual_() const
virtual std::type_info const & dynamicTypeInfo_() const =0
bool hasIsProductEqual() const
bool isProductEqual(WrapperBase const *newProduct) const