From 0074691a67f857c9b3f880fb581e0af1d5673337 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Thu, 31 Jul 1997 22:13:29 +0000 Subject: Merged very large and much appreciated patch from Chris Johns . This patch includes the ods68302 bsp, the RTEMS++ class library, and the rtems++ test. --- testsuites/libtests/rtems++/System.h | 126 +++++++++++++++++++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 testsuites/libtests/rtems++/System.h (limited to 'testsuites/libtests/rtems++/System.h') diff --git a/testsuites/libtests/rtems++/System.h b/testsuites/libtests/rtems++/System.h new file mode 100644 index 0000000000..5e11e59238 --- /dev/null +++ b/testsuites/libtests/rtems++/System.h @@ -0,0 +1,126 @@ +/* system.h + * + * This include file contains information that is included in every + * function in the test set. + * + * COPYRIGHT (c) 1989-1997. + * On-Line Applications Research Corporation (OAR). + * Copyright assigned to U.S. Government, 1994. + * + * The license and distribution terms for this file may in + * the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#include +#include +#include +#include +#include + +/* functions */ + +extern "C" +{ + rtems_task Init( + rtems_task_argument argument + ); +} + +rtems_timer_service_routine Delayed_routine( + rtems_id ignored_id, + void *ignored_address +); + +class Task1 + : public rtemsTask +{ + rtemsEvent end_init; + + void print_mode(rtems_mode mode, rtems_mode mask); + + void screen1(void); + void screen2(void); + void screen3(void); + void screen4(void); + void screen5(void); + void screen6(void); + +protected: + virtual void body(rtems_task_argument argument); + +public: + void set_end_event(rtemsEvent& end_event) { end_init = end_event; } +}; + +class Task2 + : public rtemsTask +{ + void screen4(void); + +protected: + virtual void body(rtems_task_argument argument); + +public: + Task2(const char* name, + const rtems_task_priority initial_priority, + const rtems_unsigned32 stack_size); +}; + +class Task3 + : public rtemsTask +{ + void screen6(void); + +protected: + virtual void body(rtems_task_argument argument); + +public: + Task3(const char* name, + const rtems_task_priority initial_priority, + const rtems_unsigned32 stack_size); +}; + +#ifdef 0 + +// +// Not sure this can be tested in a generic manner, any ideas anyone !! +// + +class Service_routine + : public rtemsInterrupt +{ +}; + +class Io_during_interrupt + : pubic rtemsTimer +{ + +}; + +#endif + +/* configuration information */ + +#define CONFIGURE_SPTEST + +#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER +#define CONFIGURE_TEST_NEEDS_CLOCK_DRIVER + +#define CONFIGURE_MAXIMUM_TIMERS 1 +#define CONFIGURE_MAXIMUM_SEMAPHORES 2 +#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1 +#define CONFIGURE_MAXIMUM_PARTITIONS 1 +#define CONFIGURE_MAXIMUM_REGIONS 1 +#define CONFIGURE_MAXIMUM_PERIODS 1 +#define CONFIGURE_MAXIMUM_USER_EXTENSIONS 0 +#define CONFIGURE_TICKS_PER_TIMESLICE 100 + +#define CONFIGURE_RTEMS_INIT_TASKS_TABLE +#define CONFIGURE_INIT_TASK_STACK_SIZE 0x2000 + +#include + +/* end of include file */ -- cgit v1.2.3