CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
edm::RootEmbeddedFileSequence Class Reference

#include <RootEmbeddedFileSequence.h>

Inheritance diagram for edm::RootEmbeddedFileSequence:
edm::RootInputFileSequence

Public Member Functions

void closeFile_ () override
 
void endJob ()
 
RootEmbeddedFileSequenceoperator= (RootEmbeddedFileSequence const &)=delete
 
bool readOneEvent (EventPrincipal &cache, size_t &fileNameHash, CLHEP::HepRandomEngine *, EventID const *id, bool recycleFiles)
 
bool readOneRandom (EventPrincipal &cache, size_t &fileNameHash, CLHEP::HepRandomEngine *, EventID const *, bool)
 
bool readOneRandomWithID (EventPrincipal &cache, size_t &fileNameHash, CLHEP::HepRandomEngine *, EventID const *id, bool)
 
bool readOneSequential (EventPrincipal &cache, size_t &fileNameHash, CLHEP::HepRandomEngine *, EventID const *, bool recycleFiles)
 
bool readOneSequentialWithID (EventPrincipal &cache, size_t &fileNameHash, CLHEP::HepRandomEngine *, EventID const *id, bool)
 
void readOneSpecified (EventPrincipal &cache, size_t &fileNameHash, SecondaryEventIDAndFileInfo const &id)
 
 RootEmbeddedFileSequence (ParameterSet const &pset, EmbeddedRootSource &input, InputFileCatalog const &catalog)
 
 RootEmbeddedFileSequence (RootEmbeddedFileSequence const &)=delete
 
void skipEntries (unsigned int offset)
 
 ~RootEmbeddedFileSequence () override
 
- Public Member Functions inherited from edm::RootInputFileSequence
bool containedInCurrentFile (RunNumber_t run, LuminosityBlockNumber_t lumi, EventNumber_t event) const
 
std::shared_ptr< BranchIDListHelper const > fileBranchIDListHelper () const
 
std::shared_ptr< ProductRegistry const > fileProductRegistry () const
 
RootInputFileSequenceoperator= (RootInputFileSequence const &)=delete
 
void readEvent (EventPrincipal &cache)
 
void readLuminosityBlock_ (LuminosityBlockPrincipal &lumiPrincipal)
 
std::shared_ptr< LuminosityBlockAuxiliaryreadLuminosityBlockAuxiliary_ ()
 
void readRun_ (RunPrincipal &runPrincipal)
 
std::shared_ptr< RunAuxiliaryreadRunAuxiliary_ ()
 
 RootInputFileSequence (ParameterSet const &pset, InputFileCatalog const &catalog)
 
 RootInputFileSequence (RootInputFileSequence const &)=delete
 
bool skipToItem (RunNumber_t run, LuminosityBlockNumber_t lumi, EventNumber_t event, size_t fileNameHash=0U, bool currentFileFirst=true)
 
virtual ~RootInputFileSequence ()
 

Static Public Member Functions

static void fillDescription (ParameterSetDescription &desc)
 

Private Member Functions

void initFile_ (bool skipBadFiles) override
 
RootFileSharedPtr makeRootFile (std::shared_ptr< InputFile > filePtr) override
 

Private Attributes

bool enablePrefetching_
 
bool enforceGUIDInFileName_
 
int eventsRemainingInFile_
 
bool(RootEmbeddedFileSequence::* fptr_ )(EventPrincipal &, size_t &, CLHEP::HepRandomEngine *, EventID const *, bool)
 
int initialNumberOfEventsToSkip_
 
EmbeddedRootSourceinput_
 
unsigned int maxFileSkips_
 
std::vector< ProcessHistoryIDorderedProcessHistoryIDs_
 
bool sameLumiBlock_
 
bool sequential_
 
unsigned int treeCacheSize_
 

Additional Inherited Members

- Protected Types inherited from edm::RootInputFileSequence
typedef std::shared_ptr< RootFileRootFileSharedPtr
 
- Protected Member Functions inherited from edm::RootInputFileSequence
bool atFirstFile () const
 
bool atLastFile () const
 
std::vector< FileCatalogItem > const & fileCatalogItems () const
 
std::vector< std::string > const & fileNames () const
 
std::vector< std::shared_ptr< IndexIntoFile > > const & indexesIntoFiles () const
 
void initFile (bool skipBadFiles)
 
void initTheFile (bool skipBadFiles, bool deleteIndexIntoFile, InputSource *input, char const *inputTypeName, InputType inputType)
 
std::string const & lfn () const
 
size_t lfnHash () const
 
std::string const & logicalFileName () const
 
bool noFiles () const
 
bool noMoreFiles () const
 
size_t numberOfFiles () const
 
std::shared_ptr< RootFile > & rootFile ()
 
std::shared_ptr< RootFile const > rootFile () const
 
