Array_Base.inl

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // Array_Base.inl,v 4.3 2005/10/28 16:14:51 ossama Exp
00004 
00005 // Clean up the array (e.g., delete dynamically allocated memory).
00006 
00007 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
00008 
00009 template <class T> ACE_INLINE
00010 ACE_Array_Base<T>::~ACE_Array_Base (void)
00011 {
00012   ACE_DES_ARRAY_FREE (this->array_,
00013                       this->max_size_,
00014                       this->allocator_->free,
00015                       T);
00016 }
00017 
00018 template <class T> ACE_INLINE size_t
00019 ACE_Array_Base<T>::size (void) const
00020 {
00021   return this->cur_size_;
00022 }
00023 
00024 template <class T> ACE_INLINE size_t
00025 ACE_Array_Base<T>::max_size (void) const
00026 {
00027   return this->max_size_;
00028 }
00029 
00030 template <class T> ACE_INLINE int
00031 ACE_Array_Base<T>::in_range (size_t index) const
00032 {
00033   return index < this->cur_size_;
00034 }
00035 
00036 template <class T> ACE_INLINE T &
00037 ACE_Array_Base<T>::operator[] (size_t index)
00038 {
00039   return this->array_[index];
00040 }
00041 
00042 template <class T> ACE_INLINE const T &
00043 ACE_Array_Base<T>::operator[] (size_t index) const
00044 {
00045   return this->array_[index];
00046 }
00047 
00048 // ****************************************************************
00049 
00050 template <class T> ACE_INLINE void
00051 ACE_Array_Iterator<T>::dump (void) const
00052 {
00053 #if defined (ACE_HAS_DUMP)
00054   // ACE_TRACE ("ACE_Array_Iterator<T>::dump");
00055 #endif /* ACE_HAS_DUMP */
00056 }
00057 
00058 template <class T> ACE_INLINE
00059 ACE_Array_Iterator<T>::ACE_Array_Iterator (ACE_Array_Base<T> &a)
00060     : current_ (0),
00061       array_ (a)
00062 {
00063   // ACE_TRACE ("ACE_Array_Iterator<T>::ACE_Array_Iterator");
00064 }
00065 
00066 template <class T> ACE_INLINE int
00067 ACE_Array_Iterator<T>::advance (void)
00068 {
00069   // ACE_TRACE ("ACE_Array_Iterator<T>::advance");
00070 
00071   if (this->current_ < array_.size ())
00072     {
00073       ++this->current_;
00074       return 1;
00075     }
00076   else
00077     {
00078       // Already finished iterating.
00079       return 0;
00080     }
00081 }
00082 
00083 template <class T> ACE_INLINE int
00084 ACE_Array_Iterator<T>::done (void) const
00085 {
00086   ACE_TRACE ("ACE_Array_Iterator<T>::done");
00087 
00088   return this->current_ >= array_.size ();
00089 }
00090 
00091 ACE_END_VERSIONED_NAMESPACE_DECL

Generated on Thu Nov 9 09:41:45 2006 for ACE by doxygen 1.3.6