BALL  1.5.0
nucleotideIterator.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 // $Id: nucleotideIterator.h,v 1.13 2005/10/23 12:02:19 oliver Exp $
5 //
6 
7 #ifndef BALL_KERNEL_NUCLEOTIDEITERATOR_H
8 #define BALL_KERNEL_NUCLEOTIDEITERATOR_H
9 
10 #ifndef BALL_KERNEL_ITERATOR_H
11 # include <BALL/KERNEL/iterator.h>
12 #endif
13 
14 #ifndef BALL_KERNEL_PREDICATE_H
15 # include <BALL/KERNEL/predicate.h>
16 #endif
17 
18 #ifndef BALL_CONCEPT_STDITERATORWRAPPER_H
20 #endif
21 
22 namespace BALL
23 {
24  class Nucleotide;
25 
31  {
32  public:
33 
36  {
37  predicate_ = &RTTI::getDefault<KernelPredicate<Nucleotide> >();
38  }
39 
41  : CompositeIteratorTraits(composite)
42  {
43  predicate_ = &RTTI::getDefault<KernelPredicate<Nucleotide> >();
44  }
45 
46  NucleotideIteratorTraits(const NucleotideIteratorTraits& traits, bool /* deep */ = true)
47  : CompositeIteratorTraits(traits)
48  {
49  }
50 
52  {
54  return *this;
55  }
56 
58  {
59  predicate_ = &RTTI::getDefault<KernelPredicate<Nucleotide> >();
60  }
61  };
62 
63 
64 
65  typedef BidirectionalIterator
66  <Composite, Nucleotide, Composite::CompositeIterator, NucleotideIteratorTraits>
68 
72 
73  typedef std::reverse_iterator<NucleotideIterator> NucleotideReverseIterator;
74 
75  typedef std::reverse_iterator<NucleotideConstIterator> NucleotideConstReverseIterator;
76 
79 } // namespace BALL
80 
81 #endif // BALL_KERNEL_NUCLEOTIDEITERATOR_H
BALL::Nucleotide
Definition: nucleotide.h:35
BALL::CompositeIteratorTraits::operator=
CompositeIteratorTraits & operator=(const CompositeIteratorTraits &traits)
Assignment operator.
Definition: iterator.h:259
BALL_EXPORT
#define BALL_EXPORT
Definition: COMMON/global.h:50
IteratorWrapper
#define IteratorWrapper(type)
Definition: stdIteratorWrapper.h:4
BALL::ConstBidirectionalIterator
Definition: bidirectionalIterator.h:23
BALL::NucleotideConstReverseIterator
std::reverse_iterator< NucleotideConstIterator > NucleotideConstReverseIterator
Definition: nucleotideIterator.h:75
stdIteratorWrapper.h
BALL::NucleotideIteratorTraits::resetPredicate
void resetPredicate()
Definition: nucleotideIterator.h:57
BALL::NucleotideIteratorTraits::NucleotideIteratorTraits
NucleotideIteratorTraits()
Definition: nucleotideIterator.h:34
BALL
Definition: constants.h:12
BALL::NucleotideIterator
BidirectionalIterator< Composite, Nucleotide, Composite::CompositeIterator, NucleotideIteratorTraits > NucleotideIterator
Definition: nucleotideIterator.h:67
predicate.h
ConstIteratorWrapper
#define ConstIteratorWrapper(type)
Definition: stdIteratorWrapper.h:17
BALL::NucleotideConstIterator
ConstBidirectionalIterator< Composite, Nucleotide, Composite::CompositeIterator, NucleotideIteratorTraits > NucleotideConstIterator
Definition: nucleotideIterator.h:71
BALL::NucleotideReverseIterator
std::reverse_iterator< NucleotideIterator > NucleotideReverseIterator
Definition: nucleotideIterator.h:73
BALL::Composite::CompositeIterator
BidirectionalIterator< Composite, Composite, Composite *, CompositeIteratorTraits > CompositeIterator
Definition: composite.h:1468
BALL::CompositeIteratorTraits
Definition: iterator.h:83
BALL::Composite
Definition: composite.h:71
iterator.h
BALL::NucleotideIteratorTraits::NucleotideIteratorTraits
NucleotideIteratorTraits(const Composite &composite)
Definition: nucleotideIterator.h:40
BALL::NucleotideIteratorTraits::NucleotideIteratorTraits
NucleotideIteratorTraits(const NucleotideIteratorTraits &traits, bool=true)
Definition: nucleotideIterator.h:46
BALL::NucleotideIteratorTraits
Definition: nucleotideIterator.h:29