thirdparty/google_appengine/google/appengine/api/quota.py
changeset 2864 2e0b0af889be
parent 2309 be1b94099f2d
--- a/thirdparty/google_appengine/google/appengine/api/quota.py	Sat Sep 05 14:04:24 2009 +0200
+++ b/thirdparty/google_appengine/google/appengine/api/quota.py	Sun Sep 06 23:31:53 2009 +0200
@@ -37,3 +37,35 @@
   if _apphosting_runtime___python__apiproxy:
     return _apphosting_runtime___python__apiproxy.get_request_cpu_usage()
   return 0
+
+def get_request_api_cpu_usage():
+  """Get the amount of CPU used so far by API calls during the current request.
+
+  Returns the number of megacycles used so far by API calls for the current
+  request. Does not include CPU used by code in the request itself.
+
+  Does nothing when used in the dev_appserver.
+  """
+
+  if _apphosting_runtime___python__apiproxy:
+    return _apphosting_runtime___python__apiproxy.get_request_api_cpu_usage()
+  return 0
+
+MCYCLES_PER_SECOND = 1200.0
+"""Megacycles to CPU seconds.  Convert by using a 1.2 GHz 64-bit x86 CPU."""
+
+def megacycles_to_cpu_seconds(mcycles):
+  """Convert an input value in megacycles to CPU-seconds.
+
+  Returns a double representing the CPU-seconds the input megacycle value
+  converts to.
+  """
+  return mcycles / MCYCLES_PER_SECOND
+
+def cpu_seconds_to_megacycles(cpu_secs):
+  """Convert an input value in CPU-seconds to megacycles.
+
+  Returns an integer representing the megacycles the input CPU-seconds value
+  converts to.
+  """
+  return int(cpu_secs * MCYCLES_PER_SECOND)