size_t sequenceNumberOfFile () const
 
void setAtFileSequenceNumber (size_t offset)
 
void setAtFirstFile ()
 
void setAtNextFile ()
 
void setAtPreviousFile ()
 
void setIndexIntoFile (size_t index)
 
void setNoMoreFiles ()
 
bool skipToItemInNewFile (RunNumber_t run, LuminosityBlockNumber_t lumi, EventNumber_t event)
 
bool skipToItemInNewFile (RunNumber_t run, LuminosityBlockNumber_t lumi, EventNumber_t event, size_t fileNameHash)
 
bool usedFallback () const
 

Detailed Description

Definition at line 32 of file RootEmbeddedFileSequence.h.

Constructor & Destructor Documentation

◆ RootEmbeddedFileSequence() [1/2]

edm::RootEmbeddedFileSequence::RootEmbeddedFileSequence ( ParameterSet const &  pset,
EmbeddedRootSource input,
InputFileCatalog const &  catalog 
)
explicit

Definition at line 34 of file RootEmbeddedFileSequence.cc.

38  input_(input),
40  sequential_(pset.getUntrackedParameter<bool>("sequential", false)),
41  sameLumiBlock_(pset.getUntrackedParameter<bool>("sameLumiBlock", false)),
42  fptr_(nullptr),
44  // The default value provided as the second argument to the getUntrackedParameter function call
45  // is not used when the ParameterSet has been validated and the parameters are not optional
46  // in the description. This is currently true when PoolSource is the primary input source.
47  // The modules that use PoolSource as a SecSource have not defined their fillDescriptions function
48  // yet, so the ParameterSet does not get validated yet. As soon as all the modules with a SecSource
49  // have defined descriptions, the defaults in the getUntrackedParameterSet function calls can
50  // and should be deleted from the code.
51  initialNumberOfEventsToSkip_(pset.getUntrackedParameter<unsigned int>("skipEvents", 0U)),
52  treeCacheSize_(pset.getUntrackedParameter<unsigned int>("cacheSize", roottree::defaultCacheSize)),
53  enablePrefetching_(false),
54  enforceGUIDInFileName_(pset.getUntrackedParameter<bool>("enforceGUIDInFileName", false)),
55  maxFileSkips_(pset.getUntrackedParameter<unsigned int>("maxFileSkips", std::min(3_uz, numberOfFiles()))) {
56  if (noFiles()) {
58  << "RootEmbeddedFileSequence no input files specified for secondary input source.\n";
59  }
60  //
61  // The SiteLocalConfig controls the TTreeCache size and the prefetching settings.
63  if (pSLC.isAvailable()) {
64  if (treeCacheSize_ != 0U && pSLC->sourceTTreeCacheSize()) {
65  treeCacheSize_ = *(pSLC->sourceTTreeCacheSize());
66  }
67  enablePrefetching_ = pSLC->enablePrefetching();
68  }
69 
70  // Set the pointer to the function that reads an event.
71  if (sameLumiBlock_) {
72  if (sequential_) {
74  } else {
76  }
77  } else {
78  if (sequential_) {
80  } else {
82  }
83  }
84 
85  // For the secondary input source we do not stage in.
86  if (sequential_) {
87  // We open the first file
88  if (!atFirstFile()) {
90  initFile(false);
91  }
92  assert(rootFile());
93  rootFile()->setAtEventEntry(IndexIntoFile::invalidEntry);
94  if (!sameLumiBlock_) {
96  }
97  } else {
98  // We randomly choose the first file to open.
99  // We cannot use the random number service yet.
100  std::ifstream f("/dev/urandom");
101  unsigned int seed;
102  f.read(reinterpret_cast<char*>(&seed), sizeof(seed));
103  std::default_random_engine dre(seed);
104  std::uniform_int_distribution<int> distribution(0, numberOfFiles() - 1);
105  while (!rootFile() && badFilesSkipped_ < maxFileSkips_) {
106  int offset = distribution(dre);
109  if (not rootFile()) {
110  ++badFilesSkipped_;
111  }
112  }
113  }
114  if (rootFile()) {
115  input_.productRegistryUpdate().updateFromInput(rootFile()->productRegistry()->productList());
116  } else {
117  throw Exception(errors::FileOpenError) << "RootEmbeddedFileSequence::RootEmbeddedFileSequence(): "
118  << " input file retries exhausted.\n";
119  }
120  }

