CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 
14 
15 #include <array>
16 #include <memory>
17 #include <string>
18 #include <vector>
19 
20 namespace CLHEP {
21  class HepRandomEngine;
22 }
23 
24 namespace edm {
25 
27  class FileCatalogItem;
28  class RootEmbeddedFileSequence;
29  struct VectorInputSourceDescription;
30 
32  public:
33  explicit EmbeddedRootSource(ParameterSet const& pset, VectorInputSourceDescription const& desc);
34  virtual ~EmbeddedRootSource();
37 
38  static void fillDescriptions(ConfigurationDescriptions & descriptions);
39 
40  private:
41  virtual void closeFile_();
42  virtual void beginJob();
43  virtual void endJob();
44  virtual bool readOneEvent(EventPrincipal& cache, size_t& fileNameHash, CLHEP::HepRandomEngine*, EventID const* id) override;
45  virtual void readOneSpecified(EventPrincipal& cache, size_t& fileNameHash, SecondaryEventIDAndFileInfo const& id);
46  virtual void dropUnwantedBranches_(std::vector<std::string> const& wantedBranches);
47 
50  std::unique_ptr<RootEmbeddedFileSequence> fileSequence_;
51 
52  }; // class EmbeddedRootSource
53 }
54 #endif
virtual void dropUnwantedBranches_(std::vector< std::string > const &wantedBranches)
ProcessHistoryRegistry & processHistoryRegistryForUpdate()
std::unique_ptr< RootEmbeddedFileSequence > fileSequence_
ProductRegistry & productRegistryUpdate() const
RootServiceChecker rootServiceChecker_
virtual void readOneSpecified(EventPrincipal &cache, size_t &fileNameHash, SecondaryEventIDAndFileInfo const &id)
EmbeddedRootSource(ParameterSet const &pset, VectorInputSourceDescription const &desc)
static void fillDescriptions(ConfigurationDescriptions &descriptions)
virtual bool readOneEvent(EventPrincipal &cache, size_t &fileNameHash, CLHEP::HepRandomEngine *, EventID const *id) override