CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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
 
BranchIDLists const & branchIDLists () 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, boost::shared_ptr< BranchChildren > branchChildren, boost::shared_ptr< BranchIDLists const > branchIDLists)
 
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

boost::shared_ptr< BranchChildrenbranchChildren_
 
boost::shared_ptr
< BranchIDLists const > 
branchIDLists_
 
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 21 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 24 of file FileBlock.h.

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

Constructor & Destructor Documentation

edm::FileBlock::FileBlock ( )
inline

Definition at line 59 of file FileBlock.h.

59  :
61  tree_(nullptr), metaTree_(nullptr),
62  lumiTree_(nullptr), lumiMetaTree_(nullptr),
63  runTree_(nullptr), runMetaTree_(nullptr),
66  fileName_(),
68  modifiedIDs_(false),
69  branchChildren_(new BranchChildren),
std::vector< BranchIDList > BranchIDLists
Definition: BranchIDList.h:19
std::string fileName_
Definition: FileBlock.h:132
FileFormatVersion fileFormatVersion_
Definition: FileBlock.h:122
TTree * lumiTree_
Definition: FileBlock.h:126
TTree * lumiMetaTree_
Definition: FileBlock.h:127
int whyNotFastClonable_
Definition: FileBlock.h:130
TTree * runMetaTree_
Definition: FileBlock.h:129
bool modifiedIDs_
Definition: FileBlock.h:134
boost::shared_ptr< BranchChildren > branchChildren_
Definition: FileBlock.h:135
TTree * runTree_
Definition: FileBlock.h:128
boost::shared_ptr< BranchIDLists const > branchIDLists_
Definition: FileBlock.h:136
bool branchListIndexesUnchanged_
Definition: FileBlock.h:133
std::array< bool, NumBranchTypes > hasNewlyDroppedBranch_
Definition: FileBlock.h:131
TTree * tree_
Definition: FileBlock.h:124
TTree * metaTree_
Definition: FileBlock.h:125
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,
boost::shared_ptr< BranchChildren branchChildren,
boost::shared_ptr< BranchIDLists const >  branchIDLists 
)
inline

Definition at line 72 of file FileBlock.h.

82  :
84  tree_(const_cast<TTree*>(ev)),
85  metaTree_(const_cast<TTree*>(meta)),
86  lumiTree_(const_cast<TTree*>(lumi)),
87  lumiMetaTree_(const_cast<TTree*>(lumiMeta)),
88  runTree_(const_cast<TTree*>(run)),
89  runMetaTree_(const_cast<TTree*>(runMeta)),
tuple lumi
Definition: fjr2json.py:35
BranchIDLists const & branchIDLists() const
Definition: FileBlock.h:118
int whyNotFastClonable() const
Definition: FileBlock.h:108
std::array< bool, NumBranchTypes > const & hasNewlyDroppedBranch() const
Definition: FileBlock.h:109
std::string fileName_
Definition: FileBlock.h:132
BranchChildren const & branchChildren() const
Definition: FileBlock.h:117
FileFormatVersion fileFormatVersion_
Definition: FileBlock.h:122
TTree * lumiTree_
Definition: FileBlock.h:126
bool modifiedIDs() const
Definition: FileBlock.h:112
TTree * lumiMetaTree_
Definition: FileBlock.h:127
int whyNotFastClonable_
Definition: FileBlock.h:130
TTree * runMetaTree_
Definition: FileBlock.h:129
bool modifiedIDs_
Definition: FileBlock.h:134
boost::shared_ptr< BranchChildren > branchChildren_
Definition: FileBlock.h:135
TTree * runTree_
Definition: FileBlock.h:128
boost::shared_ptr< BranchIDLists const > branchIDLists_
Definition: FileBlock.h:136
bool branchListIndexesUnchanged_
Definition: FileBlock.h:133
std::array< bool, NumBranchTypes > hasNewlyDroppedBranch_
Definition: FileBlock.h:131
TTree * tree_
Definition: FileBlock.h:124
bool branchListIndexesUnchanged() const
Definition: FileBlock.h:111
TTree * metaTree_
Definition: FileBlock.h:125
std::string const & fileName() const
Definition: FileBlock.h:110
edm::FileBlock::~FileBlock ( )
inline

