home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / powergui / debug / tracebox / querdr.hpp < prev    next >
Encoding:
C/C++ Source or Header  |  1996-10-29  |  2.0 KB  |  73 lines

  1. #ifndef _QUERDR_
  2. #define _QUERDR_
  3. //************************************************************
  4. // Problem Determination  - Trace Queue Browser
  5. //
  6. // Copyright (C) 1994, Law, Leong, Love, Olson, Tsuji.
  7. // Copyright (c) 1997 John Wiley & Sons, Inc. 
  8. // All Rights Reserved.
  9. //************************************************************
  10. #include <ihandle.hpp>
  11. #include <ireslock.hpp>
  12. #include "filtdlg.hpp"
  13.  
  14. class QueueReader {
  15. /**************************************************************************
  16. * Class:   QueueReader                                                    *
  17. *                                                                         *
  18. * Purpose: Retrieves messages from queue, creates objects from them,      *
  19. *          and sends to main window.                                      *
  20. *                                                                         *
  21. **************************************************************************/
  22. public:
  23. QueueReader  ( const char*          queueName,
  24.                const IWindowHandle& receiver);
  25. ~QueueReader ( );
  26.  
  27. void
  28.   run           ( );
  29. unsigned long
  30.  queueHandle    ( ) const                 { return qHandle;}
  31. IWindowHandle
  32.  targetHandle   ( ) const                 { return target;}
  33.  
  34. Boolean
  35.    isEnabled    ( ) const                 { return fenabled; }
  36. QueueReader
  37.   &enable       ( Boolean enable=true )   { fenabled = enable; return *this; }
  38.  
  39. FilterSet
  40.   &inputFilterSet ( )                     { return finputFilter; }
  41.  
  42. IResource
  43.   &filterLock ( )                         { return ffilterLock; }
  44.  
  45. Boolean
  46.   isIncluded (  const char* string ) const;
  47.  
  48.  
  49. private:
  50. IWindowHandle
  51.   target;
  52. unsigned long
  53.   qHandle;
  54. char
  55.   *queueData;
  56. Boolean
  57.   fenabled;
  58. FilterSet
  59.   finputFilter;
  60. IPrivateResource
  61.   ffilterLock,
  62.   fqueueLock;
  63. Boolean
  64.   fRunning;
  65. IString
  66.   fqueueName;
  67.  
  68. QueueReader    (const QueueReader&);
  69. QueueReader
  70.   &operator=   (const QueueReader&);
  71. };
  72. #endif  // _QUERDR_
  73.