CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
edm::FileBlock Class Reference

#include <FileBlock.h>

Public Types

enum  WhyNotFastClonable {
  CanFastClone = 0x0, NoRootInputSource = 0x1, ParallelProcesses = (NoRootInputSource << 1), NotProcessingEvents = (ParallelProcesses << 1),
  HasSecondaryFileSequence = (NotProcessingEvents << 1), FileTooOld = (HasSecondaryFileSequence << 1), NoEventsInFile = (FileTooOld << 1), EventsToBeSorted = (NoEventsInFile << 1),
  RunOrLumiNotContiguous = (EventsToBeSorted << 1), EventsOrLumisSelectedByID = (RunOrLumiNotContiguous << 1), InitialEventsSkipped = (EventsOrLumisSelectedByID << 1), MaxEventsTooSmall = (InitialEventsSkipped << 1),
  MaxLumisTooSmall = (MaxEventsTooSmall << 1), RunNumberModified = (MaxLumisTooSmall << 1), DuplicateEventsRemoved = (RunNumberModified << 1), DisabledInConfigFile = (DuplicateEventsRemoved << 1),
  EventSelectionUsed = (DisabledInConfigFile << 1), OutputMaxEventsTooSmall = (EventSelectionUsed << 1), SplitLevelMismatch = (OutputMaxEventsTooSmall << 1), BranchMismatch = (SplitLevelMismatch << 1)
}
 

Public Member Functions

BranchChildren const & branchChildren () const
 
bool branchListIndexesUnchanged () const
 
void close ()
 
 FileBlock ()
 
 FileBlock (FileFormatVersion const &version, TTree const *ev, TTree const *meta, TTree const *lumi, TTree const *lumiMeta, TTree const *run, TTree const *runMeta, int whyNotFastClonable, std::array< bool, NumBranchTypes > const &hasNewlyDroppedBranch, std::string const &fileName, bool branchListIndexesUnchanged, bool modifiedIDs, std::shared_ptr< BranchChildren const > branchChildren)
 
FileFormatVersion const & fileFormatVersion () const
 
std::string const & fileName () const
 
std::array< bool, NumBranchTypes > const & hasNewlyDroppedBranch () const
 
TTree * lumiMetaTree () const
 
TTree * lumiTree () const
 
TTree * metaTree () const
 
bool modifiedIDs () const
 
TTree * runMetaTree () const
 
TTree * runTree () const
 
void setNotFastClonable (WhyNotFastClonable const &why)
 
TTree * tree () const
 
int whyNotFastClonable () const
 
 ~FileBlock ()
 

Private Attributes

std::shared_ptr< BranchChildren const > branchChildren_
 
bool branchListIndexesUnchanged_
 
FileFormatVersion fileFormatVersion_
 
std::string fileName_
 
std::array< bool, NumBranchTypeshasNewlyDroppedBranch_
 
TTree * lumiMetaTree_
 
TTree * lumiTree_
 
TTree * metaTree_
 
bool modifiedIDs_
 
TTree * runMetaTree_
 
TTree * runTree_
 
TTree * tree_
 
int whyNotFastClonable_
 

Detailed Description

Definition at line 20 of file FileBlock.h.

Member Enumeration Documentation

Enumerator
CanFastClone 
NoRootInputSource 
ParallelProcesses 
NotProcessingEvents 
HasSecondaryFileSequence 
FileTooOld 
NoEventsInFile 
EventsToBeSorted 
RunOrLumiNotContiguous 
EventsOrLumisSelectedByID 
InitialEventsSkipped 
MaxEventsTooSmall 
MaxLumisTooSmall 
RunNumberModified 
DuplicateEventsRemoved 
DisabledInConfigFile 
EventSelectionUsed 
OutputMaxEventsTooSmall 
SplitLevelMismatch 
BranchMismatch 

Definition at line 23 of file FileBlock.h.

24  {
25  CanFastClone = 0x0,
26 
27  // For entire job
28  NoRootInputSource = 0x1,
32 
33  // For a given input file
35  NoEventsInFile = (FileTooOld << 1),
44 
45  // The remainder of these are defined here for convenience,
46  // but never set in FileBlock, because they are output module specific.
47 
48  // For a given output module
51 
52  // For given input and output files
56  };

Constructor & Destructor Documentation

edm::FileBlock::FileBlock ( )
inline

Definition at line 58 of file FileBlock.h.

