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
 
Resources operator+ (Resources const &other) const
 
AtomicResourcesoperator+= (AtomicResources const &other)
 
AtomicResourcesoperator+= (Resources 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 241 of file FastTimerService.h.

Constructor & Destructor Documentation

◆ AtomicResources() [1/2]

FastTimerService::AtomicResources::AtomicResources ( )

Definition at line 129 of file FastTimerService.cc.

130  : 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

◆ AtomicResources() [2/2]

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

Definition at line 132 of file FastTimerService.cc.

133  : time_thread(other.time_thread.load()),
134  time_real(other.time_real.load()),
135  allocated(other.allocated.load()),
136  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

◆ operator+() [1/2]

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

Definition at line 169 of file FastTimerService.cc.

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

169  {
170  AtomicResources result(*this);
171  result += other;
172  return result;
173 }

◆ operator+() [2/2]

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

Definition at line 175 of file FastTimerService.cc.

References trackingPlots::other.

175  {
176  return other + *this;
177 }

◆ operator+=() [1/2]

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

Definition at line 153 of file FastTimerService.cc.

References trackingPlots::other.

153  {
154  time_thread += other.time_thread.load();
155  time_real += other.time_real.load();
156  allocated += other.allocated.load();
157  deallocated += other.deallocated.load();
158  return *this;
159 }
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

◆ operator+=() [2/2]

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

Definition at line 161 of file FastTimerService.cc.

References trackingPlots::other.

161  {
162  time_thread += other.time_thread.count();
163  time_real += other.time_real.count();
164  allocated += other.allocated;
165  deallocated += other.deallocated;
166  return *this;
167 }
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

◆ operator=()

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

Definition at line 145 of file FastTimerService.cc.

References trackingPlots::other.

145  {
146  time_thread = other.time_thread.load();
147  time_real = other.time_real.load();
148  allocated = other.allocated.load();
149  deallocated = other.deallocated.load();
150  return *this;
151 }
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

◆ reset()

void FastTimerService::AtomicResources::reset ( void  )

Definition at line 138 of file FastTimerService.cc.

138  {
139  time_thread = 0ul;
140  time_real = 0ul;
141  allocated = 0ul;
142  deallocated = 0ul;
143 }
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

◆ allocated

std::atomic<uint64_t> FastTimerService::AtomicResources::allocated

Definition at line 256 of file FastTimerService.h.

◆ deallocated

std::atomic<uint64_t> FastTimerService::AtomicResources::deallocated

Definition at line 257 of file FastTimerService.h.

◆ time_real

std::atomic<boost::chrono::nanoseconds::rep> FastTimerService::AtomicResources::time_real

Definition at line 255 of file FastTimerService.h.

◆ time_thread

std::atomic<boost::chrono::nanoseconds::rep> FastTimerService::AtomicResources::time_thread

Definition at line 254 of file FastTimerService.h.