References cms::cuda::assert(), edm::RootInputFileSequence::atFirstFile(), enablePrefetching_, Exception, f, edm::errors::FileOpenError, fptr_, edm::RootInputFileSequence::initFile(), initialNumberOfEventsToSkip_, input_, edm::IndexIntoFile::invalidEntry, edm::Service< T >::isAvailable(), maxFileSkips_, edm::RootInputFileSequence::noFiles(), edm::errors::NoSecondaryFiles, edm::RootInputFileSequence::numberOfFiles(), hltrates_dqm_sourceclient-live_cfg::offset, edm::EmbeddedRootSource::productRegistryUpdate(), readOneRandom(), readOneRandomWithID(), readOneSequential(), readOneSequentialWithID(), edm::RootInputFileSequence::rootFile(), sameLumiBlock_, fileCollector::seed, sequential_, edm::RootInputFileSequence::setAtFileSequenceNumber(), edm::RootInputFileSequence::setAtFirstFile(), edm::EmbeddedRootSource::skipBadFiles(), skipEntries(), treeCacheSize_, mitigatedMETSequence_cff::U, and edm::ProductRegistry::updateFromInput().

◆ ~RootEmbeddedFileSequence()

edm::RootEmbeddedFileSequence::~RootEmbeddedFileSequence ( )
override

Definition at line 122 of file RootEmbeddedFileSequence.cc.

122 {}

◆ RootEmbeddedFileSequence() [2/2]

edm::RootEmbeddedFileSequence::RootEmbeddedFileSequence ( RootEmbeddedFileSequence const &  )
delete

Member Function Documentation

◆ closeFile_()

void edm::RootEmbeddedFileSequence::closeFile_ ( )
overridevirtual

Implements edm::RootInputFileSequence.

Definition at line 126 of file RootEmbeddedFileSequence.cc.

126  {
127  // delete the RootFile object.
128  if (rootFile()) {
129  rootFile().reset();
130  }
131  }

References edm::RootInputFileSequence::rootFile().

Referenced by endJob().

◆ endJob()

void edm::RootEmbeddedFileSequence::endJob ( void  )

Definition at line 124 of file RootEmbeddedFileSequence.cc.

124 { closeFile_(); }

References closeFile_().

◆ fillDescription()

void edm::RootEmbeddedFileSequence::fillDescription ( ParameterSetDescription desc)
static

Definition at line 362 of file RootEmbeddedFileSequence.cc.

362  {
363  desc.addUntracked<bool>("sequential", false)
364  ->setComment(
365  "True: loopEvents() reads events sequentially from beginning of first file.\n"
366  "False: loopEvents() first reads events beginning at random event. New files also chosen randomly");
367  desc.addUntracked<bool>("sameLumiBlock", false)
368  ->setComment(
369  "True: loopEvents() reads events only in same lumi as the specified event.\n"
370  "False: loopEvents() reads events regardless of lumi.");
371  desc.addUntracked<unsigned int>("skipEvents", 0U)
372  ->setComment(
373  "Skip the first 'skipEvents' events. Used only if 'sequential' is True and 'sameLumiBlock' is False");
374  desc.addUntracked<unsigned int>("maxFileSkips")
375  ->setComment(
376  "How many files to try if 'sequential' is False and 'skipBadFiles' is True.\n"
377  "Defaults to 3 (or # of files if smaller).");
378  desc.addUntracked<unsigned int>("cacheSize", roottree::defaultCacheSize)
379  ->setComment("Size of ROOT TTree prefetch cache. Affects performance.");
380  desc.addUntracked<bool>("enforceGUIDInFileName", false)
381  ->setComment(
382  "True: file name part is required to be equal to the GUID of the file\n"
383  "False: file name can be anything");
384  }

References edm::roottree::defaultCacheSize, submitPVResolutionJobs::desc, and mitigatedMETSequence_cff::U.

Referenced by edm::EmbeddedRootSource::fillDescriptions().

◆ initFile_()

void edm::RootEmbeddedFileSequence::initFile_ ( bool  skipBadFiles)
overrideprivatevirtual

◆ makeRootFile()

RootEmbeddedFileSequence::RootFileSharedPtr edm::RootEmbeddedFileSequence::makeRootFile ( std::shared_ptr< InputFile filePtr)
overrideprivatevirtual

◆ operator=()

RootEmbeddedFileSequence& edm::RootEmbeddedFileSequence::operator= ( RootEmbeddedFileSequence const &  )
delete

◆ readOneEvent()

bool edm::RootEmbeddedFileSequence::readOneEvent ( EventPrincipal cache,
size_t &  fileNameHash,
CLHEP::HepRandomEngine *  engine,
EventID const *  id,
bool  recycleFiles 
)

Definition at line 352 of file RootEmbeddedFileSequence.cc.

356  {
357  assert(!sameLumiBlock_ || id != nullptr);
358  assert(sequential_ || engine != nullptr);
359  return (this->*fptr_)(cache, fileNameHash, engine, id, recycleFiles);
360  }

References cms::cuda::assert(), utilities::cache(), fptr_, triggerObjects_cff::id, sameLumiBlock_, and sequential_.

◆ readOneRandom()

