ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR > Class Template Reference

This class implements a cache for metrics timeprobe data. More...

#include <Metrics_Cache_T.h>

Collaboration diagram for ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ACE_Metrics_Cache<
ACE_LOCK, ALLOCATOR > 
ACE_METRICS_CACHE_TYPE

Public Member Functions

 ACE_Metrics_Cache (u_long table_size=METRICS_DEFAULT_TIMEPROBE_TABLE_SIZE, u_long number_of_probes=METRICS_DEFAULT_TIMEPROBE_COUNT, ALLOCATOR *allocatorPtr=(ALLOCATOR *) ALLOCATOR::instance())
 ~ACE_Metrics_Cache ()
void report_enqueue_start (u_long i)
void report_enqueue_stop (u_long i)
void report_enqueue_suspend (u_long i)
void report_enqueue_resume (u_long i)
void report_dequeue_start (u_long i)
void report_dequeue_stop (u_long i)
void report_dequeue_suspend (u_long i)
void report_dequeue_resume (u_long i)
void reset_base_statistics ()
void flip_supplier_and_consumer ()
void flush_ACE_Metrics_Cache ()
void metrics_enabled (int enabled)
int metrics_enabled (void) const

Protected Member Functions

ALLOCATOR * allocator (void)

Protected Attributes

u_long probe_set_size_
u_long * enqueue_count_ [2]
u_long * dequeue_count_ [2]
ACE_Metrics_Timeprobe< ACE_LOCK,
ALLOCATOR > ** 
enqueue_probes_ [2]
ACE_Metrics_Timeprobe< ACE_LOCK,
ALLOCATOR > ** 
dequeue_probes_ [2]
char ** enqueue_names_
char ** dequeue_names_
int consumer_index_
int supplier_index_
u_long table_size_
ACE_Time_Value interval_start_
ACE_Time_Value interval_end_
int interval_initialized_
int metrics_enabled_

Private Member Functions

 ACE_Metrics_Cache (const ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR > &)
void operator= (const ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR > &)

Private Attributes

ALLOCATOR * allocator_

Detailed Description

template<class ACE_LOCK, class ALLOCATOR>
class ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >

This class implements a cache for metrics timeprobe data.

This class allows probes to be recorded into a single cache that monitors and other higher level metrics classes can query.


Member Typedef Documentation

template<class ACE_LOCK, class ALLOCATOR>
typedef ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR> ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::ACE_METRICS_CACHE_TYPE


Constructor & Destructor Documentation

template<class ACE_LOCK, class ALLOCATOR>
ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::ACE_Metrics_Cache ( u_long  table_size = METRICS_DEFAULT_TIMEPROBE_TABLE_SIZE,
u_long  number_of_probes = METRICS_DEFAULT_TIMEPROBE_COUNT,
ALLOCATOR *  allocatorPtr = (ALLOCATOR *) ALLOCATOR::instance() 
)

template<class ACE_LOCK, class ALLOCATOR>
ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::~ACE_Metrics_Cache (  ) 

template<class ACE_LOCK, class ALLOCATOR>
ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::ACE_Metrics_Cache ( const ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR > &   )  [private]


Member Function Documentation

template<class ACE_LOCK, class ALLOCATOR>
ALLOCATOR * ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::allocator ( void   )  [protected]

template<class ACE_LOCK, class ALLOCATOR>
ACE_INLINE void ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::flip_supplier_and_consumer (  ) 

template<class ACE_LOCK, class ALLOCATOR>
void ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::flush_ACE_Metrics_Cache (  ) 

template<class ACE_LOCK, class ALLOCATOR>
ACE_INLINE int ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::metrics_enabled ( void   )  const

template<class ACE_LOCK, class ALLOCATOR>
ACE_INLINE void ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::metrics_enabled ( int  enabled  ) 

template<class ACE_LOCK, class ALLOCATOR>
void ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::operator= ( const ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR > &   )  [private]

template<class ACE_LOCK, class ALLOCATOR>
ACE_INLINE void ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::report_dequeue_resume ( u_long  i  ) 

template<class ACE_LOCK, class ALLOCATOR>
ACE_INLINE void ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::report_dequeue_start ( u_long  i  ) 

template<class ACE_LOCK, class ALLOCATOR>
ACE_INLINE void ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::report_dequeue_stop ( u_long  i  ) 

template<class ACE_LOCK, class ALLOCATOR>
ACE_INLINE void ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::report_dequeue_suspend ( u_long  i  ) 

template<class ACE_LOCK, class ALLOCATOR>
ACE_INLINE void ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::report_enqueue_resume ( u_long  i  ) 

template<class ACE_LOCK, class ALLOCATOR>
ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE void ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::report_enqueue_start ( u_long  i  ) 

template<class ACE_LOCK, class ALLOCATOR>
ACE_INLINE void ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::report_enqueue_stop ( u_long  i  ) 

template<class ACE_LOCK, class ALLOCATOR>
ACE_INLINE void ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::report_enqueue_suspend ( u_long  i  ) 

template<class ACE_LOCK, class ALLOCATOR>
ACE_INLINE void ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::reset_base_statistics (  ) 


Member Data Documentation

template<class ACE_LOCK, class ALLOCATOR>
ALLOCATOR* ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::allocator_ [private]

template<class ACE_LOCK, class ALLOCATOR>
int ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::consumer_index_ [protected]

template<class ACE_LOCK, class ALLOCATOR>
u_long* ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::dequeue_count_[2] [protected]

template<class ACE_LOCK, class ALLOCATOR>
char** ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::dequeue_names_ [protected]

template<class ACE_LOCK, class ALLOCATOR>
ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR>** ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::dequeue_probes_[2] [protected]

template<class ACE_LOCK, class ALLOCATOR>
u_long* ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::enqueue_count_[2] [protected]

template<class ACE_LOCK, class ALLOCATOR>
char** ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::enqueue_names_ [protected]

template<class ACE_LOCK, class ALLOCATOR>
ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR>** ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::enqueue_probes_[2] [protected]

template<class ACE_LOCK, class ALLOCATOR>
ACE_Time_Value ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::interval_end_ [protected]

template<class ACE_LOCK, class ALLOCATOR>
int ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::interval_initialized_ [protected]

template<class ACE_LOCK, class ALLOCATOR>
ACE_Time_Value ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::interval_start_ [protected]

template<class ACE_LOCK, class ALLOCATOR>
int ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::metrics_enabled_ [protected]

template<class ACE_LOCK, class ALLOCATOR>
u_long ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::probe_set_size_ [protected]

template<class ACE_LOCK, class ALLOCATOR>
int ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::supplier_index_ [protected]

template<class ACE_LOCK, class ALLOCATOR>
u_long ACE_Metrics_Cache< ACE_LOCK, ALLOCATOR >::table_size_ [protected]


The documentation for this class was generated from the following files:
Generated on Sun Jul 9 09:23:48 2006 for ACE by  doxygen 1.4.7-1