25 #ifndef WSHAREDSEQUENCECONTAINER_H
26 #define WSHAREDSEQUENCECONTAINER_H
30 #include <boost/thread.hpp>
32 #include "WSharedObject.h"
38 template <
typename S >
81 void push_back(
const typename S::value_type& x );
88 void push_front(
const typename S::value_type& x );
118 typename S::value_type&
operator[](
size_t n );
128 const typename S::value_type&
operator[](
size_t n )
const;
138 typename S::value_type&
at(
size_t n );
148 const typename S::value_type&
at(
size_t n )
const;
156 void remove(
const typename S::value_type& element );
185 void replace(
const typename S::value_type& oldValue,
const typename S::value_type& newValue );
203 template <
typename Comparator >
204 void sort( Comparator comp );
213 template <
typename Comparator >
227 const typename S::value_type& value );
242 template <
typename S >
249 template <
typename S >
255 template <
typename S >
260 a->get().push_back( x );
263 template <
typename S >
268 a->get().insert( a->get().begin(), x );
271 template <
typename S >
279 template <
typename S >
287 template <
typename S >
292 size_t size = a->get().size();
296 template <
typename S >
300 return const_cast< S&
>( a->get() ).
operator[]( n );
304 template <
typename S >
308 return a->get().operator[]( n );
311 template <
typename S >
315 return const_cast< S&
>( a->get() ).at( n );
319 template <
typename S >
323 return a->get().at( n );
326 template <
typename S >
331 a->get().erase( std::remove( a->get().begin(), a->get().end(), element ), a->get().end() );
334 template <
typename S >
339 return a->get().erase( position );
342 template <
typename S >
349 return a->get().erase( first, last );
352 template <
typename S >
356 std::replace( a->get().begin(), a->get().end(), oldValue, newValue );
359 template <
typename S >
363 return std::count( a->get().begin(), a->get().end(), value );
366 template <
typename S >
367 template <
typename Comparator >
371 return std::sort( a->get().begin(), a->get().end(), comp );
374 template <
typename S >
375 template <
typename Comparator >
380 return std::sort( first, last, comp );
383 template <
typename S >
387 const typename S::value_type& value )
389 return std::find( first, last, value );
392 template <
typename S >
396 return std::find( a->get().begin(), a->get().end(), value );
399 #endif // WSHAREDSEQUENCECONTAINER_H