You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by tr...@apache.org on 2008/07/29 20:31:27 UTC

svn commit: r680798 - /incubator/qpid/trunk/qpid/cpp/managementgen/schema.py

Author: tross
Date: Tue Jul 29 11:31:25 2008
New Revision: 680798

URL: http://svn.apache.org/viewvc?rev=680798&view=rev
Log:
QPID-1153 - Patch from Steve Huston

Modified:
    incubator/qpid/trunk/qpid/cpp/managementgen/schema.py

Modified: incubator/qpid/trunk/qpid/cpp/managementgen/schema.py
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/managementgen/schema.py?rev=680798&r1=680797&r2=680798&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/managementgen/schema.py (original)
+++ incubator/qpid/trunk/qpid/cpp/managementgen/schema.py Tue Jul 29 11:31:25 2008
@@ -136,15 +136,15 @@
     if self.style == "mma":
       stream.write ("    " + varName + "Count = 0;\n")
       stream.write ("    " + varName + "Total = 0;\n")
-      stream.write ("    " + varName + "Min   = -1;\n")
-      stream.write ("    " + varName + "Max   = 0;\n")
+      stream.write ("    " + varName + "Min   = std::numeric_limits<" + self.type.type.cpp + ">::max();\n")
+      stream.write ("    " + varName + "Max   = std::numeric_limits<" + self.type.type.cpp + ">::min();\n")
 
-  def genPerThreadHiLoStatResets (self, stream, varName):
+  def genPerThreadHiLoStatResets (self, stream, varName, cpptype):
     if self.style == "mma":
       stream.write ("        threadStats->" + varName + "Count = 0;\n")
       stream.write ("        threadStats->" + varName + "Total = 0;\n")
-      stream.write ("        threadStats->" + varName + "Min   = -1;\n")
-      stream.write ("        threadStats->" + varName + "Max   = 0;\n")
+      stream.write ("        threadStats->" + varName + "Min   = std::numeric_limits<" + cpptype + ">::max();\n")
+      stream.write ("        threadStats->" + varName + "Max   = std::numeric_limits<" + cpptype + ">::min();\n")
 
   def genWrite (self, stream, varName):
     if self.style != "mma":
@@ -377,7 +377,7 @@
     self.type.type.genHiLoStatResets (stream, self.name)
 
   def genPerThreadHiLoStatResets (self, stream):
-    self.type.type.genPerThreadHiLoStatResets (stream, self.name)
+    self.type.type.genPerThreadHiLoStatResets (stream, self.name, self.type.type.cpp)
 
   def genSchemaText (self, stream, name, desc):
     stream.write ("    ft = FieldTable ();\n")
@@ -439,15 +439,15 @@
       stream.write (indent + prefix + self.name + "Low  = " + val + ";\n")
     if self.type.type.style == "mma":
       stream.write (indent + prefix + self.name + "Count = 0;\n")
-      stream.write (indent + prefix + self.name + "Min   = -1;\n")
-      stream.write (indent + prefix + self.name + "Max   = 0;\n")
+      stream.write (indent + prefix + self.name + "Min   = std::numeric_limits<" + self.type.type.cpp + ">::max();\n")
+      stream.write (indent + prefix + self.name + "Max   = std::numeric_limits<" + self.type.type.cpp + ">::min();\n")
       stream.write (indent + prefix + self.name + "Total = 0;\n")
 
   def genInitializeTotalPerThreadStats (self, stream):
     if self.type.type.style == "mma":
       stream.write ("    totals->" + self.name + "Count = 0;\n")
-      stream.write ("    totals->" + self.name + "Min   = -1;\n")
-      stream.write ("    totals->" + self.name + "Max   = 0;\n")
+      stream.write ("    totals->" + self.name + "Min   = std::numeric_limits<" + self.type.type.cpp + ">::max();\n")
+      stream.write ("    totals->" + self.name + "Max   = std::numeric_limits<" + self.type.type.cpp + ">::min();\n")
       stream.write ("    totals->" + self.name + "Total = 0;\n")
     else:
       stream.write ("    totals->" + self.name + " = 0;\n")