CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Attributes
l1t::UnpackerFactory Class Reference

#include <UnpackerFactory.h>

Public Member Functions

std::shared_ptr< Unpackermake (const std::string &) const
 

Static Public Member Functions

static const UnpackerFactoryget ()
 

Private Member Functions

 UnpackerFactory ()
 

Static Private Attributes

static const UnpackerFactory instance_
 

Detailed Description

Definition at line 12 of file UnpackerFactory.h.

Constructor & Destructor Documentation

l1t::UnpackerFactory::UnpackerFactory ( )
inlineprivate

Definition at line 17 of file UnpackerFactory.h.

17 {};

Member Function Documentation

static const UnpackerFactory* l1t::UnpackerFactory::get ( )
inlinestatic
std::shared_ptr< Unpacker > l1t::UnpackerFactory::make ( const std::string &  name) const

Definition at line 18 of file UnpackerFactory.cc.

References edm::errors::Configuration, Exception, reco::get(), and mergeVDriftHistosByStation::name.

Referenced by l1t::stage2::BMTFSetup::getUnpackers(), l1t::stage2::GTSetup::getUnpackers(), l1t::stage2::GMTSetup::getUnpackers(), l1t::stage2::EMTFSetup::getUnpackers(), l1t::stage1::CaloSetup::getUnpackers(), and l1t::stage2::CaloSetup::getUnpackers().

19  {
20  auto unpacker = std::shared_ptr<Unpacker>(UnpackerFactoryT::get()->create("l1t::" + name));
21 
22  if (unpacker.get() == 0) {
23  throw edm::Exception(edm::errors::Configuration, "NoSourceModule")
24  << "Cannot find an unpacker named " << name;
25  }
26 
27  return unpacker;
28  }
T get(const Candidate &c)
Definition: component.h:55

Member Data Documentation

const UnpackerFactory l1t::UnpackerFactory::instance_
staticprivate

Definition at line 17 of file UnpackerFactory.h.

Referenced by get().