ListView< T > Class Template Reference

ListView is a 'dummy' class which is completely interchangeable with List. More...

#include <List.h>

Inheritance diagram for ListView< T >:
ListBase< T > ArrayBase< Concretize< T > >

List of all members.

Public Member Functions

 ListView (const ListView &v)
 ListView (const Base &l)
 ~ListView ()
 ListView (const Base &a, int offset, int length)
 ListView (Base &a, int offset, int length)
ListView operator() (int offset, int length) const
ListView operator() (int offset, int length)
ListViewoperator= (const ListView &v)
ListViewoperator= (const Base &b)
 operator const List< T > & () const
 operator List< T > & ()

Detailed Description

template<class T>
class SimTK::ListView< T >

ListView is a 'dummy' class which is completely interchangeable with List.

We use this to give tight control over deep and shallow copying, following these rules: (1) any copy construction or initialization into a List does a deep copy of the source, and (2) any copy construction or initialization into a ListView does a shallow copy. However, List& objects are interchangeable with ListView& objects. So passing a ListView object to a List& function parameter is allowed.


Constructor & Destructor Documentation

ListView ( const ListView< T > &  v  )  [inline]
ListView ( const Base l  )  [inline, explicit]
~ListView (  )  [inline]
ListView ( const Base a,
int  offset,
int  length 
) [inline]
ListView ( Base a,
int  offset,
int  length 
) [inline]

Member Function Documentation

operator const List< T > & (  )  const [inline]
operator List< T > & (  )  [inline]
ListView operator() ( int  offset,
int  length 
) [inline]
ListView operator() ( int  offset,
int  length 
) const [inline]
ListView& operator= ( const Base b  )  [inline]
ListView& operator= ( const ListView< T > &  v  )  [inline]

Reimplemented from ListBase< T >.

References ListBase< T >::operator=().


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

Generated on Wed Dec 30 11:05:22 2009 for SimTKcore by  doxygen 1.6.1