bool edm::RootEmbeddedFileSequence::readOneRandom ( EventPrincipal cache,
size_t &  fileNameHash,
CLHEP::HepRandomEngine *  engine,
EventID const *  ,
bool   
)

Definition at line 258 of file RootEmbeddedFileSequence.cc.

259  {
260  assert(rootFile());
261  assert(engine);
262  unsigned int currentSeqNumber = sequenceNumberOfFile();
263  while (eventsRemainingInFile_ == 0) {
264  bool opened{false};
265  while (!opened && badFilesSkipped_ < maxFileSkips_) {
266  unsigned int newSeqNumber = CLHEP::RandFlat::shootInt(engine, fileCatalogItems().size());
267  setAtFileSequenceNumber(newSeqNumber);
268  if (newSeqNumber != currentSeqNumber) {
270  currentSeqNumber = newSeqNumber;
271  }
272  if (rootFile()) {
273  eventsRemainingInFile_ = rootFile()->eventTree().entries();
274  if (eventsRemainingInFile_ == 0) {
275  if (!input_.skipBadFiles()) {
276  throw Exception(errors::NotFound) << "RootEmbeddedFileSequence::readOneRandom(): Secondary Input file "
277  << fileNames()[0] << " contains no events.\n";
278  }
279  LogWarning("RootEmbeddedFileSequence") << "RootEmbeddedFileSequence::readOneRandom(): Secondary Input file "
280  << fileNames()[0] << " contains no events and will be skipped.\n";
281  ++badFilesSkipped_;
282  } else {
283  opened = true;
284  }
285  } else {
286  if (newSeqNumber != currentSeqNumber) {
287  ++badFilesSkipped_;
288  }
289  }
290  }
291  if (not opened) {
292  throw Exception(errors::FileOpenError) << "RootEmbeddedFileSequence::readOneRandom(): "
293  << " input file retries exhausted.\n";
294  }
295  rootFile()->setAtEventEntry(CLHEP::RandFlat::shootInt(engine, eventsRemainingInFile_) - 1);
296  }
297  rootFile()->nextEventEntry();
298 
299  bool found = rootFile()->readCurrentEvent(cache);
300  if (!found) {
301  rootFile()->setAtEventEntry(0);
302  found = rootFile()->readCurrentEvent(cache);
303  assert(found);
304  }
305  fileNameHash = lfnHash();
307  return true;
308  }

References cms::cuda::assert(), utilities::cache(), eventsRemainingInFile_, Exception, edm::RootInputFileSequence::fileCatalogItems(), edm::RootInputFileSequence::fileNames(), edm::errors::FileOpenError, newFWLiteAna::found, edm::RootInputFileSequence::initFile(), input_, edm::RootInputFileSequence::lfnHash(), maxFileSkips_, edm::errors::NotFound, edm::RootInputFileSequence::rootFile(), edm::RootInputFileSequence::sequenceNumberOfFile(), edm::RootInputFileSequence::setAtFileSequenceNumber(), findQualityFiles::size, and edm::EmbeddedRootSource::skipBadFiles().

Referenced by RootEmbeddedFileSequence().

◆ readOneRandomWithID()

bool edm::RootEmbeddedFileSequence::readOneRandomWithID ( EventPrincipal cache,
size_t &  fileNameHash,
CLHEP::HepRandomEngine *  engine,
EventID const *  id,
bool  recycleFiles 
)

Definition at line 310 of file RootEmbeddedFileSequence.cc.

314  {
315  assert(engine);
316  assert(idp);
317  EventID const& id = *idp;
318  if (noMoreFiles() || !rootFile() || rootFile()->indexIntoFileIter().run() != id.run() ||
319  rootFile()->indexIntoFileIter().lumi() != id.luminosityBlock()) {
320  bool found = skipToItem(id.run(), id.luminosityBlock(), 0);
321  if (!found) {
322  return false;
323  }
324  int eventsInLumi = 0;
325  assert(rootFile());
326  while (rootFile()->setEntryAtNextEventInLumi(id.run(), id.luminosityBlock()))
327  ++eventsInLumi;
328  found = skipToItem(id.run(), id.luminosityBlock(), 0);
329  assert(found);
330  int eventInLumi = CLHEP::RandFlat::shootInt(engine, eventsInLumi);
331  for (int i = 0; i < eventInLumi; ++i) {
332  bool foundEventInLumi = rootFile()->setEntryAtNextEventInLumi(id.run(), id.luminosityBlock());
333  assert(foundEventInLumi);
334  }
335  }
336  assert(rootFile());
337  bool found = rootFile()->setEntryAtNextEventInLumi(id.run(), id.luminosityBlock());
338  if (found) {
339  found = rootFile()->readCurrentEvent(cache);
340  }
341  if (!found) {
342  found = rootFile()->setEntryAtItem(id.run(), id.luminosityBlock(), 0);
343  if (!found) {
344  return false;
345  }
346  return readOneRandomWithID(cache, fileNameHash, engine, idp, recycleFiles);
347  }
348  fileNameHash = lfnHash();
349  return true;
350  }

