CMS 3D CMS Logo

Namespaces | Classes | Typedefs | Functions | Variables

fwlite Namespace Reference

Namespaces

namespace  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
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

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.

                                                              {
      return boost::shared_ptr<cms::Exception>(&s_exc, doNotDelete);
   }   
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().

                                                                                               {
        std::string branchName(iMainLabels);
        branchName+=iProcess;
        //branchName+=".obj";
        branchName+=".";
        return iTree->GetBranch(branchName.c_str());
    }
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().

                                                           {
     std::string returnValue;
     returnValue.append(static_cast<std::string::size_type>(iType.size()*2),' ');
     std::string::size_type fromIndex=0;
     std::string::size_type toIndex=0;
     size_t sIndex=0;
     for(;fromIndex<iType.size();++fromIndex) {
        bool foundMatch = false;
        for(sIndex=0;sIndex<s_symbolToMangledSize;) {
           const std::string& symbol = s_symbolDemangled[sIndex];
           if(iType.substr(fromIndex,symbol.size())==symbol) {
              foundMatch = true;
              break;
           }
           ++sIndex;
        }
        if(!foundMatch) {
           returnValue[toIndex]=iType[fromIndex];
           ++toIndex;
        } else {
           const std::string& mangled=s_symbolMangled[sIndex];
           returnValue.replace(toIndex,mangled.size(),mangled);
           toIndex += mangled.size();
           fromIndex += s_symbolDemangled[sIndex].size()-1;
        }
     }
     returnValue.resize(toIndex);
     return returnValue;
  }
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().

                                                                         {
    {
      TClass* cl = gROOT->GetClass("edm::RefCore");
      TClassStreamer* st = cl->GetStreamer();
      if (st == 0) {
        cl->AdoptStreamer(new edm::RefCoreStreamer());
      }
    }
    {
      TClass* cl = gROOT->GetClass("edm::RefCoreWithIndex");
      TClassStreamer* st = cl->GetStreamer();
      if (st == 0) {
        cl->AdoptStreamer(new edm::RefCoreWithIndexStreamer());
      }
    }
    return edm::EDProductGetter::switchProductGetter(ep);
  }
void fwlite::staticAssert ( )

Definition at line 50 of file format_type_name.cc.

References s_symbolDemangled, and s_symbolMangled.

                      {
    BOOST_STATIC_ASSERT(sizeof(s_symbolMangled) == sizeof(s_symbolDemangled));
  }
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().

                                                                {
     std::string returnValue;
     returnValue.append(static_cast<std::string::size_type>(iMangled.size()*2),' ');
     std::string::size_type fromIndex=0;
     std::string::size_type toIndex=0;
     size_t sIndex=0;
     for(;fromIndex<iMangled.size();++fromIndex) {
        bool foundMatch = false;
        for(sIndex=0;sIndex<s_symbolToMangledSize;) {
           const std::string& mangled = s_symbolMangled[sIndex];
           if(iMangled.substr(fromIndex,mangled.size())==mangled) {
              foundMatch = true;
              break;
           }
           ++sIndex;
        }
        if(!foundMatch) {
           returnValue[toIndex]=iMangled[fromIndex];
           ++toIndex;
        } else {
           const std::string& symbol=s_symbolDemangled[sIndex];
           returnValue.replace(toIndex,symbol.size(),symbol);
           toIndex += symbol.size();
           fromIndex += s_symbolMangled[sIndex].size()-1;
        }
     }
     returnValue.resize(toIndex);
     return returnValue;
  }

Variable Documentation

Definition at line 57 of file DataGetterHelper.cc.

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