*Massive cleanup (\n\n -> \n, *\n -> \n, cleanup for(...) to for (...), and some other cleanups by hand)
*Fix a possible crash in Spell::DoAllEffectOnTarget --HG-- branch : trunk
This commit is contained in:
@@ -1,5 +1,4 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
//=============================================================================
|
||||
/**
|
||||
* @file Message_Queue.h
|
||||
@@ -9,30 +8,23 @@
|
||||
* @author Douglas C. Schmidt <[email protected]>
|
||||
*/
|
||||
//=============================================================================
|
||||
|
||||
#ifndef ACE_MESSAGE_QUEUE_H
|
||||
#define ACE_MESSAGE_QUEUE_H
|
||||
#include /**/ "ace/pre.h"
|
||||
|
||||
#include "ace/Message_Block.h"
|
||||
|
||||
#if !defined (ACE_LACKS_PRAGMA_ONCE)
|
||||
# pragma once
|
||||
#endif /* ACE_LACKS_PRAGMA_ONCE */
|
||||
|
||||
#include "ace/IO_Cntl_Msg.h"
|
||||
#if defined (ACE_HAS_WIN32_OVERLAPPED_IO)
|
||||
# include "ace/Synch_Traits.h" /* Needed in ACE_Message_Queue_NT */
|
||||
# include "ace/Thread_Mutex.h" /* Needed in ACE_Message_Queue_NT */
|
||||
#endif
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
// Forward decls.
|
||||
class ACE_Notification_Strategy;
|
||||
template <ACE_SYNCH_DECL> class ACE_Message_Queue_Iterator;
|
||||
template <ACE_SYNCH_DECL> class ACE_Message_Queue_Reverse_Iterator;
|
||||
|
||||
/**
|
||||
* @class ACE_Message_Queue_Base
|
||||
*
|
||||
@@ -55,44 +47,33 @@ public:
|
||||
enum
|
||||
{
|
||||
// Default high and low watermarks.
|
||||
|
||||
/// Default high watermark (16 K).
|
||||
DEFAULT_HWM = 16 * 1024,
|
||||
/// Default low watermark (same as high water mark).
|
||||
DEFAULT_LWM = 16 * 1024,
|
||||
|
||||
// Queue states. Before PULSED state was added, the activate()
|
||||
// and deactivate() methods returned WAS_INACTIVE or WAS_ACTIVE
|
||||
// to indicate the previous condition. Now those methods
|
||||
// return the state the queue was previously in. WAS_ACTIVE
|
||||
// and WAS_INACTIVE are defined to match previous semantics for
|
||||
// applications that don't use the PULSED state.
|
||||
|
||||
/// @deprecated Use ACTIVATED instead.
|
||||
WAS_ACTIVE = 1,
|
||||
/// Message queue is active and processing normally
|
||||
ACTIVATED = 1,
|
||||
|
||||
/// @deprecated Use DEACTIVATED instead.
|
||||
WAS_INACTIVE = 2,
|
||||
/// Queue is deactivated; no enqueue or dequeue operations allowed.
|
||||
DEACTIVATED = 2,
|
||||
|
||||
/// Message queue was pulsed; enqueue and dequeue may proceed normally.
|
||||
PULSED = 3
|
||||
|
||||
};
|
||||
|
||||
ACE_Message_Queue_Base (void);
|
||||
|
||||
/// Close down the message queue and release all resources.
|
||||
virtual int close (void) = 0;
|
||||
|
||||
/// Close down the message queue and release all resources.
|
||||
virtual ~ACE_Message_Queue_Base (void);
|
||||
|
||||
// = Enqueue and dequeue methods.
|
||||
|
||||
/**
|
||||
* Retrieve the first ACE_Message_Block without removing it. Note
|
||||
* that @a timeout uses <{absolute}> time rather than <{relative}>
|
||||
@@ -104,7 +85,6 @@ public:
|
||||
*/
|
||||
virtual int peek_dequeue_head (ACE_Message_Block *&first_item,
|
||||
ACE_Time_Value *timeout = 0) = 0;
|
||||
|
||||
/**
|
||||
* Enqueue a <ACE_Message_Block *> into the tail of the queue.
|
||||
* Returns number of items in queue if the call succeeds or -1
|
||||
@@ -118,7 +98,6 @@ public:
|
||||
ACE_Time_Value *timeout = 0) = 0;
|
||||
virtual int enqueue (ACE_Message_Block *new_item,
|
||||
ACE_Time_Value *timeout = 0) = 0;
|
||||
|
||||
/**
|
||||
* Dequeue and return the <ACE_Message_Block *> at the head of the
|
||||
* queue. Returns number of items in queue if the call succeeds or
|
||||
@@ -132,37 +111,27 @@ public:
|
||||
ACE_Time_Value *timeout = 0) = 0;
|
||||
virtual int dequeue (ACE_Message_Block *&first_item,
|
||||
ACE_Time_Value *timeout = 0) = 0;
|
||||
|
||||
// = Check if queue is full/empty.
|
||||
/// True if queue is full, else false.
|
||||
virtual bool is_full (void) = 0;
|
||||
|
||||
/// True if queue is empty, else false.
|
||||
virtual bool is_empty (void) = 0;
|
||||
|
||||
// = Queue statistic methods.
|
||||
|
||||
/// Number of total bytes on the queue, i.e., sum of the message
|
||||
/// block sizes.
|
||||
virtual size_t message_bytes (void) = 0;
|
||||
|
||||
/// Number of total length on the queue, i.e., sum of the message
|
||||
/// block lengths.
|
||||
virtual size_t message_length (void) = 0;
|
||||
|
||||
/// Number of total messages on the queue.
|
||||
virtual size_t message_count (void) = 0;
|
||||
|
||||
/// New value of the number of total bytes on the queue, i.e.,
|
||||
/// sum of the message block sizes.
|
||||
virtual void message_bytes (size_t new_size) = 0;
|
||||
|
||||
/// New value of the number of total length on the queue, i.e.,
|
||||
/// sum of the message block lengths.
|
||||
virtual void message_length (size_t new_length) = 0;
|
||||
|
||||
// = Activation control methods.
|
||||
|
||||
/**
|
||||
* Deactivate the queue and wake up all threads waiting on the queue
|
||||
* so they can continue. No messages are removed from the queue,
|
||||
@@ -173,7 +142,6 @@ public:
|
||||
* @retval The queue's state before this call.
|
||||
*/
|
||||
virtual int deactivate (void) = 0;
|
||||
|
||||
/**
|
||||
* Reactivate the queue so that threads can enqueue and dequeue
|
||||
* messages again.
|
||||
@@ -181,7 +149,6 @@ public:
|
||||
* @retval The queue's state before this call.
|
||||
*/
|
||||
virtual int activate (void) = 0;
|
||||
|
||||
/**
|
||||
* Pulse the queue to wake up any waiting threads. Changes the
|
||||
* queue state to PULSED; future enqueue/dequeue operations proceed
|
||||
@@ -190,49 +157,35 @@ public:
|
||||
* @retval The queue's state before this call.
|
||||
*/
|
||||
virtual int pulse (void) = 0;
|
||||
|
||||
/// Returns the current state of the queue.
|
||||
virtual int state (void);
|
||||
|
||||
/// Returns 1 if the state of the queue is DEACTIVATED,
|
||||
/// and 0 if the queue's state is ACTIVATED or PULSED.
|
||||
virtual int deactivated (void) = 0;
|
||||
|
||||
/// Get the notification strategy for the <Message_Queue>
|
||||
virtual ACE_Notification_Strategy *notification_strategy (void) = 0;
|
||||
|
||||
/// Set the notification strategy for the <Message_Queue>
|
||||
virtual void notification_strategy (ACE_Notification_Strategy *s) = 0;
|
||||
|
||||
// = Notification hook.
|
||||
|
||||
/// Dump the state of an object.
|
||||
virtual void dump (void) const = 0;
|
||||
|
||||
/// Declare the dynamic allocation hooks.
|
||||
ACE_ALLOC_HOOK_DECLARE;
|
||||
|
||||
private:
|
||||
// = Disallow copying and assignment.
|
||||
ACE_Message_Queue_Base (const ACE_Message_Queue_Base &);
|
||||
void operator= (const ACE_Message_Queue_Base &);
|
||||
|
||||
protected:
|
||||
/// Indicates the state of the queue, which can be
|
||||
/// <ACTIVATED>, <DEACTIVATED>, or <PULSED>.
|
||||
int state_;
|
||||
|
||||
};
|
||||
|
||||
ACE_END_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
// Include the templates here.
|
||||
#include "ace/Message_Queue_T.h"
|
||||
|
||||
#if defined (__ACE_INLINE__)
|
||||
#include "ace/Message_Queue.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
#include /**/ "ace/post.h"
|
||||
#endif /* ACE_MESSAGE_QUEUE_H */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user