Incoming_Message_Stack.inl

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 //Incoming_Message_Stack.inl,v 1.4 2006/04/19 09:00:24 jwillemsen Exp
00004 
00005 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00006 
00007 /************************************************************************/
00008 // Methods  for TAO_Incoming_Message_Stack
00009 /************************************************************************/
00010 namespace TAO
00011 {
00012 ACE_INLINE
00013 Incoming_Message_Stack::Incoming_Message_Stack()
00014 : top_(0)
00015 {
00016 }
00017 
00018 ACE_INLINE
00019 Incoming_Message_Stack::~Incoming_Message_Stack()
00020 {
00021   // Delete all the nodes left behind
00022   TAO_Queued_Data *del = 0;
00023 
00024   while (this->pop (del) != -1)
00025     {
00026       TAO_Queued_Data::release (del);
00027     }
00028 }
00029 
00030 ACE_INLINE void
00031 Incoming_Message_Stack::push(TAO_Queued_Data *data)
00032 {
00033   data->next_ = this->top_;
00034   this->top_ = data;
00035 }
00036 
00037 
00038     /* @return 0 for Ok, -1 for error */
00039 ACE_INLINE int
00040 Incoming_Message_Stack::pop (TAO_Queued_Data* &data)
00041 {
00042   if (this->top_ == 0)
00043     return -1;
00044 
00045   data = this->top_;
00046   this->top_ = data->next_;
00047 
00048   return 0;
00049 }
00050 
00051 ACE_INLINE int
00052 Incoming_Message_Stack::top (TAO_Queued_Data* &data)
00053 {
00054   if (this->top_ == 0)
00055     return -1;
00056 
00057   data = this->top_;
00058 
00059   return 0;
00060 }
00061 
00062 } /* namespace TAO */
00063 TAO_END_VERSIONED_NAMESPACE_DECL

Generated on Thu Nov 9 11:54:14 2006 for TAO by doxygen 1.3.6