CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions
edm::PresenceFactory Class Reference

#include <PresenceFactory.h>

Public Member Functions

std::unique_ptr< PresencemakePresence (std::string const &presence_type) const
 
 ~PresenceFactory ()
 

Static Public Member Functions

static PresenceFactoryget ()
 

Private Member Functions

 PresenceFactory ()
 

Detailed Description

Definition at line 15 of file PresenceFactory.h.

Constructor & Destructor Documentation

edm::PresenceFactory::~PresenceFactory ( )

Definition at line 12 of file PresenceFactory.cc.

12  {
13  }
edm::PresenceFactory::PresenceFactory ( )
private

Definition at line 15 of file PresenceFactory.cc.

15  {
16  }

Member Function Documentation

PresenceFactory * edm::PresenceFactory::get ( )
static
std::unique_ptr< Presence > edm::PresenceFactory::makePresence ( std::string const &  presence_type) const

Definition at line 26 of file PresenceFactory.cc.

References edm::errors::Configuration, beamerCreator::create(), Exception, FDEBUG, and reco::get().

Referenced by get().

26  {
27  std::unique_ptr<Presence> sp(PresencePluginFactory::get()->create(presence_type));
28 
29  if(sp.get()==nullptr) {
30  throw edm::Exception(errors::Configuration, "NoPresenceModule")
31  << "Presence Factory:\n"
32  << "Cannot find presence type: "
33  << presence_type << "\n"
34  << "Perhaps the name is misspelled or is not a Plugin?\n"
35  << "Try running EdmPluginDump to obtain a list of available Plugins.";
36  }
37 
38  FDEBUG(1) << "PresenceFactory: created presence "
39  << presence_type
40  << std::endl;
41 
42  return sp;
43  }
def create(alignables, pedeDump, additionalData, outputFile, config)
#define FDEBUG(lev)
Definition: DebugMacros.h:20
T get(const Candidate &c)
Definition: component.h:55