![]() |
|
|||
File indexing completed on 2024-10-23 22:48:06
0001 #ifndef AllocMonitor_interface_AllocMonitorBase_h 0002 #define AllocMonitor_interface_AllocMonitorBase_h 0003 // -*- C++ -*- 0004 // 0005 // Package: AllocMonitor/interface 0006 // Class : AllocMonitorBase 0007 // 0008 /**\class AllocMonitorBase AllocMonitorBase.h "AllocMonitorBase.h" 0009 0010 Description: Base class for extensions that monitor allocations 0011 0012 Usage: 0013 The class is required to be thread safe as all member functions 0014 will be called concurrently when used in a multi-threaded program. 0015 0016 If allocations are done within the methods, no callbacks will be 0017 generated as the underlying system will temporarily suspend such 0018 calls on the thread running the method. 0019 0020 */ 0021 // 0022 // Original Author: Christopher Jones 0023 // Created: Mon, 21 Aug 2023 14:03:34 GMT 0024 // 0025 0026 // system include files 0027 #include <stddef.h> //size_t 0028 0029 // user include files 0030 0031 // forward declarations 0032 0033 namespace cms::perftools { 0034 0035 class AllocMonitorBase { 0036 public: 0037 AllocMonitorBase(); 0038 virtual ~AllocMonitorBase(); 0039 0040 AllocMonitorBase(const AllocMonitorBase&) = delete; // stop default 0041 AllocMonitorBase(AllocMonitorBase&&) = delete; // stop default 0042 AllocMonitorBase& operator=(const AllocMonitorBase&) = delete; // stop default 0043 AllocMonitorBase& operator=(AllocMonitorBase&&) = delete; // stop default 0044 0045 // ---------- member functions --------------------------- 0046 virtual void allocCalled(size_t iRequestedSize, size_t iActualSize, void const* iAddress) = 0; 0047 virtual void deallocCalled(size_t iActualSize, void const* iAddress) = 0; 0048 }; 0049 } // namespace cms::perftools 0050 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.2.1 LXR engine. The LXR team |
![]() ![]() |