* task. h\r
* <PRE>void vTaskList( portCHAR *pcWriteBuffer );</PRE>\r
*\r
- * configUSE_TRACE_FACILITY, INCLUDE_vTaskDelete and INCLUDE_vTaskSuspend\r
- * must all be defined as 1 for this function to be available.\r
- * See the configuration section for more information.\r
+ * configUSE_TRACE_FACILITY must be defined as 1 for this function to be \r
+ * available. See the configuration section for more information.\r
*\r
* NOTE: This function will disable interrupts for its duration. It is\r
* not intended for normal application runtime use but as a debug aid.\r
*/\r
void vTaskList( signed portCHAR *pcWriteBuffer );\r
\r
+/**\r
+ * task. h\r
+ * <PRE>void vTaskGetRunTimeStats( portCHAR *pcWriteBuffer );</PRE>\r
+ *\r
+ * configGENERATE_RUN_TIME_STATS must be defined as 1 for this function\r
+ * to be available. The application must also then provide definitions\r
+ * for portCONFIGURE_TIMER_FOR_RUN_TIME_STATS() and \r
+ * portGET_RUN_TIME_COUNTER_VALUE to configure a peripheral timer/counter\r
+ * and return the timers current count value respectively. A 1uS timer\r
+ * frequency is recommended for a 32bit peripheral counter - this will\r
+ * allow the statistics to be gathered over the first (approximately) 70\r
+ * minutes of execution.\r
+ *\r
+ * NOTE: This function will disable interrupts for its duration. It is\r
+ * not intended for normal application runtime use but as a debug aid.\r
+ *\r
+ * Setting configGENERATE_RUN_TIME_STATS to 1 will result in a total\r
+ * accumulated execution time being stored for each task. The resolution\r
+ * of the accumulated time value depends on the frequency of the timer\r
+ * configured by the portCONFIGURE_TIMER_FOR_RUN_TIME_STATS() macro.\r
+ * Calling vTaskGetRunTimeStats() writes the total execution time of each\r
+ * task into a buffer, both as an absolute count value and as a percentage\r
+ * of the total system execution time.\r
+ *\r
+ * @param pcWriteBuffer A buffer into which the execution times will be \r
+ * written, in ascii form. This buffer is assumed to be large enough to \r
+ * contain the generated report. Approximately 40 bytes per task should \r
+ * be sufficient.\r
+ *\r
+ * \page vTaskGetRunTimeStats vTaskGetRunTimeStats\r
+ * \ingroup TaskUtils\r
+ */\r
+void vTaskGetRunTimeStats( signed portCHAR *pcWriteBuffer );\r
+\r
/**\r
* task. h\r
* <PRE>void vTaskStartTrace( portCHAR * pcBuffer, unsigned portBASE_TYPE uxBufferSize );</PRE>\r