diff packages/hal/common/current/include/dbg-threads-api.h @ 2:443894e2e912 ecos-v1_2_1-release

Block commit of eCos version 1.2.1
author jlarmour
date Tue, 11 May 1999 12:24:34 +0000
parents 3111d98ba7b3
children f10165814f1e
line wrap: on
line diff
--- a/packages/hal/common/current/include/dbg-threads-api.h
+++ b/packages/hal/common/current/include/dbg-threads-api.h
@@ -6,7 +6,7 @@
  */
 
 /* 
- * Copyright (c) 1998 Cygnus Support
+ * Copyright (c) 1998,1999 Cygnus Solutions
  *
  * The authors hereby grant permission to use, copy, modify, distribute,
  * and license this software and its documentation for any purpose, provided
@@ -19,6 +19,8 @@
  * they apply.
  */
 
+#include <cyg/infra/cyg_type.h>         /* externC */
+
 #define has_thread_void       0 
 #define has_thread_current    1
 #define has_thread_registers  2
@@ -47,9 +49,9 @@ extern int dbg_currthread_id(void);
 
 /* get the first or next member of the list of known threads */
 extern int dbg_threadlist(int startflag,
-			  threadref * lastthreadid,
-			  threadref * next_thread
-			  ) ;
+                          threadref * lastthreadid,
+                          threadref * next_thread
+                          ) ;
 
 /* return 1 if next_threadid has been filled in with a value */
 /* return 0 if there are none or no more */
@@ -65,19 +67,19 @@ struct cygmon_thread_debug_info
 {
   threadref thread_id ;
   int context_exists ; /* To the point where examining its state,
-			 registers and stack makes sense to GDB */
+                         registers and stack makes sense to GDB */
   char * thread_display ; /* As shown in thread status window, name, state */
   char * unique_thread_name ; /* human readable identifier, window label */
   char * more_display ;   /* more detailed info about thread.
-			  priority, queuedepth, state, stack usage, statistics */
+                          priority, queuedepth, state, stack usage, statistics */
 } ;
 
 
 
 
 extern int dbg_threadinfo(
-			  threadref * threadid,
-			  struct cygmon_thread_debug_info * info) ;
+                          threadref * threadid,
+                          struct cygmon_thread_debug_info * info) ;
 
 /* Return 1 if threadid is defined and info copied, 0 otherwise */
 
@@ -89,9 +91,9 @@ have already been assigned.
 */
 
 extern int dbg_getthreadreg(
-			    threadref * osthreadid, 
-			    int regcount, /* count of registers in the array */
-			    void * regval) ; /* fillin this array */
+                            threadref * osthreadid, 
+                            int regcount, /* count of registers in the array */
+                            void * regval) ; /* fillin this array */
 
 
 /* The O.S. should scan through this list of registers which are in
@@ -101,8 +103,17 @@ by osthreadid. Return 0 if the threadis 
 process or other error. Return 1 if the setting is successful.  */
 
 extern int dbg_setthreadreg(
-			    threadref * osthreadid, 
-			    int regcount , /* number of registers */
-			    void * regval) ;
+                            threadref * osthreadid, 
+                            int regcount , /* number of registers */
+                            void * regval) ;
+
+/* Control over OS scheduler. With the scheduler locked it should not
+   perform any rescheduling in response to interrupts.  */
+externC int dbg_scheduler(
+                          threadref * osthreadid,
+                          int lock,     /* 0 == unlock, 1 == lock */
+                          int mode);    /* 0 == step,   1 == continue */
+
+
 
 #endif /* DBG_THREADS_API_INCLUDED */