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;
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_; }
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;
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
void readOneSpecified(EventPrincipal &cache, size_t &fileNameHash, SecondaryEventIDAndFileInfo const &id) override
ProductRegistry & productRegistryUpdate()
ProcessHistoryRegistry & processHistoryRegistryForUpdate()
std::unique_ptr< RunHelperBase > runHelper_
bool readOneEvent(EventPrincipal &cache, size_t &fileNameHash, CLHEP::HepRandomEngine *, EventID const *id, bool recycleFiles) override
ProductSelectorRules const & productSelectorRules() const
RootServiceChecker rootServiceChecker_
RunHelperBase * runHelper()
EmbeddedRootSource(ParameterSet const &pset, VectorInputSourceDescription const &desc)
static void fillDescriptions(ConfigurationDescriptions &descriptions)
void dropUnwantedBranches_(std::vector< std::string > const &wantedBranches) override
unsigned int nStreams() const
ProductSelectorRules productSelectorRules_
HLT enums.
def cache(function)
Definition: utilities.py:3
edm::propagate_const< std::unique_ptr< RootEmbeddedFileSequence > > fileSequence_