58  :
60  tree_(nullptr), metaTree_(nullptr),
61  lumiTree_(nullptr), lumiMetaTree_(nullptr),
62  runTree_(nullptr), runMetaTree_(nullptr),
65  fileName_(),
67  modifiedIDs_(false),
68  branchChildren_(new BranchChildren) {}
std::shared_ptr< BranchChildren const > branchChildren_
Definition: FileBlock.h:130
std::string fileName_
Definition: FileBlock.h:127
FileFormatVersion fileFormatVersion_
Definition: FileBlock.h:117
TTree * lumiTree_
Definition: FileBlock.h:121
TTree * lumiMetaTree_
Definition: FileBlock.h:122
int whyNotFastClonable_
Definition: FileBlock.h:125
TTree * runMetaTree_
Definition: FileBlock.h:124
bool modifiedIDs_
Definition: FileBlock.h:129
TTree * runTree_
Definition: FileBlock.h:123
bool branchListIndexesUnchanged_
Definition: FileBlock.h:128
std::array< bool, NumBranchTypes > hasNewlyDroppedBranch_
Definition: FileBlock.h:126
TTree * tree_
Definition: FileBlock.h:119
TTree * metaTree_
Definition: FileBlock.h:120
edm::FileBlock::FileBlock ( FileFormatVersion const &  version,
TTree const *  ev,
TTree const *  meta,
TTree const *  lumi,
TTree const *  lumiMeta,
TTree const *  run,
TTree const *  runMeta,
int  whyNotFastClonable,
std::array< bool, NumBranchTypes > const &  hasNewlyDroppedBranch,
std::string const &  fileName,
bool  branchListIndexesUnchanged,
bool  modifiedIDs,
std::shared_ptr< BranchChildren const >  branchChildren 
)
inline

Definition at line 70 of file FileBlock.h.

79  :
81  tree_(const_cast<TTree*>(ev)),
82  metaTree_(const_cast<TTree*>(meta)),
83  lumiTree_(const_cast<TTree*>(lumi)),
84  lumiMetaTree_(const_cast<TTree*>(lumiMeta)),
85  runTree_(const_cast<TTree*>(run)),
86  runMetaTree_(const_cast<TTree*>(runMeta)),
std::shared_ptr< BranchChildren const > branchChildren_
Definition: FileBlock.h:130
int whyNotFastClonable() const
Definition: FileBlock.h:104
std::array< bool, NumBranchTypes > const & hasNewlyDroppedBranch() const
Definition: FileBlock.h:105
std::string fileName_
Definition: FileBlock.h:127
BranchChildren const & branchChildren() const
Definition: FileBlock.h:113
FileFormatVersion fileFormatVersion_
Definition: FileBlock.h:117
bool ev
TTree * lumiTree_
Definition: FileBlock.h:121
bool modifiedIDs() const
Definition: FileBlock.h:108
TTree * lumiMetaTree_
Definition: FileBlock.h:122
int whyNotFastClonable_
Definition: FileBlock.h:125
TTree * runMetaTree_
Definition: FileBlock.h:124
bool modifiedIDs_
Definition: FileBlock.h:129
TTree * runTree_
Definition: FileBlock.h:123
bool branchListIndexesUnchanged_
Definition: FileBlock.h:128
std::array< bool, NumBranchTypes > hasNewlyDroppedBranch_
Definition: FileBlock.h:126
TTree * tree_
Definition: FileBlock.h:119
bool branchListIndexesUnchanged() const
Definition: FileBlock.h:107
TTree * metaTree_
Definition: FileBlock.h:120
std::string const & fileName() const
Definition: FileBlock.h:106
edm::FileBlock::~FileBlock ( )
inline

Definition at line 94 of file FileBlock.h.

94 {}

Member Function Documentation

BranchChildren const& edm::FileBlock::branchChildren ( ) const
inline

Definition at line 113 of file FileBlock.h.

References branchChildren_.

Referenced by edm::PoolOutputModule::beginInputFile().

113 { return *branchChildren_; }
std::shared_ptr< BranchChildren const > branchChildren_
Definition: FileBlock.h:130
bool edm::FileBlock::branchListIndexesUnchanged ( ) const
inline

Definition at line 107 of file FileBlock.h.

References branchListIndexesUnchanged_.

bool branchListIndexesUnchanged_
Definition: FileBlock.h:128
void edm::FileBlock::close ( void  )
inline
FileFormatVersion const& edm::FileBlock::fileFormatVersion ( ) const
inline

Definition at line 96 of file FileBlock.h.

References fileFormatVersion_.

96 {return fileFormatVersion_;}
FileFormatVersion fileFormatVersion_
Definition: FileBlock.h:117
std::string const& edm::FileBlock::fileName ( ) const
inline

Definition at line 106 of file FileBlock.h.

References fileName_.

Referenced by edm::RootOutputFile::beginInputFile().