References cms::cuda::assert(), utilities::cache(), newFWLiteAna::found, mps_fire::i, edm::RootInputFileSequence::lfnHash(), BXlumiParameters_cfi::lumi, edm::RootInputFileSequence::noMoreFiles(), edm::RootInputFileSequence::rootFile(), writedatasetfile::run, and edm::RootInputFileSequence::skipToItem().

Referenced by RootEmbeddedFileSequence().

◆ readOneSequential()

bool edm::RootEmbeddedFileSequence::readOneSequential ( EventPrincipal cache,
size_t &  fileNameHash,
CLHEP::HepRandomEngine *  ,
EventID const *  ,
bool  recycleFiles 
)

Definition at line 174 of file RootEmbeddedFileSequence.cc.

175  {
176  assert(rootFile());
177  bool found = rootFile()->nextEventEntry();
178  if (found) {
179  found = rootFile()->readCurrentEvent(cache);
180  }
181  if (!found) {
182  setAtNextFile();
183  if (noMoreFiles()) {
184  if (recycleFiles) {
185  setAtFirstFile();
186  } else {
187  return false;
188  }
189  }
190  initFile(false);
191  assert(rootFile());
192  rootFile()->setAtEventEntry(IndexIntoFile::invalidEntry);
193  return readOneSequential(cache, fileNameHash, nullptr, nullptr, recycleFiles);
194  }
195  fileNameHash = lfnHash();
196  return true;
197  }

References cms::cuda::assert(), utilities::cache(), newFWLiteAna::found, edm::RootInputFileSequence::initFile(), edm::IndexIntoFile::invalidEntry, edm::RootInputFileSequence::lfnHash(), edm::RootInputFileSequence::noMoreFiles(), edm::RootInputFileSequence::rootFile(), edm::RootInputFileSequence::setAtFirstFile(), and edm::RootInputFileSequence::setAtNextFile().

Referenced by RootEmbeddedFileSequence().

◆ readOneSequentialWithID()

bool edm::RootEmbeddedFileSequence::readOneSequentialWithID ( EventPrincipal cache,
size_t &  fileNameHash,
CLHEP::HepRandomEngine *  ,
EventID const *  id,
bool  recycleFiles 
)

Definition at line 199 of file RootEmbeddedFileSequence.cc.

200  {
201  assert(idp);
202  EventID const& id = *idp;
205  if (offset > 0) {
206  assert(rootFile());
207  while (offset > 0) {
208  bool found = readOneSequentialWithID(cache, fileNameHash, nullptr, idp, recycleFiles);
209  if (!found) {
210  return false;
211  }
212  --offset;
213  }
214  }
215  assert(rootFile());
216  if (noMoreFiles() || rootFile()->indexIntoFileIter().run() != id.run() ||
217  rootFile()->indexIntoFileIter().lumi() != id.luminosityBlock()) {
218  bool found = skipToItem(id.run(), id.luminosityBlock(), 0, 0, false);
219  if (!found) {
220  return false;
221  }
222  }
223  assert(rootFile());
224  bool found = rootFile()->setEntryAtNextEventInLumi(id.run(), id.luminosityBlock());
225  if (found) {
226  found = rootFile()->readCurrentEvent(cache);
227  }
228  if (!found) {
229  found = skipToItemInNewFile(id.run(), id.luminosityBlock(), 0);
230  if (!found) {
231  return false;
232  }
233  return readOneSequentialWithID(cache, fileNameHash, nullptr, idp, recycleFiles);
234  }
235  fileNameHash = lfnHash();
236  return true;
237  }

References cms::cuda::assert(), utilities::cache(), newFWLiteAna::found, initialNumberOfEventsToSkip_, edm::RootInputFileSequence::lfnHash(), BXlumiParameters_cfi::lumi, edm::RootInputFileSequence::noMoreFiles(), hltrates_dqm_sourceclient-live_cfg::offset, edm::RootInputFileSequence::rootFile(), writedatasetfile::run, edm::RootInputFileSequence::skipToItem(), and edm::RootInputFileSequence::skipToItemInNewFile().

Referenced by RootEmbeddedFileSequence().

◆ readOneSpecified()

void edm::RootEmbeddedFileSequence::readOneSpecified ( EventPrincipal cache,
size_t &  fileNameHash,
SecondaryEventIDAndFileInfo const &  id 
)

Definition at line 239 of file RootEmbeddedFileSequence.cc.

