23 if (bit->moduleLabel() == moduleLabel) {
64 << file->GetName() <<
"' contains no processing history"
65 " and therefore should have no accessible data.\n";
67 std::copy(history.rbegin(),history.rend(),
71 const std::vector<edm::BranchDescription>& descriptions =
77 TTree* eventsTree =
dynamic_cast<TTree*
>(
const_cast<TFile*
>(
file)->Get(
"Events"));
80 std::set<std::string> branchNamesInFile;
81 TIter nextBranch(eventsTree->GetListOfBranches());
82 while(TBranch* branch = static_cast<TBranch*>(nextBranch()))
83 branchNamesInFile.insert(branch->GetName());
85 typedef std::set<std::string> Purposes;
89 for(
size_t bi = 0, be = descriptions.size(); bi != be; ++bi)
94 || branchNamesInFile.end() == branchNamesInFile.find(desc.
branchName()))
97 const std::vector<FWRepresentationInfo>&
infos
116 for (
size_t ii = 0, ei = infos.size();
ii != ei; ++
ii) {
120 if (infos[
ii].requiresFF() ==
false) {
121 purposes.insert(infos[
ii].purpose());
125 if (purposes.empty())
126 purposes.insert(
"Table");
128 for (Purposes::const_iterator itPurpose = purposes.begin(),
129 itEnd = purposes.end();
137 TClass* theClass = TClass::GetClass(desc.
fullClassName().c_str());
142 if (!theClass->GetTypeInfo())
145 const static bool debug =
false;
151 <<
" will not be displayed in table." << std::endl;
std::string const & branchName() const
static bool classAccessedAsCollection(const TClass *)
const std::vector< FWRepresentationInfo > & representationsForType(const std::string &iTypeName) const
std::string const & processName() const
std::string const & moduleLabel() const
std::string const & productInstanceName() const
std::vector< edm::BranchDescription > const & getBranchDescriptions() const
std::vector< std::string > const & getProcessHistory() const
std::string const & fullClassName() const