Hans Leidekker : pdh: Add a stub processor time counter.

Alexandre Julliard julliard at wine.codeweavers.com
Mon Jul 23 05:55:40 CDT 2007


Module: wine
Branch: master
Commit: d95aa67a0a7fab36f1d06a19b2e36fa2b35a86a9
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=d95aa67a0a7fab36f1d06a19b2e36fa2b35a86a9

Author: Hans Leidekker <hans at it.vu.nl>
Date:   Sat Jul 21 15:07:35 2007 +0200

pdh: Add a stub processor time counter.

---

 dlls/pdh/pdh_main.c |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/dlls/pdh/pdh_main.c b/dlls/pdh/pdh_main.c
index 238bf16..0c5a70e 100644
--- a/dlls/pdh/pdh_main.c
+++ b/dlls/pdh/pdh_main.c
@@ -152,21 +152,35 @@ struct source
     LONGLONG        base;                           /* samples per second */
 };
 
+static const WCHAR path_processor_time[] =
+    {'\\','P','r','o','c','e','s','s','o','r','(','_','T','o','t','a','l',')',
+     '\\','%',' ','P','r','o','c','e','s','s','o','r',' ','T','i','m','e',0};
 static const WCHAR path_uptime[] =
     {'\\','S','y','s','t','e','m', '\\', 'S','y','s','t','e','m',' ','U','p',' ','T','i','m','e',0};
 
+static void CALLBACK collect_processor_time( struct counter *counter )
+{
+    counter->two.largevalue = 500000; /* FIXME */
+    counter->status = PDH_CSTATUS_VALID_DATA;
+}
+
 static void CALLBACK collect_uptime( struct counter *counter )
 {
     counter->two.largevalue = GetTickCount64();
     counter->status = PDH_CSTATUS_VALID_DATA;
 }
 
+#define TYPE_PROCESSOR_TIME \
+    (PERF_SIZE_LARGE | PERF_TYPE_COUNTER | PERF_COUNTER_RATE | PERF_TIMER_100NS | PERF_DELTA_COUNTER | \
+     PERF_INVERSE_COUNTER | PERF_DISPLAY_PERCENT)
+
 #define TYPE_UPTIME \
     (PERF_SIZE_LARGE | PERF_TYPE_COUNTER | PERF_COUNTER_ELAPSED | PERF_OBJECT_TIMER | PERF_DISPLAY_SECONDS)
 
 /* counter source registry */
 static const struct source counter_sources[] =
 {
+    { path_processor_time, collect_processor_time, TYPE_PROCESSOR_TIME, -5, 10000000 },
     { path_uptime, collect_uptime, TYPE_UPTIME, -3, 1000 }
 };
 




More information about the wine-cvs mailing list