241  {
242  EventID const& id = idx.eventID();
243  bool found = skipToItem(id.run(), id.luminosityBlock(), id.event(), idx.fileNameHash());
244  if (!found) {
245  throw Exception(errors::NotFound) << "RootEmbeddedFileSequence::readOneSpecified(): Secondary Input files"
246  << " do not contain specified event:\n"
247  << id << " in file id " << idx.fileNameHash() << "\n";
248  }
249  assert(rootFile());
250  found = rootFile()->readCurrentEvent(cache);
251  assert(found);
252  fileNameHash = idx.fileNameHash();
253  if (fileNameHash == 0U) {
254  fileNameHash = lfnHash();
255  }
256  }

References cms::cuda::assert(), utilities::cache(), edmPickEvents::event, Exception, newFWLiteAna::found, heavyIonCSV_trainingSettings::idx, edm::RootInputFileSequence::lfnHash(), edm::errors::NotFound, edm::RootInputFileSequence::rootFile(), writedatasetfile::run, edm::RootInputFileSequence::skipToItem(), and mitigatedMETSequence_cff::U.

◆ skipEntries()

void edm::RootEmbeddedFileSequence::skipEntries ( unsigned int  offset)

Definition at line 159 of file RootEmbeddedFileSequence.cc.

159  {
160  // offset is decremented by the number of events actually skipped.
161  bool completed = rootFile()->skipEntries(offset);
162  while (!completed) {
163  setAtNextFile();
164  if (noMoreFiles()) {
165  setAtFirstFile();
166  }
167  initFile(false);
168  assert(rootFile());
169  rootFile()->setAtEventEntry(IndexIntoFile::invalidEntry);
170  completed = rootFile()->skipEntries(offset);
171  }
172  }

References cms::cuda::assert(), edm::RootInputFileSequence::initFile(), edm::IndexIntoFile::invalidEntry, edm::RootInputFileSequence::noMoreFiles(), hltrates_dqm_sourceclient-live_cfg::offset, edm::RootInputFileSequence::rootFile(), edm::RootInputFileSequence::setAtFirstFile(), and edm::RootInputFileSequence::setAtNextFile().

Referenced by RootEmbeddedFileSequence().

Member Data Documentation

◆ enablePrefetching_

bool edm::RootEmbeddedFileSequence::enablePrefetching_
private

Definition at line 72 of file RootEmbeddedFileSequence.h.

Referenced by makeRootFile(), and RootEmbeddedFileSequence().

◆ enforceGUIDInFileName_

bool edm::RootEmbeddedFileSequence::enforceGUIDInFileName_
private

Definition at line 73 of file RootEmbeddedFileSequence.h.

Referenced by makeRootFile().

◆ eventsRemainingInFile_

int edm::RootEmbeddedFileSequence::eventsRemainingInFile_
private

Definition at line 69 of file RootEmbeddedFileSequence.h.

Referenced by readOneRandom().

◆ fptr_

bool(RootEmbeddedFileSequence::* edm::RootEmbeddedFileSequence::fptr_) (EventPrincipal &, size_t &, CLHEP::HepRandomEngine *, EventID const *, bool)
private

Definition at line 68 of file RootEmbeddedFileSequence.h.

Referenced by readOneEvent(), and RootEmbeddedFileSequence().

◆ initialNumberOfEventsToSkip_

int edm::RootEmbeddedFileSequence::initialNumberOfEventsToSkip_
private

Definition at line 70 of file RootEmbeddedFileSequence.h.

Referenced by readOneSequentialWithID(), and RootEmbeddedFileSequence().

◆ input_

EmbeddedRootSource& edm::RootEmbeddedFileSequence::input_
private

◆ maxFileSkips_

unsigned int edm::RootEmbeddedFileSequence::maxFileSkips_
private

Definition at line 74 of file RootEmbeddedFileSequence.h.

Referenced by readOneRandom(), and RootEmbeddedFileSequence().

◆ orderedProcessHistoryIDs_

std::vector<ProcessHistoryID> edm::RootEmbeddedFileSequence::orderedProcessHistoryIDs_
private

Definition at line 64 of file RootEmbeddedFileSequence.h.

Referenced by makeRootFile().

◆ sameLumiBlock_

bool edm::RootEmbeddedFileSequence::sameLumiBlock_
private

Definition at line 67 of file RootEmbeddedFileSequence.h.

Referenced by readOneEvent(), and RootEmbeddedFileSequence().

◆ sequential_

bool edm::RootEmbeddedFileSequence::sequential_
private

Definition at line 66 of file RootEmbeddedFileSequence.h.

Referenced by readOneEvent(), and RootEmbeddedFileSequence().

◆ treeCacheSize_

unsigned int edm::RootEmbeddedFileSequence::treeCacheSize_
private

Definition at line 71 of file RootEmbeddedFileSequence.h.

Referenced by makeRootFile(), and RootEmbeddedFileSequence().

