1 #ifndef DataFormats_FWLite_MultiChainEvent_h 2 #define DataFormats_FWLite_MultiChainEvent_h 34 class ProductRegistry;
36 class BranchDescription;
47 class MultiProductGetter;
57 std::vector<std::string>
const& iFileNames2,
58 bool useSecFileMapSorted =
false);
64 bool to(Long64_t iIndex);
76 std::string const getBranchNameFor(std::type_info
const&,
char const*,
char const*,
char const*)
const override;
81 bool getByLabel(std::type_info
const&,
char const*,
char const*,
char const*,
void*)
const override;
85 operator bool()
const;
86 bool atEnd()
const override;
88 Long64_t
size()
const;
92 std::vector<edm::BranchDescription>
const& getBranchDescriptions()
const;
93 std::vector<std::string>
const& getProcessHistory()
const;
95 TFile*
getTFile()
const {
return event1_->getTFile(); }
98 Long64_t
eventIndex()
const {
return event1_->eventIndex(); }
105 Long64_t
fileIndex()
const override {
return event1_->eventIndex(); }
127 std::vector<edm::WrapperBase const*>& foundContainers,
128 std::vector<unsigned int>&
keys)
const;
136 bool toSec(Long64_t iIndex);
147 std::shared_ptr<internal::MultiProductGetter const>
getter_;
TFile * getTFileSec() const
Long64_t eventIndexSec() const
ChainEvent const * secondary() const
unsigned long long EventNumber_t
Long64_t secondaryFileIndex() const override
fwlite::Run const & getRun()
ChainEvent const * primary() const
unsigned int LuminosityBlockNumber_t
virtual bool getByLabel(std::type_info const &, char const *, char const *, char const *, void *) const =0
T const * getThinnedProduct(RefCore const &ref, unsigned int &thinnedKey, EDProductGetter const *prodGetter)
bool useSecFileMapSorted_
std::map< edm::EventID, Long64_t > sec_file_index_map
Long64_t fileIndex() const override
std::map< event_id_range, Long64_t > sec_file_range_index_map
sec_file_range_index_map secFileMapSorted_
static std::string const triggerResults("TriggerResults")
std::shared_ptr< internal::MultiProductGetter const > getter_
std::pair< edm::EventID, edm::EventID > event_id_range
std::shared_ptr< ChainEvent > event2_
static void throwProductNotFoundException(char const *where, errors::ErrorCodes error, BranchID const &bid)
Long64_t eventIndex() const
fwlite::LuminosityBlock const & getLuminosityBlock()
ParameterSet const & parameterSet(Provenance const &provenance)
std::shared_ptr< ChainEvent > event1_