CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Namespaces | Classes | Typedefs | Functions | Variables
fwlite Namespace Reference

Namespaces

 internal
 

Classes

class  AnalyzerWrapper
 
class  BranchMapReader
 
class  ChainEvent
 
class  DataGetterHelper
 
class  EntryFinder
 
class  ErrorThrower
 
class  ESHandle
 
class  Event
 
class  EventBase
 
class  EventContainer
 
class  EventHistoryGetter
 
class  EventSelector
 
class  EventSetup
 
class  FWLiteEventFinder
 
class  GetterOperate
 
class  Handle
 
class  HistoryGetterBase
 
class  InputSource
 
class  IOVSyncValue
 
class  LumiHistoryGetter
 
class  LuminosityBlock
 
class  LuminosityBlockBase
 
class  MultiChainEvent
 
class  ObjectCountSelector
 
class  OutputFiles
 
class  Record
 
class  RecordWriter
 
class  Run
 
class  RunBase
 
class  RunFactory
 
class  RunHistoryGetter
 
class  RunLumiSelector
 
class  Scanner
 fwlite::Scanner<C>, a way to inspect or plots elements of a collection C by using the StringParser. More...
 
class  TFileService
 
class  withTCache
 

Typedefs

typedef std::map
< internal::DataKey,
boost::shared_ptr
< internal::Data > > 
DataMap
 
typedef unsigned int RecordID
 

Functions

boost::shared_ptr< cms::Exceptioneshandle_not_set_exception ()
 
static TBranch * findBranch (TTree *iTree, std::string const &iMainLabels, std::string const &iProcess)
 
std::string format_type_to_mangled (const std::string &)
 given a C++ class name returned a mangled name More...
 
edm::EDProductGetter const * setRefStreamer (edm::EDProductGetter const *ep)
 
void staticAssert ()
 
std::string unformat_mangled_to_type (const std::string &)
 given a mangled name return the C++ class name More...
 

Variables

static internal::Data branchNotFound
 

Typedef Documentation

typedef std::map<internal::DataKey, boost::shared_ptr<internal::Data> > fwlite::DataMap

Definition at line 55 of file DataGetterHelper.cc.

typedef unsigned int fwlite::RecordID

Definition at line 63 of file EventSetup.h.

Function Documentation

boost::shared_ptr< cms::Exception > fwlite::eshandle_not_set_exception ( )

Definition at line 29 of file ESHandle.cc.

References doNotDelete(), and s_exc.

29  {
30  return boost::shared_ptr<cms::Exception>(&s_exc, doNotDelete);
31  }
static void doNotDelete(cms::Exception *)
Definition: ESHandle.cc:26
static cms::Exception s_exc("ESHandleUnset","The ESHandle is being accessed without ever being set by a Record")
static TBranch* fwlite::findBranch ( TTree *  iTree,
std::string const &  iMainLabels,
std::string const &  iProcess 
)
static

Definition at line 121 of file DataGetterHelper.cc.

Referenced by fwlite::DataGetterHelper::getBranchDataFor().

121  {
122  std::string branchName(iMainLabels);
123  branchName+=iProcess;
124  //branchName+=".obj";
125  branchName+=".";
126  return iTree->GetBranch(branchName.c_str());
127  }
std::string fwlite::format_type_to_mangled ( const std::string &  iType)

given a C++ class name returned a mangled name

Definition at line 55 of file format_type_name.cc.

References s_symbolDemangled, s_symbolMangled, and s_symbolToMangledSize.

Referenced by fwlite::Record::get(), fwlite::EventSetup::recordID(), fwlite::RecordWriter::RecordWriter(), and fwlite::RecordWriter::update().

