From 8db468ffde833523535720e8ec8119d760a9561a Mon Sep 17 00:00:00 2001 From: Chris Johns Date: Fri, 17 Aug 2007 01:07:10 +0000 Subject: 2007-08-17 Chris Johns * Makefile.am, README, configure.ac, capture/.cvsignore, capture/Makefile.am, capture/capture.doc, capture/capture.scn, capture/init.c, capture/system.h, capture/test1.c: Add a sample test for the capture engine. --- testsuites/samples/capture/init.c | 73 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 testsuites/samples/capture/init.c (limited to 'testsuites/samples/capture/init.c') diff --git a/testsuites/samples/capture/init.c b/testsuites/samples/capture/init.c new file mode 100644 index 0000000000..891d342b46 --- /dev/null +++ b/testsuites/samples/capture/init.c @@ -0,0 +1,73 @@ +/* Init + * + * This routine is the initialization task for this test program. + * It is called from init_exec and has the responsibility for creating + * and starting the tasks that make up the test. If the time of day + * clock is required for the test, it should also be set to a known + * value by this function. + * + * Input parameters: NONE + * + * Output parameters: NONE + * + * COPYRIGHT (c) 1989-1997. + * On-Line Applications Research Corporation (OAR). + * + * The license and distribution terms for this file may in + * the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. + * + * $Id$ + */ + +#define CONFIGURE_INIT + +#include "system.h" +#include +#include + +#include +#include +#include + +void setup_tasks_to_watch (); + +volatile int can_proceed = 1; + +rtems_task Init( + rtems_task_argument ignored +) +{ + rtems_task_priority old_priority; + rtems_mode old_mode; + rtems_event_set out; + + /* lower the task priority to allow created tasks to execute */ + + rtems_task_set_priority(RTEMS_SELF, 20, &old_priority); + rtems_task_mode(RTEMS_PREEMPT, RTEMS_PREEMPT_MASK, &old_mode); + + printf( "\n*** CAPTURE ENGINE TEST ***\n" ); + + while (!can_proceed) + { + printf ("Sleeping\n"); + usleep (1000000); + } + + rtems_monitor_init (0); + rtems_capture_cli_init (0); + + setup_tasks_to_watch (); + + rtems_task_delete (RTEMS_SELF); + + printf( "\nblocking main\n" ); + + rtems_event_receive (RTEMS_EVENT_1, RTEMS_WAIT | RTEMS_EVENT_ANY, + 0, &out); + + printf( "\n*** END OF UNLIMITED TASK TEST ***\n" ); + exit( 0 ); +} + -- cgit v1.2.3