Definition at line 98 of file FileBlock.h.

98 {}

Member Function Documentation

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

Definition at line 117 of file FileBlock.h.

References branchChildren_.

117 { return *branchChildren_; }
boost::shared_ptr< BranchChildren > branchChildren_
Definition: FileBlock.h:135
BranchIDLists const& edm::FileBlock::branchIDLists ( ) const
inline

Definition at line 118 of file FileBlock.h.

References branchIDLists_.

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

118 { return *branchIDLists_; }
boost::shared_ptr< BranchIDLists const > branchIDLists_
Definition: FileBlock.h:136
bool edm::FileBlock::branchListIndexesUnchanged ( ) const
inline

Definition at line 111 of file FileBlock.h.

References branchListIndexesUnchanged_.

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

Definition at line 100 of file FileBlock.h.

References fileFormatVersion_.

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

Definition at line 110 of file FileBlock.h.

References fileName_.

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

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

Definition at line 109 of file FileBlock.h.

References hasNewlyDroppedBranch_.

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

Definition at line 104 of file FileBlock.h.

References lumiMetaTree_.

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

Definition at line 103 of file FileBlock.h.

References lumiTree_.

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

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

Definition at line 102 of file FileBlock.h.

References metaTree_.

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

Definition at line 112 of file FileBlock.h.

References modifiedIDs_.

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

Definition at line 106 of file FileBlock.h.

References runMetaTree_.

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

Definition at line 105 of file FileBlock.h.

References runTree_.

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

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

Definition at line 114 of file FileBlock.h.

References whyNotFastClonable_.

114  {
115  whyNotFastClonable_ |= why;
116  }
int whyNotFastClonable_
Definition: FileBlock.h:130
TTree* edm::FileBlock::tree ( ) const
inline
int edm::FileBlock::whyNotFastClonable ( ) const
inline

Definition at line 108 of file FileBlock.h.

References whyNotFastClonable_.

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

108 {return whyNotFastClonable_;}
int whyNotFastClonable_
Definition: FileBlock.h:130

Member Data Documentation

boost::shared_ptr<BranchChildren> edm::FileBlock::branchChildren_
private

Definition at line 135 of file FileBlock.h.

Referenced by branchChildren().

boost::shared_ptr<BranchIDLists const> edm::FileBlock::branchIDLists_
private

Definition at line 136 of file FileBlock.h.

Referenced by branchIDLists().

bool edm::FileBlock::branchListIndexesUnchanged_
private

Definition at line 133 of file FileBlock.h.

Referenced by branchListIndexesUnchanged().

FileFormatVersion edm::FileBlock::fileFormatVersion_
private

Definition at line 122 of file FileBlock.h.

Referenced by fileFormatVersion().

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

Definition at line 132 of file FileBlock.h.

Referenced by fileName().

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

Definition at line 131 of file FileBlock.h.

Referenced by hasNewlyDroppedBranch().

TTree* edm::FileBlock::lumiMetaTree_
private

Definition at line 127 of file FileBlock.h.

Referenced by close(), and lumiMetaTree().

TTree* edm::FileBlock::lumiTree_
private

Definition at line 126 of file FileBlock.h.

Referenced by close(), and lumiTree().

TTree* edm::FileBlock::metaTree_
private

Definition at line 125 of file FileBlock.h.

Referenced by close(), and metaTree().

bool edm::FileBlock::modifiedIDs_
private

Definition at line 134 of file FileBlock.h.

Referenced by modifiedIDs().

TTree* edm::FileBlock::runMetaTree_
private

Definition at line 129 of file FileBlock.h.

Referenced by close(), and runMetaTree().

TTree* edm::FileBlock::runTree_
private

Definition at line 128 of file FileBlock.h.

Referenced by close(), and runTree().

TTree* edm::FileBlock::tree_
private

Definition at line 124 of file FileBlock.h.

Referenced by close(), and tree().

int edm::FileBlock::whyNotFastClonable_
private

Definition at line 130 of file FileBlock.h.

Referenced by setNotFastClonable(), and whyNotFastClonable().