00001 #ifndef _GEMFIRE_STATISTICS_STATISTICS_HPP_
00002 #define _GEMFIRE_STATISTICS_STATISTICS_HPP_
00003
00004
00005
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
00327
00334
00335
00344 virtual int64 getRawBits(StatisticDescriptor* descriptor)=0;
00345
00352
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 };
00496
00497 };
00498
00499 #endif // _GEMFIRE_STATISTICS_STATISTICS_HPP_