H:/gfcppsancout/product/include/gfcpp/statistics/Statistics.hpp

Go to the documentation of this file.
00001 #ifndef _GEMFIRE_STATISTICS_STATISTICS_HPP_
00002 #define _GEMFIRE_STATISTICS_STATISTICS_HPP_
00003 /*=========================================================================
00004  * (c) Copyright 2004-2007, GemStone Systems, Inc. All Rights Reserved.
00005  * 1260 NW Waterhouse Ave., Suite 200,  Beaverton, OR 97006
00006  *=========================================================================
00007  */
00008 
00009 #include "../gfcpp_globals.hpp" 
00010 #include "StatisticsType.hpp"
00011 #include "StatisticDescriptor.hpp"                                                                               
00012                                                                                 
00016 namespace gemfire_statistics {
00021 class CPPCACHE_EXPORT Statistics {
00022 
00023  public  :
00030    virtual void close()=0;
00031 
00033 
00045    virtual int32 nameToId(const char* name)=0;
00046 
00047   
00059    virtual StatisticDescriptor* nameToDescriptor(const char* name)=0;
00060 
00064    virtual int64 getUniqueId()=0;
00065 
00069    virtual  StatisticsType* getType()=0;
00073    virtual  const char* getTextId()=0;
00078 virtual int64 getNumericId()=0;  
00089    virtual  bool isAtomic()=0;
00096    virtual  bool isShared()=0;
00100    virtual  bool isClosed()=0;
00101   
00103 
00114    virtual void setInt(int32 id, int32 value)=0;
00115 
00126    virtual void setInt(char* name, int32 value)=0;
00127 
00139    virtual void setInt(StatisticDescriptor* descriptor, int32 value)=0;
00140 
00154  virtual void setLong(int32 id, int64 value) = 0; 
00166    virtual void setLong(StatisticDescriptor* descriptor, int64 value)=0;
00167 
00178    virtual void setLong(char* name, int64 value)=0;
00179 
00190    virtual void setDouble(int32 id, double value)=0;
00191 
00203    virtual void setDouble(StatisticDescriptor* descriptor, double value)=0;
00214    virtual void setDouble(char* name, double value)=0;
00215 
00217 
00226    virtual int32 getInt(int32 id)=0;
00227 
00238    virtual int32 getInt(StatisticDescriptor* descriptor)=0;
00249    virtual int32 getInt(char* name)=0;
00250 
00259    virtual int64 getLong(int32 id)=0;
00260 
00261 
00272    virtual int64 getLong(StatisticDescriptor* descriptor)=0;
00283    virtual int64 getLong(char* name)=0;
00284 
00293    virtual double getDouble(int32 id)=0;
00294 
00305    virtual double getDouble(StatisticDescriptor* descriptor)=0;
00316    virtual double getDouble(char* name)=0;
00317 
00326 //   virtual Number get(StatisticDescriptor* descriptor)=0;
00327 
00334 //   virtual Number get(char* name)=0;
00335 
00344     virtual int64 getRawBits(StatisticDescriptor* descriptor)=0;
00345 
00352    // virtual double getRawBits(char* name)=0;
00353 
00355 
00369    virtual int32 incInt(int32 id, int32 delta)=0;
00370 
00384    virtual int32 incInt(StatisticDescriptor* descriptor, int32 delta)=0;
00385 
00398    virtual int32 incInt(char* name, int32 delta)=0;
00399 
00413    virtual int64 incLong(int32 id, int64 delta)=0;
00414 
00429    virtual int64 incLong(StatisticDescriptor* descriptor, int64 delta)=0;
00443    virtual int64 incLong(char* name, int64 delta)=0;
00444 
00458    virtual double incDouble(int32 id, double delta)=0;
00459 
00474    virtual double incDouble(StatisticDescriptor* descriptor, double delta)=0;
00488    virtual double incDouble(char* name, double delta)=0;
00489 
00490 protected:   
00494    virtual ~Statistics()=0; 
00495 };//class
00496 
00497 };//namespace
00498 
00499 #endif // _GEMFIRE_STATISTICS_STATISTICS_HPP_

GemFire C++ Cache API Documentation