osg::MFieldVector< Tp, OSG_STL_DEFAULT_ALLOCATOR > Class Template Reference
[FieldsMulti-Element Fields]

#include <OSGMFieldVector.h>

List of all members.

Public Types

typedef std::vector< Tp, Alloc > Inherited
typedef Inherited::allocator_type allocator_type
typedef Inherited::size_type size_type

Public Member Functions

 MFieldVector (const allocator_type &__a=allocator_type())
 MFieldVector (size_type __n, const Tp &__value, const allocator_type &__a=allocator_type())
 MFieldVector (size_type __n)
 MFieldVector (const std::vector< Tp, Alloc > &__x)
 MFieldVector (const MFieldVector< Tp, Alloc > &__x)
 MFieldVector (const Tp *__first, const Tp *__last, const allocator_type &__a=allocator_type())
 ~MFieldVector ()
void shareValues (Self &other, bool bDeleteOld)
void resolveShare (void)

Private Types

typedef MFieldVector< Tp, Alloc > Self


Detailed Description

template<class Tp, class Alloc OSG_STL_DEFAULT_ALLOCATOR>
class osg::MFieldVector< Tp, OSG_STL_DEFAULT_ALLOCATOR >

Definition at line 90 of file OSGMFieldVector.h.


Member Typedef Documentation

template<class Tp, class Alloc OSG_STL_DEFAULT_ALLOCATOR>
typedef std::vector<Tp, Alloc> osg::MFieldVector< Tp, OSG_STL_DEFAULT_ALLOCATOR >::Inherited

Definition at line 94 of file OSGMFieldVector.h.

template<class Tp, class Alloc OSG_STL_DEFAULT_ALLOCATOR>
typedef MFieldVector<Tp, Alloc> osg::MFieldVector< Tp, OSG_STL_DEFAULT_ALLOCATOR >::Self [private]

Definition at line 98 of file OSGMFieldVector.h.

template<class Tp, class Alloc OSG_STL_DEFAULT_ALLOCATOR>
typedef Inherited::allocator_type osg::MFieldVector< Tp, OSG_STL_DEFAULT_ALLOCATOR >::allocator_type

Definition at line 102 of file OSGMFieldVector.h.

template<class Tp, class Alloc OSG_STL_DEFAULT_ALLOCATOR>
typedef Inherited::size_type osg::MFieldVector< Tp, OSG_STL_DEFAULT_ALLOCATOR >::size_type

Definition at line 103 of file OSGMFieldVector.h.


Constructor & Destructor Documentation

template<class Tp, class Alloc>
osg::MFieldVector< Tp, Alloc >::MFieldVector ( const allocator_type __a = allocator_type()  )  [inline, explicit]

Definition at line 70 of file OSGMFieldVector.inl.

00070                                                                :
00071     Inherited(__a) 
00072 {
00073 }

template<class Tp, class Alloc>
osg::MFieldVector< Tp, Alloc >::MFieldVector ( size_type  __n,
const Tp &  __value,
const allocator_type __a = allocator_type() 
) [inline]

Definition at line 76 of file OSGMFieldVector.inl.

00078                                                                      :
00079     Inherited(__n, __value, __a)
00080 {
00081 }
    

template<class Tp, class Alloc>
osg::MFieldVector< Tp, Alloc >::MFieldVector ( size_type  __n  )  [inline, explicit]

Definition at line 84 of file OSGMFieldVector.inl.

00084                                                    :
00085     Inherited(__n)
00086 {
00087 }
    

template<class Tp, class Alloc>
osg::MFieldVector< Tp, Alloc >::MFieldVector ( const std::vector< Tp, Alloc > &  __x  )  [inline]

Definition at line 90 of file OSGMFieldVector.inl.

00090                                                                      :
00091     Inherited(__x)
00092 {
00093 }

template<class Tp, class Alloc>
osg::MFieldVector< Tp, Alloc >::MFieldVector ( const MFieldVector< Tp, Alloc > &  __x  )  [inline]

Definition at line 96 of file OSGMFieldVector.inl.

00096                                                                         :
00097     Inherited(__x)
00098 {
00099 }

template<class Tp, class Alloc>
osg::MFieldVector< Tp, Alloc >::MFieldVector ( const Tp *  __first,
const Tp *  __last,
const allocator_type __a = allocator_type() 
) [inline]

Definition at line 115 of file OSGMFieldVector.inl.

00117                                                                      :
00118     Inherited(__first, __last, __a) 
00119 {
00120 }

template<class Tp, class Alloc>
osg::MFieldVector< Tp, Alloc >::~MFieldVector (  )  [inline]

Definition at line 125 of file OSGMFieldVector.inl.

00126 {
00127 }


Member Function Documentation

template<class Tp, class Alloc>
void osg::MFieldVector< Tp, Alloc >::shareValues ( Self other,
bool  bDeleteOld 
) [inline]

Definition at line 130 of file OSGMFieldVector.inl.

References MYEND, MYFIRST, and MYLAST.

00131 {
00132     if(bDeleteOld == true)
00133     {
00134 #if defined(OSG_LINUX_ICC) && !defined(OSG_ICC_GNU_COMPAT)
00135         this->_Destroy(this->MYFIRST, this->MYLAST);
00136 
00137         this->_Alval.deallocate(this->MYFIRST,
00138                                 this->MYEND - this->MYFIRST); 
00139 #else
00140         std::_Destroy(this->MYFIRST, this->MYLAST);
00141 
00142         this->_M_deallocate(this->MYFIRST,
00143                             this->MYEND - this->MYFIRST); 
00144 #endif
00145     }
00146 
00147     this->MYFIRST = other.MYFIRST; 
00148     this->MYLAST  = other.MYLAST;
00149     this->MYEND   = other.MYEND;
00150 }

template<class Tp, class Alloc>
void osg::MFieldVector< Tp, Alloc >::resolveShare ( void   )  [inline]

Definition at line 153 of file OSGMFieldVector.inl.

References MYEND, MYFIRST, and MYLAST.

00154 {
00155     this->MYFIRST = NULL;
00156     this->MYLAST  = NULL;
00157     this->MYEND   = NULL;
00158 }


The documentation for this class was generated from the following files:

Generated on Mon Mar 17 11:10:56 2008 for OpenSG by  doxygen 1.5.5