edm::RootInputFileSequence::noMoreFiles
bool noMoreFiles() const
Definition: RootInputFileSequence.h:68
mps_fire.i
i
Definition: mps_fire.py:428
input
static const std::string input
Definition: EdmProvDump.cc:48
edm::RootInputFileSequence::setAtFirstFile
void setAtFirstFile()
Definition: RootInputFileSequence.h:73
edm::EmbeddedRootSource::productSelectorRules
ProductSelectorRules const & productSelectorRules() const
Definition: EmbeddedRootSource.h:46
edm::RootInputFileSequence::setAtFileSequenceNumber
void setAtFileSequenceNumber(size_t offset)
Definition: RootInputFileSequence.h:74
getEcalConditions_orcoffint2r_cff.catalog
catalog
Definition: getEcalConditions_orcoffint2r_cff.py:40
edm::RootEmbeddedFileSequence::skipEntries
void skipEntries(unsigned int offset)
Definition: RootEmbeddedFileSequence.cc:159
f
double f[11][100]
Definition: MuScleFitUtils.cc:78
min
T min(T a, T b)
Definition: MathUtil.h:58
edm::RootEmbeddedFileSequence::eventsRemainingInFile_
int eventsRemainingInFile_
Definition: RootEmbeddedFileSequence.h:69
edm::RootInputFileSequence::atFirstFile
bool atFirstFile() const
Definition: RootInputFileSequence.h:66
edm::EmbeddedRootSource::processHistoryRegistryForUpdate
ProcessHistoryRegistry & processHistoryRegistryForUpdate()
Definition: VectorInputSource.h:57
edm::RootEmbeddedFileSequence::sameLumiBlock_
bool sameLumiBlock_
Definition: RootEmbeddedFileSequence.h:67
edm::IndexIntoFile::invalidEntry
static constexpr EntryNumber_t invalidEntry
Definition: IndexIntoFile.h:236
edm::RootInputFileSequence::lfnHash
size_t lfnHash() const
Definition: RootInputFileSequence.h:87
edm::ProductRegistry::updateFromInput
void updateFromInput(ProductList const &other)
Definition: ProductRegistry.cc:209
cms::cuda::assert
assert(be >=bs)
edm::errors::NoSecondaryFiles
Definition: EDMException.h:60
remoteMonitoring_LED_IterMethod_cfg.skipBadFiles
skipBadFiles
Definition: remoteMonitoring_LED_IterMethod_cfg.py:24
edm::RootInputFileSequence::logicalFileName
std::string const & logicalFileName() const
Definition: RootInputFileSequence.h:81
edm::errors::NotFound
Definition: EDMException.h:57
newFWLiteAna.found
found
Definition: newFWLiteAna.py:118
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
edm::errors::FileOpenError
Definition: EDMException.h:49
heavyIonCSV_trainingSettings.idx
idx
Definition: heavyIonCSV_trainingSettings.py:5
edm::EmbeddedRootSource::skipBadFiles
bool skipBadFiles() const
Definition: EmbeddedRootSource.h:42
fileCollector.seed
seed
Definition: fileCollector.py:127
edm::RootInputFileSequence::initFile
void initFile(bool skipBadFiles)
Definition: RootInputFileSequence.h:56
edm::RootEmbeddedFileSequence::enablePrefetching_
bool enablePrefetching_
Definition: RootEmbeddedFileSequence.h:72
edm::RootEmbeddedFileSequence::initialNumberOfEventsToSkip_
int initialNumberOfEventsToSkip_
Definition: RootEmbeddedFileSequence.h:70
BXlumiParameters_cfi.lumi
lumi
Definition: BXlumiParameters_cfi.py:6
edm::EmbeddedRootSource::runHelper
RunHelperBase * runHelper()
Definition: EmbeddedRootSource.h:47
edm::RootEmbeddedFileSequence::readOneSequentialWithID
bool readOneSequentialWithID(EventPrincipal &cache, size_t &fileNameHash, CLHEP::HepRandomEngine *, EventID const *id, bool)
Definition: RootEmbeddedFileSequence.cc:199
edm::RootEmbeddedFileSequence::closeFile_
void closeFile_() override
Definition: RootEmbeddedFileSequence.cc:126
edm::RootInputFileSequence::setAtNextFile
void setAtNextFile()
Definition: RootInputFileSequence.h:76
Service
edm::roottree::defaultCacheSize
unsigned const int defaultCacheSize
Definition: RootTree.h:47
utilities.cache
def cache(function)
Definition: utilities.py:3
mitigatedMETSequence_cff.U
U
Definition: mitigatedMETSequence_cff.py:36
edm::RootInputFileSequence::RootInputFileSequence
RootInputFileSequence(ParameterSet const &pset, InputFileCatalog const &catalog)
Definition: RootInputFileSequence.cc:22
edm::EmbeddedRootSource::bypassVersionCheck
bool bypassVersionCheck() const
Definition: EmbeddedRootSource.h:43
edmPickEvents.event
event
Definition: edmPickEvents.py:273
edm::RootInputFileSequence::skipToItemInNewFile
bool skipToItemInNewFile(RunNumber_t run, LuminosityBlockNumber_t lumi, EventNumber_t event)
Definition: RootInputFileSequence.cc:132
edm::RootInputFileSequence::noFiles
bool noFiles() const
Definition: RootInputFileSequence.h:69
edm::RootInputFileSequence::rootFile
std::shared_ptr< RootFile const > rootFile() const
Definition: RootInputFileSequence.h:90
edm::RootEmbeddedFileSequence::orderedProcessHistoryIDs_
std::vector< ProcessHistoryID > orderedProcessHistoryIDs_
Definition: RootEmbeddedFileSequence.h:64
edm::EmbeddedRootSource::treeMaxVirtualSize
int treeMaxVirtualSize() const
Definition: EmbeddedRootSource.h:45
edm::RootEmbeddedFileSequence::readOneRandom
bool readOneRandom(EventPrincipal &cache, size_t &fileNameHash, CLHEP::HepRandomEngine *, EventID const *, bool)
Definition: RootEmbeddedFileSequence.cc:258
edm::RootEmbeddedFileSequence::readOneSequential
bool readOneSequential(EventPrincipal &cache, size_t &fileNameHash, CLHEP::HepRandomEngine *, EventID const *, bool recycleFiles)
Definition: RootEmbeddedFileSequence.cc:174
edm::RootEmbeddedFileSequence::input_
EmbeddedRootSource & input_
Definition: RootEmbeddedFileSequence.h:62
edm::RootEmbeddedFileSequence::fptr_
bool(RootEmbeddedFileSequence::* fptr_)(EventPrincipal &, size_t &, CLHEP::HepRandomEngine *, EventID const *, bool)
Definition: RootEmbeddedFileSequence.h:68
edm::RootEmbeddedFileSequence::treeCacheSize_
unsigned int treeCacheSize_
Definition: RootEmbeddedFileSequence.h:71
edm::RootEmbeddedFileSequence::maxFileSkips_
unsigned int maxFileSkips_
Definition: RootEmbeddedFileSequence.h:74
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
writedatasetfile.run
run
Definition: writedatasetfile.py:27
edm::RootEmbeddedFileSequence::readOneRandomWithID
bool readOneRandomWithID(EventPrincipal &cache, size_t &fileNameHash, CLHEP::HepRandomEngine *, EventID const *id, bool)
Definition: RootEmbeddedFileSequence.cc:310
triggerObjects_cff.id
id
Definition: triggerObjects_cff.py:29
Exception
Definition: hltDiff.cc:245
edm::RootEmbeddedFileSequence::sequential_
bool sequential_
Definition: RootEmbeddedFileSequence.h:66
edm::InputType::SecondarySource
edm::RootInputFileSequence::initTheFile
void initTheFile(bool skipBadFiles, bool deleteIndexIntoFile, InputSource *input, char const *inputTypeName, InputType inputType)
Definition: RootInputFileSequence.cc:182
edm::EmbeddedRootSource::productRegistryUpdate
ProductRegistry & productRegistryUpdate()
Definition: VectorInputSource.h:55
edm::RootInputFileSequence::indexesIntoFiles
std::vector< std::shared_ptr< IndexIntoFile > > const & indexesIntoFiles() const
Definition: RootInputFileSequence.h:85
edm::EmbeddedRootSource::nStreams
unsigned int nStreams() const
Definition: EmbeddedRootSource.h:44
edm::RootInputFileSequence::numberOfFiles
size_t numberOfFiles() const
Definition: RootInputFileSequence.h:71
hltrates_dqm_sourceclient-live_cfg.offset
offset
Definition: hltrates_dqm_sourceclient-live_cfg.py:82
edm::RootInputFileSequence::sequenceNumberOfFile
size_t sequenceNumberOfFile() const
Definition: RootInputFileSequence.h:70
edm::RootInputFileSequence::fileNames
std::vector< std::string > const & fileNames() const
Definition: RootInputFileSequence.h:79
edm::RootEmbeddedFileSequence::enforceGUIDInFileName_
bool enforceGUIDInFileName_
Definition: RootEmbeddedFileSequence.h:73
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27
edm::RootInputFileSequence::skipToItem
bool skipToItem(RunNumber_t run, LuminosityBlockNumber_t lumi, EventNumber_t event, size_t fileNameHash=0U, bool currentFileFirst=true)
Definition: RootInputFileSequence.cc:150
findQualityFiles.size
size
Write out results.
Definition: findQualityFiles.py:443
edm::RootInputFileSequence::fileCatalogItems
std::vector< FileCatalogItem > const & fileCatalogItems() const
Definition: RootInputFileSequence.cc:35