CMS 3D CMS Logo

EmbeddedRootSource.h
Go to the documentation of this file.
1 #ifndef IOPool_Input_EmbeddedRootSource_h
2 #define IOPool_Input_EmbeddedRootSource_h
3 
4 /*----------------------------------------------------------------------
5 
6 EmbeddedRootSource: This is an InputSource
7 
8 ----------------------------------------------------------------------*/
9 
16 
17 #include <array>
18 #include <memory>
19 #include <string>
20 #include <vector>
21 
22 namespace CLHEP {
23  class HepRandomEngine;
24 }
25 
26 namespace edm {
27 
29  class FileCatalogItem;
30  class RunHelperBase;
31  class RootEmbeddedFileSequence;
32  struct VectorInputSourceDescription;
33 
35  public:
37  ~EmbeddedRootSource() override;
38  using VectorInputSource::processHistoryRegistryForUpdate;
39  using VectorInputSource::productRegistryUpdate;
40 
41  // const accessors
42  bool skipBadFiles() const { return skipBadFiles_; }
43  bool bypassVersionCheck() const { return bypassVersionCheck_; }
44  unsigned int nStreams() const { return nStreams_; }
45  int treeMaxVirtualSize() const { return treeMaxVirtualSize_; }
46  ProductSelectorRules const& productSelectorRules() const { return productSelectorRules_; }
47  RunHelperBase* runHelper() { return runHelper_.get(); }
48 
49  static void fillDescriptions(ConfigurationDescriptions& descriptions);
50 
51  private:
52  virtual void closeFile_();
53  void beginJob() override;
54  void endJob() override;
55  bool readOneEvent(EventPrincipal& cache,
56  size_t& fileNameHash,
57  CLHEP::HepRandomEngine*,
58  EventID const* id,
59  bool recycleFiles) override;
60  void readOneSpecified(EventPrincipal& cache, size_t& fileNameHash, SecondaryEventIDAndFileInfo const& id) override;
61  void dropUnwantedBranches_(std::vector<std::string> const& wantedBranches) override;
62 
64 
65  unsigned int nStreams_;
70  std::unique_ptr<RunHelperBase> runHelper_;
71 
74 
75  }; // class EmbeddedRootSource
76 } // namespace edm
77 #endif
std::unique_ptr< RunHelperBase > runHelper_
unsigned int nStreams() const
bool bypassVersionCheck() const
void beginJob()
Definition: Breakpoints.cc:14
RootServiceChecker rootServiceChecker_
RunHelperBase * runHelper()
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
ProductSelectorRules productSelectorRules_
HLT enums.
ProductSelectorRules const & productSelectorRules() const
def cache(function)
Definition: utilities.py:3
edm::propagate_const< std::unique_ptr< RootEmbeddedFileSequence > > fileSequence_