]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/msgqueue.h
Define INVALID_FILE_ATTRIBUTES in filename.cpp too.
[wxWidgets.git] / interface / wx / msgqueue.h
index 2b23de8b9a4d87eb0dd5aa23fb829f10b7ed8a33..3c3432f8a22959d0d75492deb83c98f4a45303d4 100644 (file)
@@ -7,27 +7,34 @@
 /////////////////////////////////////////////////////////////////////////////
 
 /**
 /////////////////////////////////////////////////////////////////////////////
 
 /**
-    @wxheader{msgqueue.h}
-
     wxMessageQueue allows passing messages between threads.
 
     This class should be typically used to communicate between the main and worker
     wxMessageQueue allows passing messages between threads.
 
     This class should be typically used to communicate between the main and worker
-    threads. The main thread calls wxMessageQueue::Post and
-    the worker thread calls wxMessageQueue::Receive.
+    threads. The main thread calls wxMessageQueue::Post and the worker thread
+    calls wxMessageQueue::Receive.
+
+    @tparam T
+        For this class a message is an object of arbitrary type T.
 
 
-    For this class a message is an object of arbitrary type T. Notice that
-    often there is a some special message indicating that the thread
+    Notice that often there is a some special message indicating that the thread
     should terminate as there is no other way to gracefully shutdown a thread
     waiting on the message queue.
 
     @nolibrary
     should terminate as there is no other way to gracefully shutdown a thread
     waiting on the message queue.
 
     @nolibrary
-    @category{FIXME}
+    @category{threading}
 
     @see wxThread
 */
 
     @see wxThread
 */
+template <typename T>
 class wxMessageQueue<T>
 {
 public:
 class wxMessageQueue<T>
 {
 public:
+    /**
+        Default and only constructor.
+        Use wxMessageQueue::IsOk to check if the object was successfully initialized.
+    */
+    wxMessageQueue();
+
     /**
         Returns @true if the object had been initialized successfully, @false
         if an error occurred.
     /**
         Returns @true if the object had been initialized successfully, @false
         if an error occurred.
@@ -38,32 +45,31 @@ public:
         Add a message to this queue and signal the threads waiting for messages
         (i.e. the threads which called wxMessageQueue::Receive or
         wxMessageQueue::ReceiveTimeout).
         Add a message to this queue and signal the threads waiting for messages
         (i.e. the threads which called wxMessageQueue::Receive or
         wxMessageQueue::ReceiveTimeout).
+
         This method is safe to call from multiple threads in parallel.
     */
     wxMessageQueueError Post(T const& msg);
 
     /**
         This method is safe to call from multiple threads in parallel.
     */
     wxMessageQueueError Post(T const& msg);
 
     /**
-        Block until a message becomes available in the queue. Waits indefinitely long
-        or until an error occurs.
-        The message is returned in @e msg.
+        Block until a message becomes available in the queue.
+        Waits indefinitely long or until an error occurs.
+
+        The message is returned in @a msg.
     */
     wxMessageQueueError Receive(T& msg);
 
     /**
         Block until a message becomes available in the queue, but no more than
         @a timeout milliseconds has elapsed.
     */
     wxMessageQueueError Receive(T& msg);
 
     /**
         Block until a message becomes available in the queue, but no more than
         @a timeout milliseconds has elapsed.
+
         If no message is available after @a timeout milliseconds then returns
         @b wxMSGQUEUE_TIMEOUT.
         If no message is available after @a timeout milliseconds then returns
         @b wxMSGQUEUE_TIMEOUT.
+
         If @a timeout is 0 then checks for any messages present in the queue
         and returns immediately without waiting.
         If @a timeout is 0 then checks for any messages present in the queue
         and returns immediately without waiting.
-        The message is returned in @e msg.
-    */
-    wxMessageQueueError ReceiveTimeout(long timeout, T& msg);
 
 
-    /**
-        Default and only constructor. Use wxMessageQueue::IsOk to check
-        if the object was successfully initialized.
+        The message is returned in @a msg.
     */
     */
-    wxMessageQueue();
+    wxMessageQueueError ReceiveTimeout(long timeout, T& msg);
 };
 
 };