BALL
1.4.2
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
BALL
KERNEL
chainIterator.h
Go to the documentation of this file.
1
// -*- Mode: C++; tab-width: 2; -*-
2
// vi: set ts=2:
3
//
4
// $Id: chainIterator.h,v 1.21 2005/10/23 12:02:18 oliver Exp $
5
//
6
7
#ifndef BALL_KERNEL_CHAINITERATOR_H
8
#define BALL_KERNEL_CHAINITERATOR_H
9
10
#ifndef BALL_KERNEL_CHAIN_H
11
# include <
BALL/KERNEL/chain.h
>
12
#endif
13
14
#ifndef BALL_KERNEL_ITERATOR_H
15
# include <
BALL/KERNEL/iterator.h
>
16
#endif
17
18
#ifndef BALL_KERNEL_PREDICATE_H
19
# include <
BALL/KERNEL/predicate.h
>
20
#endif
21
22
namespace
BALL
23
{
29
class
BALL_EXPORT
ChainIteratorTraits
30
:
public
CompositeIteratorTraits
31
{
32
33
public
:
34
35
inline
ChainIteratorTraits
();
36
37
ChainIteratorTraits
(
const
Composite
& composite);
38
39
inline
ChainIteratorTraits
(
const
ChainIteratorTraits
& traits);
40
41
ChainIteratorTraits
& operator = (
const
ChainIteratorTraits
& traits);
42
43
void
resetPredicate();
44
};
45
46
inline
ChainIteratorTraits::ChainIteratorTraits
()
47
:
CompositeIteratorTraits
()
48
{
49
predicate_
= &RTTI::getDefault<KernelPredicate<Chain> >();
50
}
51
52
inline
ChainIteratorTraits::ChainIteratorTraits
(
const
Composite
& composite)
53
:
CompositeIteratorTraits
(composite)
54
{
55
predicate_
= &RTTI::getDefault<KernelPredicate<Chain> >();
56
}
57
58
inline
ChainIteratorTraits::ChainIteratorTraits
(
const
ChainIteratorTraits
& traits)
59
:
CompositeIteratorTraits
(traits)
60
{
61
}
62
63
inline
ChainIteratorTraits
&
ChainIteratorTraits::operator =
(
const
ChainIteratorTraits
& traits)
64
{
65
CompositeIteratorTraits::operator=
(traits);
66
return
*
this
;
67
}
68
69
inline
void
ChainIteratorTraits::resetPredicate
()
70
{
71
predicate_
= &RTTI::getDefault<KernelPredicate<Chain> >();
72
}
73
78
80
typedef
BidirectionalIterator<Composite, Chain, Composite::CompositeIterator, ChainIteratorTraits>
81
ChainIterator
;
82
84
typedef
ConstBidirectionalIterator<Composite, Chain, Composite::CompositeIterator, ChainIteratorTraits>
85
ChainConstIterator
;
86
88
typedef
std::reverse_iterator<ChainIterator>
ChainReverseIterator
;
89
91
typedef
std::reverse_iterator<ChainConstIterator>
ChainConstReverseIterator
;
93
}
// namespace BALL
94
95
#endif // BALL_KERNEL_CHAINITERATOR_H
96
Generated by
1.8.3.1