ATLAS Offline Software
deleter.h
Go to the documentation of this file.
1 #ifndef EVENTCONTAINERS_DELETER_H
2 //#define EVENTCONTAINERS_DELETER_H
3 #include <bit>
4 
5 #if 0
6  struct deleter
7  {
8  void operator() (const void* p);
9  };
10 #endif
11 
12 
13  typedef void deleter_f (const void* p);
14 
16  : public std::unique_ptr<const void, deleter_f*>
17  {
18  public:
19  using std::unique_ptr<const void, deleter_f*>::unique_ptr;
20 
21  template <class T>
22  struct Deleter
23  {
24  static void deleter (const void* p)
25  {
26  delete std::bit_cast<const T*>(p);
27  }
28  };
29 
30  template <class T>
31  void_unique_ptr(std::unique_ptr<T> p)
32  : std::unique_ptr<const void, deleter_f*> (p.release(),
33  Deleter<T>::deleter)
34  {
35  }
36  };
37 
38 #endif
void_unique_ptr::Deleter::deleter
static void deleter(const void *p)
Definition: deleter.h:24
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
void_unique_ptr::Deleter
Definition: deleter.h:23
void_unique_ptr::void_unique_ptr
void_unique_ptr(std::unique_ptr< T > p)
Definition: deleter.h:31
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:209
deleter_f
void deleter_f(const void *p)
Definition: deleter.h:13
python.EventInfoMgtInit.release
release
Definition: EventInfoMgtInit.py:23
void_unique_ptr
Definition: deleter.h:17
columnar::operator()
decltype(auto) operator()(ObjectId< CI, CM > id) const noexcept
Definition: ColumnAccessor.h:173
TSU::T
unsigned long long T
Definition: L1TopoDataTypes.h:35