BALL  1.4.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | List of all members
BALL::List< Value > Class Template Reference

#include <BALL/DATATYPE/list.h>

Inheritance diagram for BALL::List< Value >:

Public Types

Type Definitions
typedef std::list< Value >
::iterator 
Iterator
 
typedef std::list< Value >
::iterator 
iterator
 
typedef std::list< Value >
::const_iterator 
ConstIterator
 
typedef std::list< Value >
::const_iterator 
const_iterator
 

Public Member Functions

bool operator== (const List< Value > &list) const
 
bool operator!= (const List< Value > &list) const
 
Constructors and Destructors
 List ()
 
 List (const List &new_list, bool)
 
void destroy ()
 
virtual ~List ()
 
Assignment
void set (const List &list, bool=true)
 
const Listoperator= (const List &list)
 
void get (List &list, bool deep=true) const
 Assign the content of a list to another. More...
 
void swap (List &list)
 Swaps the contents of two lists. More...
 
Accessors
Size getSize () const
 
bool remove (const Value &item)
 
Predicates
bool isEmpty () const
 
DatatypeMiscellaneous
virtual void host (Visitor< List< Value > > &visitor)
 
Internal Iterators
bool apply (UnaryProcessor< Value > &processor)
 

Additional Inherited Members

- Public Attributes inherited from std::list< T >
elements
 STL member. More...
 

Detailed Description

template<typename Value>
class BALL::List< Value >

Extended list object. This object is an improved version of the STL list class

Definition at line 34 of file list.h.

Member Typedef Documentation

template<typename Value>
typedef std::list<Value>::const_iterator BALL::List< Value >::const_iterator

Definition at line 53 of file list.h.

template<typename Value>
typedef std::list<Value>::const_iterator BALL::List< Value >::ConstIterator

Constant iterator type.

Definition at line 51 of file list.h.

template<typename Value>
typedef std::list<Value>::iterator BALL::List< Value >::Iterator

Iterator type.

Definition at line 45 of file list.h.

template<typename Value>
typedef std::list<Value>::iterator BALL::List< Value >::iterator

Definition at line 47 of file list.h.

Constructor & Destructor Documentation

template<typename Value>
BALL::List< Value >::List ( )
inline

Default constructor. Create an empty list.

Definition at line 64 of file list.h.

template<typename Value>
BALL::List< Value >::List ( const List< Value > &  new_list,
bool   
)
inline

Copy constructor. Create a copy of an existing list.

Parameters
mapthe list to be copied
deepignored

Definition at line 74 of file list.h.

template<typename Value>
virtual BALL::List< Value >::~List ( )
inlinevirtual

Destructor

Definition at line 88 of file list.h.

Member Function Documentation

template<typename Value>
bool BALL::List< Value >::apply ( UnaryProcessor< Value > &  processor)
inline

Processor application method. Applies the processor to each entry of the list.

Parameters
processorthe processor to be applied

Definition at line 194 of file list.h.

template<typename Value>
void BALL::List< Value >::destroy ( )
inline

Clear the list

Definition at line 81 of file list.h.

template<typename Value>
void BALL::List< Value >::get ( List< Value > &  list,
bool  deep = true 
) const
inline

Assign the content of a list to another.

Definition at line 121 of file list.h.

template<typename Value>
Size BALL::List< Value >::getSize ( ) const
inline

Return the size of the list.

Definition at line 141 of file list.h.

template<typename Value >
void BALL::List< Value >::host ( Visitor< List< Value > > &  visitor)
virtual

Visitor host method. Lists may be visited.

Parameters
visitorthe visitor

Definition at line 247 of file list.h.

template<typename Value>
bool BALL::List< Value >::isEmpty ( ) const
inline

Return true if the list is empty. This method return true if the list does not contain any entries.

Definition at line 171 of file list.h.

template<typename Value>
bool BALL::List< Value >::operator!= ( const List< Value > &  list) const
inline

Inequality operator. Test if two instances differ in at least one element.

Definition at line 239 of file list.h.

template<typename Value>
const List& BALL::List< Value >::operator= ( const List< Value > &  list)
inline

Assign a list from another.

Definition at line 114 of file list.h.

template<typename Value>
bool BALL::List< Value >::operator== ( const List< Value > &  list) const
inline

Equality operator. Test if two instances have the same size and same items at the same positions.

Definition at line 215 of file list.h.

template<typename Value>
bool BALL::List< Value >::remove ( const Value item)
inline

Remove an item from the list. The first item that matches item will be removed.

Parameters
itemthe item to be removed
Returns
bool true if the item was removed

Definition at line 150 of file list.h.

template<typename Value>
void BALL::List< Value >::set ( const List< Value > &  list,
bool  = true 
)
inline

Assign a list from another.

Parameters
listthe map to be copied
deepignored

Definition at line 101 of file list.h.

template<typename Value>
void BALL::List< Value >::swap ( List< Value > &  list)
inline

Swaps the contents of two lists.

Definition at line 127 of file list.h.