67 using std::placeholders::_1;
76 TObject*
obj =
m_file->Get(realName.c_str());
80 TTree*
tree =
dynamic_cast<TTree*
>(
obj);
81 if (
nullptr ==
tree) {
92 <<
"The TTree for the record " << iRecordName <<
" does not exist " <<
m_file->GetName();
94 TTree*
tree =
dynamic_cast<TTree*
>(
obj);
95 if (
nullptr ==
tree) {
96 throw cms::Exception(
"UnknownRecord") <<
"The object corresponding to " << iRecordName <<
" in file " 97 <<
m_file->GetName() <<
" is not a TTree and therefore is not a Record";
100 throw cms::Exception(
"UnknownRecord") <<
"The TTree corresponding to " << iRecordName <<
" in file " 101 <<
m_file->GetName() <<
" does not have the proper structure to be a Record";
106 if ((*it)->name() ==
name) {
123 std::vector<std::string> returnValue;
128 while (TObject*
obj =
next()) {
129 TKey*
key =
static_cast<TKey*
>(
obj);
130 if (0 == strcmp(
key->GetClassName(),
"TTree")) {
void syncTo(const edm::EventID &, const edm::Timestamp &)
bool exists(const char *iRecordName) const
std::vector< Record * > m_records
RecordID recordID(const char *iRecordName) const
std::string unformat_mangled_to_type(const std::string &)
given a mangled name return the C++ class name
const Record & get(const RecordID &) const
std::string format_type_to_mangled(const std::string &)
given a C++ class name returned a mangled name
key
prepare the HTCondor submission files and eventually submit them
std::vector< std::string > namesOfAvailableRecords() const
void syncTo(const edm::EventID &, const edm::Timestamp &)
static const char *const kRecordAuxiliaryBranchName