Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:03:55

0001 /*----------------------------------------------------------------------
0002 
0003 ----------------------------------------------------------------------*/
0004 
0005 #include "DataFormats/Common/interface/WrapperBase.h"
0006 #include "DataFormats/Provenance/interface/ProductID.h"
0007 #include <cassert>
0008 
0009 namespace edm {
0010   WrapperBase::WrapperBase() : ViewTypeChecker() {}
0011 
0012   WrapperBase::~WrapperBase() {}
0013 
0014   void WrapperBase::fillView(ProductID const& id,
0015                              std::vector<void const*>& pointers,
0016                              FillViewHelperVector& helpers) const {
0017     // This should never be called with non-empty arguments, or an
0018     // invalid ID; any attempt to do so is an indication of a coding
0019     // error.
0020     assert(id.isValid());
0021     assert(pointers.empty());
0022     assert(helpers.empty());
0023 
0024     do_fillView(id, pointers, helpers);
0025   }
0026 
0027   void WrapperBase::setPtr(std::type_info const& iToType, unsigned long iIndex, void const*& oPtr) const {
0028     do_setPtr(iToType, iIndex, oPtr);
0029   }
0030 
0031   void WrapperBase::fillPtrVector(std::type_info const& iToType,
0032                                   std::vector<unsigned long> const& iIndicies,
0033                                   std::vector<void const*>& oPtr) const {
0034     do_fillPtrVector(iToType, iIndicies, oPtr);
0035   }
0036 
0037 }  // namespace edm