CMS 3D CMS Logo

OutletBase.h
Go to the documentation of this file.
1 #ifndef Utilities_OutletBase_h
2 #define Utilities_OutletBase_h
3 // -*- C++ -*-
4 //
5 // Package: Utilities
6 // Class : OutletBase
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Fri Sep 22 12:39:16 EDT 2006
19 //
20 
21 // system include files
22 
23 // user include files
25 
26 // forward declarations
27 namespace edm {
28  template <class T>
29  class OutletBase {
30  protected:
31  OutletBase(ExtensionCord<T>& iCord) : cord_(iCord) {}
32  virtual ~OutletBase() { this->setGetter(nullptr); }
33 
34  void setGetter(extensioncord::ECGetterBase<T>* iGetter) { cord_.setGetter(iGetter); }
35 
36  private:
37  OutletBase(const OutletBase&) = delete; // stop default
38 
39  const OutletBase& operator=(const OutletBase&) = delete; // stop default
40 
41  // ---------- member data --------------------------------
43  };
44 } // namespace edm
45 
46 #endif
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::OutletBase::cord_
ExtensionCord< T > & cord_
Definition: OutletBase.h:42
edm::extensioncord::ECGetterBase
Definition: ECGetterBase.h:29
ExtensionCord.h
edm::ExtensionCord
Definition: ExtensionCord.h:35
edm::OutletBase::setGetter
void setGetter(extensioncord::ECGetterBase< T > *iGetter)
Definition: OutletBase.h:34
OutletBase
edm::OutletBase::~OutletBase
virtual ~OutletBase()
Definition: OutletBase.h:32
edm::OutletBase
Definition: ExtensionCord.h:32
edm::OutletBase::operator=
const OutletBase & operator=(const OutletBase &)=delete
edm::OutletBase::OutletBase
OutletBase(ExtensionCord< T > &iCord)
Definition: OutletBase.h:31