CMS 3D CMS Logo

View.cc
Go to the documentation of this file.
2 #include <typeinfo>
3 
4 namespace edm {
5  //------------------------------------------------------------------
6  // Implementation of ViewBase.
7  //------------------------------------------------------------------
8 
10 
11  std::unique_ptr<ViewBase> ViewBase::clone() const {
12  auto p = doClone();
13 #if !defined(NDEBUG)
14  //move side-effect out of typeid to avoid compiler warning
15  auto p_get = p.get();
16  assert(typeid(*p_get) == typeid(*this) && "doClone() incorrectly overriden");
17 #endif
18  return p;
19  }
20 
22 
24 
25 } // namespace edm
edm
HLT enums.
Definition: AlignableModifier.h:19
cms::cuda::assert
assert(be >=bs)
edm::ViewBase::doClone
virtual std::unique_ptr< ViewBase > doClone() const =0
edm::ViewBase::clone
std::unique_ptr< ViewBase > clone() const
Definition: View.cc:11
AlCaHLTBitMon_ParallelJobs.p
def p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
edm::ViewBase::ViewBase
ViewBase()
Definition: View.cc:21
edm::ViewBase
Definition: View.h:43
View.h
edm::ViewBase::~ViewBase
virtual ~ViewBase()
Definition: View.cc:9