ESYS13
Revision_
|
00001 00002 /******************************************************* 00003 * 00004 * Copyright (c) 2003-2012 by University of Queensland 00005 * Earth Systems Science Computational Center (ESSCC) 00006 * http://www.uq.edu.au/esscc 00007 * 00008 * Primary Business: Queensland, Australia 00009 * Licensed under the Open Software License version 3.0 00010 * http://www.opensource.org/licenses/osl-3.0.php 00011 * 00012 *******************************************************/ 00013 00014 00015 #ifndef blocktimer_h 00016 #define blocktimer_h 00017 00018 #include <stdio.h> 00019 #include <search.h> 00020 #include "system_dep.h" 00021 00022 /* Enable the block timer (or remove this and use -DBLOCKTIMER) */ 00023 /* # define BLOCKTIMER */ 00024 00025 # define NUM_TIMERS 1024 00026 00027 ESYSUTILS_DLL_API 00028 void blocktimer_initialize(); 00029 ESYSUTILS_DLL_API 00030 void blocktimer_increment(__const char *name, double start_time); 00031 ESYSUTILS_DLL_API 00032 int blocktimer_getOrCreateTimerId(__const char *name); 00033 ESYSUTILS_DLL_API 00034 void blocktimer_reportSortByName(); 00035 ESYSUTILS_DLL_API 00036 void blocktimer_reportSortByTime(); 00037 ESYSUTILS_DLL_API 00038 double blocktimer_time(); 00039 00040 00041 #endif