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

◆ WhyNotFastClonable

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.

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

Constructor & Destructor Documentation

◆ FileBlock() [1/2]

edm::FileBlock::FileBlock ( )
inline

Definition at line 57 of file FileBlock.h.

59  tree_(nullptr),
60  metaTree_(nullptr),
61  lumiTree_(nullptr),
62  lumiMetaTree_(nullptr),
63  runTree_(nullptr),
64  runMetaTree_(nullptr),
67  fileName_(),
69  modifiedIDs_(false),
70  branchChildren_(new BranchChildren) {}

◆ FileBlock() [2/2]

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 72 of file FileBlock.h.

86  tree_(const_cast<TTree*>(ev)),
87  metaTree_(const_cast<TTree*>(meta)),
88  lumiTree_(const_cast<TTree*>(lumi)),
89  lumiMetaTree_(const_cast<TTree*>(lumiMeta)),
90  runTree_(const_cast<TTree*>(run)),
91  runMetaTree_(const_cast<TTree*>(runMeta)),

◆ ~FileBlock()

edm::FileBlock::~FileBlock ( )
inline

Definition at line 99 of file FileBlock.h.

99 {}

Member Function Documentation

◆ branchChildren()

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

Definition at line 116 of file FileBlock.h.

116 { return *branchChildren_; }

References branchChildren_.

◆ branchListIndexesUnchanged()

bool edm::FileBlock::branchListIndexesUnchanged ( ) const
inline

Definition at line 112 of file FileBlock.h.

112 { return branchListIndexesUnchanged_; }

References branchListIndexesUnchanged_.

◆ close()

void edm::FileBlock::close ( void  )
inline

◆ fileFormatVersion()

FileFormatVersion const& edm::FileBlock::fileFormatVersion ( ) const
inline

Definition at line 101 of file FileBlock.h.

101 { return fileFormatVersion_; }

References fileFormatVersion_.

◆ fileName()

std::string const& edm::FileBlock::fileName ( ) const
inline

Definition at line 111 of file FileBlock.h.

111 { return fileName_; }

References fileName_.

◆ hasNewlyDroppedBranch()

std::array<bool, NumBranchTypes> const& edm::FileBlock::hasNewlyDroppedBranch ( ) const
inline

Definition at line 110 of file FileBlock.h.

110 { return hasNewlyDroppedBranch_; }

References hasNewlyDroppedBranch_.

◆ lumiMetaTree()

TTree* edm::FileBlock::lumiMetaTree ( ) const
inline

Definition at line 105 of file FileBlock.h.

105 { return lumiMetaTree_; }

References lumiMetaTree_.

◆ lumiTree()

TTree* edm::FileBlock::lumiTree ( ) const
inline

Definition at line 104 of file FileBlock.h.

104 { return lumiTree_; }

References lumiTree_.

◆ metaTree()

TTree* edm::FileBlock::metaTree ( ) const
inline

Definition at line 103 of file FileBlock.h.

103 { return metaTree_; }

References metaTree_.

◆ modifiedIDs()

bool edm::FileBlock::modifiedIDs ( ) const
inline

Definition at line 113 of file FileBlock.h.

113 { return modifiedIDs_; }

References modifiedIDs_.

◆ runMetaTree()

TTree* edm::FileBlock::runMetaTree ( ) const
inline

Definition at line 107 of file FileBlock.h.

107 { return runMetaTree_; }

References runMetaTree_.

◆ runTree()

TTree* edm::FileBlock::runTree ( ) const
inline

Definition at line 106 of file FileBlock.h.

106 { return runTree_; }

References runTree_.

◆ setNotFastClonable()

void edm::FileBlock::setNotFastClonable ( WhyNotFastClonable const &  why)
inline

Definition at line 115 of file FileBlock.h.

115 { whyNotFastClonable_ |= why; }

References whyNotFastClonable_.

◆ tree()

TTree* edm::FileBlock::tree ( ) const
inline

◆ whyNotFastClonable()

int edm::FileBlock::whyNotFastClonable ( ) const
inline

Definition at line 109 of file FileBlock.h.

109 { return whyNotFastClonable_; }

References whyNotFastClonable_.

Member Data Documentation

◆ branchChildren_

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

Definition at line 133 of file FileBlock.h.

Referenced by branchChildren().

◆ branchListIndexesUnchanged_

bool edm::FileBlock::branchListIndexesUnchanged_
private

Definition at line 131 of file FileBlock.h.

Referenced by branchListIndexesUnchanged().

◆ fileFormatVersion_

FileFormatVersion edm::FileBlock::fileFormatVersion_
private

Definition at line 120 of file FileBlock.h.

Referenced by fileFormatVersion().

◆ fileName_

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

Definition at line 130 of file FileBlock.h.

Referenced by fileName().

◆ hasNewlyDroppedBranch_

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

Definition at line 129 of file FileBlock.h.

Referenced by hasNewlyDroppedBranch().

◆ lumiMetaTree_

TTree* edm::FileBlock::lumiMetaTree_
private

Definition at line 125 of file FileBlock.h.

Referenced by close(), and lumiMetaTree().

◆ lumiTree_

TTree* edm::FileBlock::lumiTree_
private

Definition at line 124 of file FileBlock.h.

