home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / oper_sys / quartz / quartz10.lha / src / presto / presto.h < prev    next >
Encoding:
C/C++ Source or Header  |  1990-05-02  |  821 b   |  40 lines

  1. #ifndef STREAMH
  2. #include <stream.h>
  3. #endif
  4.  
  5. #include "defs.h"
  6. #include "pstream.h"
  7.  
  8. #include "objects.h"
  9. #include "spinlock.h"
  10. #include "timer.h"
  11. #include "callstate.h"
  12. #include "stack.h"
  13. #include "threads.h"
  14. #include "spinlock_impl.h"
  15. #include "threadq.h"
  16. #include "process.h"
  17. #include "scheduler.h"
  18. #include "synchro.h"
  19. #include "main.h"
  20. #include "debug.h"
  21.  
  22. //
  23. // locks should not be implemented run default runtime
  24. //
  25. #include "locks.h"
  26.  
  27.  
  28. //
  29. // PRESTO states
  30. //
  31. #define STATIC_CTOR    0        /* static construction */
  32. #define MAIN_INIT    1        /* in Main::init()    */
  33. #define MAIN_MAIN    2        /* in Main::main()    */
  34. #define MAIN_DONE    3        /* in Main::done()    */
  35. #define STATIC_DTOR    4        /* static destructors    */
  36.  
  37. extern shared_t int prestoState;
  38. #define MULTITHREADED()        (prestoState == MAIN_MAIN)
  39. #define SINGLETHREADED()    (!MULTITHREADED())
  40.