Go to the documentation of this file. 1 #ifndef IOPool_Output_PoolOutputModule_h
2 #define IOPool_Output_PoolOutputModule_h
35 class ModuleCallingContext;
39 class ProductProvenanceRetriever;
72 using OutputModule::selectorConfig;
79 using AuxItemArray = std::array<AuxItem, numberOfRunLumiEventProductTrees>;
89 std::shared_ptr<std::map<std::string, int>>
treeMap_;
146 Principal const& iPrincipal)
const override;
~PoolOutputModule() override
void updateBranchParents(EventForOutput const &e)
BranchChildren branchChildren_
void respondToOpenInputFile(FileBlock const &fb) override
int inputFileCount() const
void writeProcessBlock(ProcessBlockForOutput const &) override
void writeLuminosityBlock(LuminosityBlockForOutput const &) override
bool overrideInputFileSplitLevels() const
const std::string fileName_
std::array< AuxItem, numberOfRunLumiEventProductTrees > AuxItemArray
BranchID branchID() const
unsigned const int maxFileSize_
std::regex convert(std::string const &iGlobBranchExpression) const
std::vector< std::string > processesWithSelectedMergeableRunProducts_
BranchChildren const & branchChildren() const
std::string const & branchName() const
AuxItemArray const & auxItems() const
edm::propagate_const< std::unique_ptr< RootOutputFile > > rootOutputFile_
void openFile(FileBlock const &fb) override
void writeParameterSetRegistry()
std::string const & currentFileName() const
bool compactEventAuxiliary() const
bool initializedFromInput_
unsigned int maxFileSize() const
void writeProcessBlockHelper()
bool match(std::string const &iBranchName) const
PoolOutputModule & operator=(PoolOutputModule const &)=delete
void setProcessesWithSelectedMergeableRunProducts(std::set< std::string > const &) override
std::string const & moduleLabel() const
void updateBranchParentsForOneBranch(ProductProvenanceRetriever const *provRetriever, BranchID const &branchID)
BranchDescription const * branchDescription_
virtual void doExtrasAfterCloseFile()
bool compactEventAuxiliary_
std::vector< OutputItemList > selectedOutputItemList_
std::vector< SpecialSplitLevelForBranch > specialSplitLevelForBranches_
PoolOutputModule(ParameterSet const &ps)
int treeMaxVirtualSize() const
std::vector< OutputItemList > const & selectedOutputItemList() const
void writeRun(RunForOutput const &) override
void preActionBeforeRunEventAsync(WaitingTaskHolder iTask, ModuleCallingContext const &iModuleCallingContext, Principal const &iPrincipal) const override
BranchDescription const * branchDescription() const
const std::string moduleLabel_
void writeFileFormatVersion()
bool operator()(OutputItem const &lh, OutputItem const &rh) const
std::string const & basketOrder() const
std::map< BranchID, std::set< ParentageID > > BranchParents
std::vector< BranchID > producedBranches_
BranchParents branchParents_
DropMetaData const & dropMetaData() const
const int eventAutoFlushSize_
bool operator<(OutputItem const &rh) const
void setProduct(void const *iProduct)
OutputItem(BranchDescription const *bd, EDGetToken const &token, int splitLevel, int basketSize)
std::shared_ptr< std::map< std::string, int > > treeMap_
bool overrideInputFileSplitLevels_
void writeThinnedAssociationsHelper()
void writeEventAuxiliary()
const std::string compressionAlgorithm_
std::string const & catalog() const
void writeIndexIntoFile()
int eventAuxiliaryBasketSize() const
void writeProductDependencies()
SpecialSplitLevelForBranch(std::string const &iBranchName, int iSplitLevel)
std::string const & branchName() const
std::string const & compressionAlgorithm() const
bool isFileOpen() const override
const std::string logicalFileName_
void writeStoredMergeableRunProductMetadata()
std::string const & processName() const
void beginInputFile(FileBlock const &fb)
std::string const & fileName() const
void writeProductDescriptionRegistry()
void writeBranchIDListRegistry()
void fillDependencyGraph()
static void fillDescriptions(ConfigurationDescriptions &descriptions)
bool shouldWeCloseFile() const override
allow inheriting classes to override but still be able to call this method in the overridden version
void reallyCloseFile() override
std::string statusFileName_
std::string const & logicalFileName() const
RootServiceChecker rootServiceChecker_
int whyNotFastClonable() const
int compressionLevel() const
std::vector< OutputItemList > & selectedOutputItemList()
void writeProcessHistoryRegistry()
void const *const product() const
void respondToCloseInputFile(FileBlock const &fb) override
const std::string catalog_
DropMetaData dropMetaData_
const int compressionLevel_
const int treeMaxVirtualSize_
void writeFileIdentifier()
std::vector< OutputItem > OutputItemList
BranchID const & branchID() const
void write(EventForOutput const &e) override
void fillSelectedItemList(BranchType branchtype, std::string const &processName, TTree *theInputTree, OutputItemList &)
void writeParentageRegistry()
static void fillDescription(ParameterSetDescription &desc)
virtual std::pair< std::string, std::string > physicalAndLogicalNameForNewFile()
int eventAutoFlushSize() const
const int eventAuxBasketSize_