1 #ifndef art_Framework_Principal_Event_h 2 #define art_Framework_Principal_Event_h 38 class BranchDescription;
39 class ProdToProdMapBuilder;
100 template <
typename PROD>
108 template <
typename PROD>
145 std::set<TypeLabel>
const& expectedProducts);
147 template <
typename T>
158 template <
typename PROD>
163 TypeID const tid{
typeid(PROD)};
164 if (
product.get() ==
nullptr) {
166 <<
"Event::put: A null unique_ptr was passed to 'put'.\n" 167 <<
"The pointer is of type " << tid <<
".\n" 168 <<
"The specified productInstanceName was '" << productInstanceName
173 auto wp = std::make_unique<Wrapper<PROD>>(std::move(
product));
179 if (!result.second) {
182 <<
"Event::put: Attempt to put multiple products with the\n" 183 <<
" following description onto the Event.\n" 184 <<
" Products must be unique per Event.\n" 186 << pd << rule(
'=') <<
'\n';
189 return pd.productID();
EDProductGetter const * productGetter(ProductID const) const
bool getProcessParameterSet(std::string const &processName, fhicl::ParameterSet &ps) const
SubRunNumber_t subRun() const
PROD const * getPointerByLabel(InputTag const &tag) const
Timestamp const & time() const
ProcessHistory const & processHistory() const
Run const & getRun() const
bool get(SelectorBase const &, Handle< PROD > &result) const
EventAuxiliary::ExperimentType experimentType() const
SubRun const & getSubRun() const
ProductID put(std::unique_ptr< PROD > &&product)
std::size_t getView(std::string const &moduleLabel, std::string const &productInstanceName, std::vector< ELEMENT const * > &result) const
void getMany(SelectorBase const &, std::vector< Handle< PROD >> &results) const
static RangeSet invalid()
History const & history() const
EventPrincipal const & eventPrincipal_
EventAuxiliary const & aux_
IDNumber_t< Level::SubRun > SubRunNumber_t
void getManyByType(std::vector< Handle< PROD >> &results) const
EventNumber_t event() const
SubRunNumber_t subRun() const
EventNumber_t event() const
std::unique_ptr< SubRun const > const subRun_
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
T product(std::vector< T > dims)
bool getByLabel(std::string const &label, std::string const &productInstanceName, Handle< PROD > &result) const
IDNumber_t< Level::Event > EventNumber_t
TypeLabelMap & putProducts()
ProcessHistoryID const & processHistoryID() const
Service to store calibration data products (CDP) in the SQLite3 metadatabase of a file...
void commit(EventPrincipal &, bool checkPutProducts, std::set< TypeLabel > const &expectedProducts)
BranchDescription const & getProductDescription(TypeID const &type, std::string const &productInstanceName) const
bool removeCachedProduct(Handle< PROD > &h) const
DataViewImpl(DataViewImpl const &)=delete
ExperimentType experimentType() const
ValidHandle< PROD > getValidHandle(InputTag const &tag) const
bool getByToken(ProductToken< PROD > const &token, Handle< PROD > &result) const
void checkPutProducts(bool checkProducts, std::set< TypeLabel > const &expectedProducts, TypeLabelMap const &putProducts)
Event(EventPrincipal const &ep, ModuleDescription const &md, cet::exempt_ptr< Consumer > consumer, RangeSet const &rs)
EventID const & id() const
IDNumber_t< Level::Run > RunNumber_t