summaryrefslogtreecommitdiff
path: root/dmagick/c/timer.d
diff options
context:
space:
mode:
authorMike Wey2011-01-08 17:48:30 +0100
committerMike Wey2011-01-08 17:48:30 +0100
commitcbac78bbec726017355cb455a776f193e7fc3022 (patch)
treea41c564c7ef5aec9dd2b18e58e94b213193044be /dmagick/c/timer.d
initial checkin
Diffstat (limited to 'dmagick/c/timer.d')
-rw-r--r--dmagick/c/timer.d46
1 files changed, 46 insertions, 0 deletions
diff --git a/dmagick/c/timer.d b/dmagick/c/timer.d
new file mode 100644
index 0000000..36603ce
--- /dev/null
+++ b/dmagick/c/timer.d
@@ -0,0 +1,46 @@
+module dmagick.c.timer;
+
+import dmagick.c.magickType;
+
+extern(C)
+{
+ enum TimerState
+ {
+ UndefinedTimerState,
+ StoppedTimerState,
+ RunningTimerState
+ }
+
+ struct Timer
+ {
+ double
+ start,
+ stop,
+ total;
+ }
+
+ struct TimerInfo
+ {
+ Timer
+ user,
+ elapsed;
+
+ TimerState
+ state;
+
+ size_t
+ signature;
+ }
+
+ double GetElapsedTime(TimerInfo*);
+ double GetUserTime(TimerInfo*);
+
+ MagickBooleanType ContinueTimer(TimerInfo*);
+
+ TimerInfo* AcquireTimerInfo();
+ TimerInfo* DestroyTimerInfo(TimerInfo*);
+
+ void GetTimerInfo(TimerInfo*);
+ void ResetTimer(TimerInfo*);
+ void StartTimer(TimerInfo*, const MagickBooleanType);
+}