Referenced by close(), and lumiTree().

◆ metaTree_

TTree* edm::FileBlock::metaTree_
private

Definition at line 123 of file FileBlock.h.

Referenced by close(), and metaTree().

◆ modifiedIDs_

bool edm::FileBlock::modifiedIDs_
private

Definition at line 132 of file FileBlock.h.

Referenced by modifiedIDs().

◆ runMetaTree_

TTree* edm::FileBlock::runMetaTree_
private

Definition at line 127 of file FileBlock.h.

Referenced by close(), and runMetaTree().

◆ runTree_

TTree* edm::FileBlock::runTree_
private

Definition at line 126 of file FileBlock.h.

Referenced by close(), and runTree().

◆ tree_

TTree* edm::FileBlock::tree_
private

Definition at line 122 of file FileBlock.h.

Referenced by close(), and tree().

◆ whyNotFastClonable_

int edm::FileBlock::whyNotFastClonable_
private

Definition at line 128 of file FileBlock.h.

Referenced by setNotFastClonable(), and whyNotFastClonable().

edm::FileBlock::BranchMismatch
Definition: FileBlock.h:54
edm::FileBlock::OutputMaxEventsTooSmall
Definition: FileBlock.h:52
edm::FileBlock::tree_
TTree * tree_
Definition: FileBlock.h:122
edm::FileBlock::NoRootInputSource
Definition: FileBlock.h:27
edm::FileBlock::RunNumberModified
Definition: FileBlock.h:41
edm::FileBlock::NotProcessingEvents
Definition: FileBlock.h:29
edm::FileBlock::RunOrLumiNotContiguous
Definition: FileBlock.h:36
edm::FileBlock::metaTree_
TTree * metaTree_
Definition: FileBlock.h:123
edm::FileBlock::EventsToBeSorted
Definition: FileBlock.h:35
edm::FileBlock::modifiedIDs
bool modifiedIDs() const
Definition: FileBlock.h:113
edm::FileBlock::hasNewlyDroppedBranch_
std::array< bool, NumBranchTypes > hasNewlyDroppedBranch_
Definition: FileBlock.h:129
edm::FileBlock::CanFastClone
Definition: FileBlock.h:24
edm::FileBlock::fileName
std::string const & fileName() const
Definition: FileBlock.h:111
edm::FileBlock::fileFormatVersion_
FileFormatVersion fileFormatVersion_
Definition: FileBlock.h:120
edm::FileBlock::branchListIndexesUnchanged
bool branchListIndexesUnchanged() const
Definition: FileBlock.h:112
edm::FileBlock::branchChildren_
std::shared_ptr< BranchChildren const > branchChildren_
Definition: FileBlock.h:133
edm::FileBlock::whyNotFastClonable
int whyNotFastClonable() const
Definition: FileBlock.h:109
edm::FileBlock::FileTooOld
Definition: FileBlock.h:33
edm::FileBlock::lumiMetaTree_
TTree * lumiMetaTree_
Definition: FileBlock.h:125
edm::FileBlock::HasSecondaryFileSequence
Definition: FileBlock.h:30
edm::FileBlock::EventsOrLumisSelectedByID
Definition: FileBlock.h:37
edm::FileBlock::NoEventsInFile
Definition: FileBlock.h:34
edm::FileBlock::runMetaTree_
TTree * runMetaTree_
Definition: FileBlock.h:127
edm::FileBlock::whyNotFastClonable_
int whyNotFastClonable_
Definition: FileBlock.h:128
edm::FileBlock::runTree_
TTree * runTree_
Definition: FileBlock.h:126
edm::FileBlock::EventSelectionUsed
Definition: FileBlock.h:49
edm::FileBlock::branchChildren
BranchChildren const & branchChildren() const
Definition: FileBlock.h:116
writedatasetfile.run
run
Definition: writedatasetfile.py:27
edm::FileBlock::modifiedIDs_
bool modifiedIDs_
Definition: FileBlock.h:132
edm::FileBlock::DisabledInConfigFile
Definition: FileBlock.h:48
ev
bool ev
Definition: Hydjet2Hadronizer.cc:95
edm::FileBlock::ParallelProcesses
Definition: FileBlock.h:28
edm::FileBlock::lumiTree_
TTree * lumiTree_
Definition: FileBlock.h:124
edm::FileBlock::MaxEventsTooSmall
Definition: FileBlock.h:39
lumi
Definition: LumiSectionData.h:20
edm::FileBlock::hasNewlyDroppedBranch
std::array< bool, NumBranchTypes > const & hasNewlyDroppedBranch() const
Definition: FileBlock.h:110
BeamSplash_cfg.version
version
Definition: BeamSplash_cfg.py:45
edm::FileBlock::branchListIndexesUnchanged_
bool branchListIndexesUnchanged_
Definition: FileBlock.h:131
edm::FileBlock::MaxLumisTooSmall
Definition: FileBlock.h:40
edm::FileBlock::DuplicateEventsRemoved
Definition: FileBlock.h:42
edm::FileBlock::fileName_
std::string fileName_
Definition: FileBlock.h:130
edm::FileBlock::SplitLevelMismatch
Definition: FileBlock.h:53
edm::FileBlock::InitialEventsSkipped
Definition: FileBlock.h:38