106 {return fileName_;}
std::string fileName_
Definition: FileBlock.h:127
std::array<bool, NumBranchTypes> const& edm::FileBlock::hasNewlyDroppedBranch ( ) const
inline

Definition at line 105 of file FileBlock.h.

References hasNewlyDroppedBranch_.

105 {return hasNewlyDroppedBranch_;}
std::array< bool, NumBranchTypes > hasNewlyDroppedBranch_
Definition: FileBlock.h:126
TTree* edm::FileBlock::lumiMetaTree ( ) const
inline

Definition at line 100 of file FileBlock.h.

References lumiMetaTree_.

100 {return lumiMetaTree_;}
TTree * lumiMetaTree_
Definition: FileBlock.h:122
TTree* edm::FileBlock::lumiTree ( ) const
inline

Definition at line 99 of file FileBlock.h.

References lumiTree_.

Referenced by edm::PoolOutputModule::respondToOpenInputFile().

99 {return lumiTree_;}
TTree * lumiTree_
Definition: FileBlock.h:121
TTree* edm::FileBlock::metaTree ( ) const
inline

Definition at line 98 of file FileBlock.h.

References metaTree_.

98 {return metaTree_;}
TTree * metaTree_
Definition: FileBlock.h:120
bool edm::FileBlock::modifiedIDs ( ) const
inline

Definition at line 108 of file FileBlock.h.

References modifiedIDs_.

108 {return modifiedIDs_;}
bool modifiedIDs_
Definition: FileBlock.h:129
TTree* edm::FileBlock::runMetaTree ( ) const
inline

Definition at line 102 of file FileBlock.h.

References runMetaTree_.

102 {return runMetaTree_;}
TTree * runMetaTree_
Definition: FileBlock.h:124
TTree* edm::FileBlock::runTree ( ) const
inline

Definition at line 101 of file FileBlock.h.

References runTree_.

Referenced by edm::PoolOutputModule::respondToOpenInputFile().

101 {return runTree_;}
TTree * runTree_
Definition: FileBlock.h:123
void edm::FileBlock::setNotFastClonable ( WhyNotFastClonable const &  why)
inline

Definition at line 110 of file FileBlock.h.

References whyNotFastClonable_.

110  {
111  whyNotFastClonable_ |= why;
112  }
int whyNotFastClonable_
Definition: FileBlock.h:125
TTree* edm::FileBlock::tree ( ) const
inline
int edm::FileBlock::whyNotFastClonable ( ) const
inline

Definition at line 104 of file FileBlock.h.

References whyNotFastClonable_.

Referenced by edm::RootOutputFile::beginInputFile().

104 {return whyNotFastClonable_;}
int whyNotFastClonable_
Definition: FileBlock.h:125

Member Data Documentation

std::shared_ptr<BranchChildren const> edm::FileBlock::branchChildren_
private

Definition at line 130 of file FileBlock.h.

Referenced by branchChildren().

bool edm::FileBlock::branchListIndexesUnchanged_
private

Definition at line 128 of file FileBlock.h.

Referenced by branchListIndexesUnchanged().

FileFormatVersion edm::FileBlock::fileFormatVersion_
private

Definition at line 117 of file FileBlock.h.

Referenced by fileFormatVersion().

std::string edm::FileBlock::fileName_
private

Definition at line 127 of file FileBlock.h.

Referenced by fileName().

std::array<bool, NumBranchTypes> edm::FileBlock::hasNewlyDroppedBranch_
private

Definition at line 126 of file FileBlock.h.

Referenced by hasNewlyDroppedBranch().

TTree* edm::FileBlock::lumiMetaTree_
private

Definition at line 122 of file FileBlock.h.

Referenced by close(), and lumiMetaTree().

TTree* edm::FileBlock::lumiTree_
private

Definition at line 121 of file FileBlock.h.

Referenced by close(), and lumiTree().

TTree* edm::FileBlock::metaTree_
private

Definition at line 120 of file FileBlock.h.

Referenced by close(), and metaTree().

bool edm::FileBlock::modifiedIDs_
private

Definition at line 129 of file FileBlock.h.

Referenced by modifiedIDs().

TTree* edm::FileBlock::runMetaTree_
private

Definition at line 124 of file FileBlock.h.

Referenced by close(), and runMetaTree().

TTree* edm::FileBlock::runTree_
private

Definition at line 123 of file FileBlock.h.

Referenced by close(), and runTree().

TTree* edm::FileBlock::tree_
private

Definition at line 119 of file FileBlock.h.

Referenced by close(), and tree().

int edm::FileBlock::whyNotFastClonable_
private

Definition at line 125 of file FileBlock.h.

Referenced by setNotFastClonable(), and whyNotFastClonable().