conc_compl.h

00001 
00002 
00003 #ifndef _CONC_COMPL_H_
00004 
00005 #define _CONC_COMPL_H_
00006 
00007 #ifdef CONC_COMPL
00008 #define MAX_TDEP_LIST 100
00009 
00010 struct subgoal_frame ;
00011 
00012 typedef struct thread_dep
00013 {
00014         struct subgoal_frame *Subgoal;
00015         int last ;
00016 }
00017 ThreadDep ;
00018 
00019 typedef
00020 struct {
00021 int             NumDeps ;
00022 ThreadDep       Deps[MAX_TDEP_LIST];
00023 } ThreadDepList ;
00024 
00025 int EmptyThreadDepList( ThreadDepList *TDL ) ; 
00026 
00027 void InitThreadDepList( ThreadDepList *TDL ) ; 
00028 
00029 struct th_context ;
00030 
00031 void UpdateDeps(struct th_context *th, int *busy, CPtr *leader) ;
00032 int CheckForSCC( struct th_context * th ) ;
00033 int MayHaveAnswers( struct th_context * th ) ;
00034 void CompleteOtherThreads( struct th_context * th ) ;
00035 void WakeOtherThreads( struct th_context * th ) ;
00036 void WakeDependentThreads( struct th_context * th, struct subgoal_frame * subg ) ;
00037 void CompleteTop( struct th_context * th, CPtr leader ) ;
00038 CPtr sched_external( struct th_context *th, CPtr ExtCons ) ;
00039 #endif
00040 
00041 #endif

Generated on Wed Jul 26 13:30:40 2006 for XSB by  doxygen 1.4.5