![]() |
|
|||
File indexing completed on 2023-03-17 11:03:50
0001 #ifndef FWCore_Utilities_do_nothing_deleter_h 0002 #define FWCore_Utilities_do_nothing_deleter_h 0003 0004 // ---------------------------------------------------------------------- 0005 // 0006 // do_nothing_deleter.h 0007 // 0008 // Purpose: do_nothing_deleter provides a way to use std::shared_ptr 0009 // or boost::shared_array for those cases where the object or array 0010 // may be either in dynamic (heap) storage, or in static storage, 0011 // as long as which of these applies is known when the shared_ptr or shared_array 0012 // is constructed. 0013 // 0014 // For objects: 0015 // 0016 // If the object is allocated in dynamic storage, use 0017 // std::shared_ptr<T> (new T(...)); 0018 0019 // If the object "t" is in static storage, use 0020 // std::shared_ptr<T> (&t, do_nothing_deleter()); 0021 // 0022 // For arrays: 0023 // 0024 // If the array is allocated in dynamic storage, use 0025 // boost::shared_array<T> (new T(...)[]); 0026 0027 // If the array "t" is in static storage, use 0028 // boost::shared_array<T> (t, do_nothing_deleter()); 0029 // 0030 // 0031 // ---------------------------------------------------------------------- 0032 0033 namespace edm { 0034 struct do_nothing_deleter { 0035 void operator()(void const*) const {} 0036 }; 0037 } // namespace edm 0038 0039 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.2.1 LXR engine. The LXR team |
![]() ![]() |