| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | /*
 | 
					
						
							|  |  |  |  * Author: George V. Neville-Neil | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | #include "Python.h"
 | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | /* Our stuff... */ | 
					
						
							|  |  |  | #include "timing.h"
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | static PyObject * | 
					
						
							| 
									
										
										
										
											2002-03-31 14:57:24 +00:00
										 |  |  | start_timing(PyObject *self) | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | 	Py_INCREF(Py_None); | 
					
						
							|  |  |  | 	BEGINTIMING; | 
					
						
							|  |  |  | 	return Py_None; | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | static PyObject * | 
					
						
							| 
									
										
										
										
											2002-03-31 14:57:24 +00:00
										 |  |  | finish_timing(PyObject *self) | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | 	ENDTIMING     | 
					
						
							|  |  |  | 	Py_INCREF(Py_None); | 
					
						
							|  |  |  | 	return Py_None; | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | static PyObject * | 
					
						
							| 
									
										
										
										
											2002-03-31 14:57:24 +00:00
										 |  |  | seconds(PyObject *self) | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | 	return PyInt_FromLong(TIMINGS); | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | static PyObject * | 
					
						
							| 
									
										
										
										
											2002-03-31 14:57:24 +00:00
										 |  |  | milli(PyObject *self) | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | 	return PyInt_FromLong(TIMINGMS); | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2002-03-31 14:57:24 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | static PyObject * | 
					
						
							| 
									
										
										
										
											2002-03-31 14:57:24 +00:00
										 |  |  | micro(PyObject *self) | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | 	return PyInt_FromLong(TIMINGUS); | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | static PyMethodDef timing_methods[] = { | 
					
						
							| 
									
										
										
										
											2002-03-31 14:57:24 +00:00
										 |  |  | 	{"start",   (PyCFunction)start_timing, METH_NOARGS}, | 
					
						
							|  |  |  | 	{"finish",  (PyCFunction)finish_timing, METH_NOARGS}, | 
					
						
							|  |  |  | 	{"seconds", (PyCFunction)seconds, METH_NOARGS}, | 
					
						
							|  |  |  | 	{"milli",   (PyCFunction)milli, METH_NOARGS}, | 
					
						
							|  |  |  | 	{"micro",   (PyCFunction)micro, METH_NOARGS}, | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | 	{NULL,      NULL} | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2000-07-21 06:00:07 +00:00
										 |  |  | DL_EXPORT(void) inittiming(void) | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											1997-01-13 22:57:42 +00:00
										 |  |  | 	(void)Py_InitModule("timing", timing_methods); | 
					
						
							| 
									
										
										
										
											1994-01-02 23:22:21 +00:00
										 |  |  | } |