tool::window_maker< InputIterator, WSize, Step, Bottom > Struct Template Reference

Iterable object that builds windows over a sequence. More...

#include <trace-tools/tool/window.hh>

Inheritance diagram for tool::window_maker< InputIterator, WSize, Step, Bottom >:

tool::iterable< Bottom > tool::static_base< Bottom >

List of all members.

Public Types

typedef HIDDEN exact_type
typedef HIDDEN iterator

Public Member Functions

 window_maker (const InputIterator &first, const InputIterator &last)
iterator begin ()
iterator end ()
template<class OutputIterator>
void operator() (const OutputIterator &output)
Downcast methods
const exact_typeexact () const
exact_typeexact ()
const exact_typeexact_ptr () const
exact_typeexact_ptr ()

Friends

class window< InputIterator, WSize, Step >


Detailed Description

template<class InputIterator, unsigned WSize, unsigned Step = 1, class Bottom = bottom>
struct tool::window_maker< InputIterator, WSize, Step, Bottom >

Iterable object that builds windows over a sequence.

window_maker's main role is to provide a begin() and an end() method that return windows over a sequence.

See also:
window

Member Typedef Documentation

template<class Bottom = bottom>
typedef HIDDEN tool::iterable< Bottom >::exact_type [inherited]

Exact type for this template instantiation.

Reimplemented from tool::static_base< Bottom >.

template<class Bottom = bottom>
typedef HIDDEN tool::iterable< Bottom >::iterator [inherited]

Iterator type for this template instantiation.


Constructor & Destructor Documentation

template<class I, unsigned Ws, unsigned S, class B>
tool::window_maker< I, Ws, S, B >::window_maker ( const I &  first,
const I &  last 
) [inline]

Construct a window_maker from a sequence.


Member Function Documentation

template<class B>
iterable< B >::iterator tool::iterable< B >::begin (  )  [inline, inherited]

Get an iterator to the first element.

template<class B>
iterable< B >::iterator tool::iterable< B >::end (  )  [inline, inherited]

Get an iterator to the end (past the last element).

template<class B>
template<class O>
void tool::iterable< B >::operator() ( const O &  output  )  [inline, inherited]

Copy elements to output .

template<class Bottom>
const static_base< Bottom >::exact_type & tool::static_base< Bottom >::exact (  )  const [inline, inherited]

Safely downcast to the exact type as a const reference.

template<class Bottom>
static_base< Bottom >::exact_type & tool::static_base< Bottom >::exact (  )  [inline, inherited]

Safely downcast to the exact type as a non-const reference.

template<class Bottom>
const static_base< Bottom >::exact_type * tool::static_base< Bottom >::exact_ptr (  )  const [inline, inherited]

Safely downcast to the exact type as a const pointer.

template<class Bottom>
static_base< Bottom >::exact_type * tool::static_base< Bottom >::exact_ptr (  )  [inline, inherited]

Safely downcast to the exact type as a non-const pointer.


The documentation for this struct was generated from the following files:
Generated on Wed Sep 12 16:02:47 2007 for trace-tools by  doxygen 1.5.3