CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
FastTimerService::AtomicResources Struct Reference

Public Member Functions

 AtomicResources ()
 
 AtomicResources (AtomicResources const &other)
 
AtomicResources operator+ (AtomicResources const &other) const
 
AtomicResourcesoperator+= (AtomicResources const &other)
 
AtomicResourcesoperator= (AtomicResources const &other)
 
void reset ()
 

Public Attributes

std::atomic< uint64_t > allocated
 
std::atomic< uint64_t > deallocated
 
std::atomic< boost::chrono::nanoseconds::rep > time_real
 
std::atomic< boost::chrono::nanoseconds::rep > time_thread
 

Detailed Description

Definition at line 228 of file FastTimerService.h.

Constructor & Destructor Documentation

FastTimerService::AtomicResources::AtomicResources ( )

Definition at line 99 of file FastTimerService.cc.

100  : time_thread(0ul), time_real(0ul), allocated(0ul), deallocated(0ul) {}
std::atomic< uint64_t > deallocated
std::atomic< uint64_t > allocated
std::atomic< boost::chrono::nanoseconds::rep > time_thread
std::atomic< boost::chrono::nanoseconds::rep > time_real
FastTimerService::AtomicResources::AtomicResources ( AtomicResources const &  other)

Definition at line 102 of file FastTimerService.cc.

103  : time_thread(other.time_thread.load()),
104  time_real(other.time_real.load()),
105  allocated(other.allocated.load()),
106  deallocated(other.deallocated.load()) {}
std::atomic< uint64_t > deallocated
std::atomic< uint64_t > allocated
std::atomic< boost::chrono::nanoseconds::rep > time_thread
std::atomic< boost::chrono::nanoseconds::rep > time_real

Member Function Documentation

FastTimerService::AtomicResources FastTimerService::AtomicResources::operator+ ( AtomicResources const &  other) const

Definition at line 131 of file FastTimerService.cc.

References trackingPlots::other, and mps_fire::result.

131  {
132  AtomicResources result(*this);
133  result += other;
134  return result;
135 }
FastTimerService::AtomicResources & FastTimerService::AtomicResources::operator+= ( AtomicResources const &  other)

Definition at line 123 of file FastTimerService.cc.

References allocated, deallocated, time_real, and time_thread.

123  {
124  time_thread += other.time_thread.load();
125  time_real += other.time_real.load();
126  allocated += other.allocated.load();
127  deallocated += other.deallocated.load();
128  return *this;
129 }
std::atomic< uint64_t > deallocated
std::atomic< uint64_t > allocated
std::atomic< boost::chrono::nanoseconds::rep > time_thread
std::atomic< boost::chrono::nanoseconds::rep > time_real
FastTimerService::AtomicResources & FastTimerService::AtomicResources::operator= ( AtomicResources const &  other)

Definition at line 115 of file FastTimerService.cc.

References allocated, deallocated, time_real, and time_thread.

115  {
116  time_thread = other.time_thread.load();
117  time_real = other.time_real.load();
118  allocated = other.allocated.load();
119  deallocated = other.deallocated.load();
120  return *this;
121 }
std::atomic< uint64_t > deallocated
std::atomic< uint64_t > allocated
std::atomic< boost::chrono::nanoseconds::rep > time_thread
std::atomic< boost::chrono::nanoseconds::rep > time_real
void FastTimerService::AtomicResources::reset ( void  )

Definition at line 108 of file FastTimerService.cc.

References allocated, deallocated, time_real, and time_thread.

Referenced by FastTimerService::ResourcesPerJob::reset().

108  {
109  time_thread = 0ul;
110  time_real = 0ul;
111  allocated = 0ul;
112  deallocated = 0ul;
113 }
std::atomic< uint64_t > deallocated
std::atomic< uint64_t > allocated
std::atomic< boost::chrono::nanoseconds::rep > time_thread
std::atomic< boost::chrono::nanoseconds::rep > time_real

Member Data Documentation

std::atomic<uint64_t> FastTimerService::AtomicResources::allocated
std::atomic<uint64_t> FastTimerService::AtomicResources::deallocated
std::atomic<boost::chrono::nanoseconds::rep> FastTimerService::AtomicResources::time_real
std::atomic<boost::chrono::nanoseconds::rep> FastTimerService::AtomicResources::time_thread