Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

Tools/Debugging/QueueFillRequest.h

Go to the documentation of this file.
00001 /**
00002  * @file QueueFillRequest.h
00003  * Declaration of class QueueFillRequest.
00004  *
00005  * @author <a href=mailto:dueffert@informatik.hu-berlin.de>Uwe Düffert</a>
00006  */
00007 
00008 #ifndef __QUEUEFILLREQUEST_H__
00009 #define __QUEUEFILLREQUEST_H__
00010 
00011 #include "Tools/Streams/InOut.h"
00012 
00013 /**
00014  * @class QueueFillRequest
00015  * Request to fill DebugQueues with a certain QueueFillMode
00016  */
00017 class QueueFillRequest
00018 {
00019 public:
00020   /** different modes for filling debug queues */
00021   typedef enum QueueFillMode{immediateReadWrite, collectNSeconds, toStickNSeconds, overwriteOlder, rejectAll, toStickImmediately} QueueFillMode;
00022   
00023   /** Constructor */
00024   QueueFillRequest():mode(immediateReadWrite),seconds(0) {}
00025 
00026   /** Constructor
00027     * @param qfm The requested QueueFillMode.
00028     * @param sec Number of seconds to wait for in NSeconds modes.
00029     */
00030   QueueFillRequest(QueueFillMode qfm, long sec=1):mode(qfm),seconds(sec) {}
00031 
00032   /** requested mode for filling a DebugQueue */
00033   QueueFillMode mode;
00034 
00035   /** how many seconds shall we wait in collectNSeconds mode */
00036   long seconds;
00037 };
00038 
00039 /**
00040  * Streaming operator that reads a QueueFillRequest from a stream.
00041  * @param stream The stream from which is read.
00042  * @param queueFillRequest The QueueFillRequest object.
00043  * @return The stream.
00044  */ 
00045 In& operator>>(In& stream,QueueFillRequest& queueFillRequest);
00046  
00047 /**
00048  * Streaming operator that writes a QueueFillRequest to a stream.
00049  * @param stream The stream to write on.
00050  * @param queueFillRequest The QueueFillRequest object.
00051  * @return The stream.
00052  */ 
00053 Out& operator<<(Out& stream, const QueueFillRequest& queueFillRequest);
00054 
00055 #endif // __QUEUEFILLREQUEST_H__
00056 
00057 /*
00058  * Changelog:
00059  * 
00060  * $Log: QueueFillRequest.h,v $
00061  * Revision 1.2  2004/06/16 20:59:35  goehring
00062  * enum QueueFillRequest::toStickImmediately added
00063  *
00064  * Revision 1.1.1.1  2004/05/22 17:36:06  cvsadm
00065  * created new repository GT2004_WM
00066  *
00067  * Revision 1.1  2003/10/07 10:13:22  cvsadm
00068  * Created GT2004 (M.J.)
00069  *
00070  * Revision 1.3  2003/09/28 09:28:48  juengel
00071  * Comments corrected.
00072  *
00073  * Revision 1.2  2003/09/26 15:28:10  juengel
00074  * Renamed DataTypes to representations.
00075  *
00076  * Revision 1.1  2003/09/26 11:40:40  juengel
00077  * - sorted tools
00078  * - clean-up in DataTypes
00079  *
00080  * Revision 1.1.1.1  2003/07/02 09:40:22  cvsadm
00081  * created new repository for the competitions in Padova from the 
00082  * tamara CVS (Tuesday 2:00 pm)
00083  *
00084  * removed unused solutions
00085  *
00086  * Revision 1.5  2003/03/11 09:05:25  dueffert
00087  * QueueFillRequest rejectAll added
00088  *
00089  * Revision 1.4  2002/11/27 13:50:48  dueffert
00090  * QueueFillMode beautified, doxygen docu added
00091  *
00092  * Revision 1.3  2002/11/20 13:37:30  dueffert
00093  * missing or wrong doxygen file corrected
00094  *
00095  * Revision 1.2  2002/11/19 15:43:02  dueffert
00096  * doxygen comments corrected
00097  *
00098  * Revision 1.1  2002/11/19 14:00:46  dueffert
00099  * no message
00100  *
00101  *
00102  */

Generated on Thu Sep 23 19:57:37 2004 for GT2004 by doxygen 1.3.6