55  {
56  std::string returnValue;
57  returnValue.append(static_cast<std::string::size_type>(iType.size()*2),' ');
58  std::string::size_type fromIndex=0;
59  std::string::size_type toIndex=0;
60  size_t sIndex=0;
61  for(;fromIndex<iType.size();++fromIndex) {
62  bool foundMatch = false;
63  for(sIndex=0;sIndex<s_symbolToMangledSize;) {
64  const std::string& symbol = s_symbolDemangled[sIndex];
65  if(iType.substr(fromIndex,symbol.size())==symbol) {
66  foundMatch = true;
67  break;
68  }
69  ++sIndex;
70  }
71  if(!foundMatch) {
72  returnValue[toIndex]=iType[fromIndex];
73  ++toIndex;
74  } else {
75  const std::string& mangled=s_symbolMangled[sIndex];
76  returnValue.replace(toIndex,mangled.size(),mangled);
77  toIndex += mangled.size();
78  fromIndex += s_symbolDemangled[sIndex].size()-1;
79  }
80  }
81  returnValue.resize(toIndex);
82  return returnValue;
83  }
uint16_t size_type
static const std::string s_symbolDemangled[]
static const std::string s_symbolMangled[]
static const unsigned int s_symbolToMangledSize
edm::EDProductGetter const * fwlite::setRefStreamer ( edm::EDProductGetter const *  ep)

Definition at line 10 of file RefStreamer.cc.

References cl, and edm::EDProductGetter::switchProductGetter().

Referenced by AutoLibraryLoader::enable(), fwlite::GetterOperate::GetterOperate(), and fwlite::GetterOperate::~GetterOperate().

10  {
11  {
12  TClass* cl = gROOT->GetClass("edm::RefCore");
13  TClassStreamer* st = cl->GetStreamer();
14  if (st == 0) {
15  cl->AdoptStreamer(new edm::RefCoreStreamer());
16  }
17  }
18  {
19  TClass* cl = gROOT->GetClass("edm::RefCoreWithIndex");
20  TClassStreamer* st = cl->GetStreamer();
21  if (st == 0) {
22  cl->AdoptStreamer(new edm::RefCoreWithIndexStreamer());
23  }
24  }
26  }
float cl
Definition: Combine.cc:71
static EDProductGetter const * switchProductGetter(EDProductGetter const *)
These can only be used internally by the framework.
void fwlite::staticAssert ( )

Definition at line 50 of file format_type_name.cc.

References s_symbolDemangled, and s_symbolMangled.

50  {
51  BOOST_STATIC_ASSERT(sizeof(s_symbolMangled) == sizeof(s_symbolDemangled));
52  }
static const std::string s_symbolDemangled[]
static const std::string s_symbolMangled[]
std::string fwlite::unformat_mangled_to_type ( const std::string &  iMangled)

given a mangled name return the C++ class name

Definition at line 86 of file format_type_name.cc.

References s_symbolDemangled, s_symbolMangled, and s_symbolToMangledSize.

Referenced by fwlite::EventSetup::exists(), fwlite::EventSetup::namesOfAvailableRecords(), and fwlite::Record::typeAndLabelOfAvailableData().

86  {
87  std::string returnValue;
88  returnValue.append(static_cast<std::string::size_type>(iMangled.size()*2),' ');
89  std::string::size_type fromIndex=0;
90  std::string::size_type toIndex=0;
91  size_t sIndex=0;
92  for(;fromIndex<iMangled.size();++fromIndex) {
93  bool foundMatch = false;
94  for(sIndex=0;sIndex<s_symbolToMangledSize;) {
95  const std::string& mangled = s_symbolMangled[sIndex];
96  if(iMangled.substr(fromIndex,mangled.size())==mangled) {
97  foundMatch = true;
98  break;
99  }
100  ++sIndex;
101  }
102  if(!foundMatch) {
103  returnValue[toIndex]=iMangled[fromIndex];
104  ++toIndex;
105  } else {
106  const std::string& symbol=s_symbolDemangled[sIndex];
107  returnValue.replace(toIndex,symbol.size(),symbol);
108  toIndex += symbol.size();
109  fromIndex += s_symbolMangled[sIndex].size()-1;
110  }
111  }
112  returnValue.resize(toIndex);
113  return returnValue;
114  }
uint16_t size_type
static const std::string s_symbolDemangled[]
static const std::string s_symbolMangled[]
static const unsigned int s_symbolToMangledSize

Variable Documentation

internal::Data fwlite::branchNotFound
static

Definition at line 57 of file DataGetterHelper.cc.

Referenced by fwlite::DataGetterHelper::getBranchDataFor().