|
|
Go to the documentation of this file.
29 orderedProcessHistoryIDs_(),
31 initialNumberOfEventsToSkip_(
pset.getUntrackedParameter<unsigned
int>(
"skipEvents")),
32 noEventSort_(
pset.getUntrackedParameter<
bool>(
"noEventSort")),
33 treeCacheSize_(noEventSort_ ?
pset.getUntrackedParameter<unsigned
int>(
"cacheSize") : 0
U),
35 usingGoToEvent_(
false),
36 enablePrefetching_(
false),
37 enforceGUIDInFileName_(
pset.getUntrackedParameter<
bool>(
"enforceGUIDInFileName")) {
75 std::shared_ptr<FileBlock> fileBlock;
108 fileBlock = std::make_shared<FileBlock>();
112 fileBlock =
rootFile()->createFileBlock();
139 return std::make_shared<RootFile>(
fileNames()[0],
163 currentIndexIntoFile,
192 if (!mergeInfo.empty()) {
210 if (!mergeInfo.empty()) {
290 if (!atEnd &&
offset == 0) {
297 if (
offset > 0 || atEnd) {
342 rootFile()->setPosition(originalPosition);
367 bool closedOriginalFile =
false;
372 bool foundIt =
false;
378 closedOriginalFile =
true;
387 if (closedOriginalFile) {
391 rootFile()->setPosition(originalPosition);
404 desc.addUntracked<
unsigned int>(
"skipEvents", 0
U)
405 ->setComment(
"Skip the first 'skipEvents' events that otherwise would have been processed.");
406 desc.addUntracked<
bool>(
"noEventSort",
true)
408 "True: Process runs, lumis and events in the order they appear in the file (but see notes 1 and 2).\n"
409 "False: Process runs, lumis and events in each file in numerical order (run#, lumi#, event#) (but see note "
411 "Note 1: Events within the same lumi will always be processed contiguously.\n"
412 "Note 2: Lumis within the same run will always be processed contiguously.\n"
413 "Note 3: Any sorting occurs independently in each input file (no sorting across input files).");
415 ->setComment(
"Size of ROOT TTree prefetch cache. Affects performance.");
419 "'strict': Branches in each input file must match those in the first file.\n"
420 "'permissive': Branches in each input file may be any subset of those in the first file.");
421 desc.addUntracked<
bool>(
"enforceGUIDInFileName",
false)
423 "True: file name part is required to be equal to the GUID of the file\n"
424 "False: file name can be anything");
432 if (!
rootFile()->wasLastEventJustRead()) {
446 if (!
rootFile()->wasFirstEventJustRead()) {
void initFile_(bool skipBadFiles) override
edm::propagate_const< std::shared_ptr< FileBlock > > fb_
static const std::string input
bool labelRawDataLikeMC() const
ProductRegistry & productRegistryUpdate()
static void fillDescription(ParameterSetDescription &desc)
void updateFromInput(ProductList const &other)
size_t goToFileSequenceOffset_
std::shared_ptr< DuplicateChecker const > duplicateChecker() const
def create(alignables, pedeDump, additionalData, outputFile, config)
unsigned int nStreams() const
LuminosityBlockNumber_t luminosityBlock() const
unsigned int LuminosityBlockNumber_t
bool skipBadFiles() const
int remainingEvents() const
int remainingLuminosityBlocks() const
edm::propagate_const< std::shared_ptr< DuplicateChecker > > duplicateChecker_
ProcessHistoryRegistry & processHistoryRegistryForUpdate()
RunHelperBase * runHelper()
static const StorageFactory * get(void)
std::shared_ptr< EventSkipperByID const > eventSkipperByID() const
void skipEvents(int offset)
void skipEventsAtBeginning(int offset)
void stagein(const std::string &url) const
~RootPrimaryFileSequence() override
unsigned long long EventNumber_t
unsigned const int defaultCacheSize
size_t skipToFileSequenceNumber_
unsigned int treeCacheSize_
int treeMaxVirtualSize() const
ProcessingController::ForwardState forwardState() const
RootPrimaryFileSequence(ParameterSet const &pset, PoolSource &input, InputFileCatalog const &catalog)
InputSource::ItemType getNextItemType(RunNumber_t &run, LuminosityBlockNumber_t &lumi, EventNumber_t &event)
EventNumber_t event() const
void closeFile_() override
int initialNumberOfEventsToSkip_
bool dropDescendants() const
static void fillDescription(ParameterSetDescription &desc)
BranchDescription::MatchMode branchesMustMatch_
static void fillDescription(ParameterSetDescription &desc)
bool enforceGUIDInFileName_
std::string merge(ProductRegistry const &other, std::string const &fileName, BranchDescription::MatchMode branchesMustMatch=BranchDescription::Permissive)
ProductSelectorRules const & productSelectorRules() const
bool bypassVersionCheck() const
std::vector< ProcessHistoryID > orderedProcessHistoryIDs_
int skipToOffsetInFinalFile_
bool goToEvent(EventID const &eventID)
RootFileSharedPtr makeRootFile(std::shared_ptr< InputFile > filePtr) override
std::shared_ptr< FileBlock > readFile_()
ProcessingController::ReverseState reverseState() const