BALL  1.5.0
moleculeIterator.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 // $Id: moleculeIterator.h,v 1.16 2005/10/23 12:02:19 oliver Exp $
5 //
6 
7 #ifndef BALL_KERNEL_MOLECULEITERATOR_H
8 #define BALL_KERNEL_MOLECULEITERATOR_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 {
29  {
30  public:
31 
34  {
35  predicate_ = &RTTI::getDefault<KernelPredicate<Molecule> >();
36  }
37 
39  : CompositeIteratorTraits(composite)
40  {
41  predicate_ = &RTTI::getDefault<KernelPredicate<Molecule> >();
42  }
43 
44  MoleculeIteratorTraits(const MoleculeIteratorTraits& traits, bool /* deep */ = true)
45  : CompositeIteratorTraits(traits)
46  {
47  }
48 
49  MoleculeIteratorTraits &operator = (const MoleculeIteratorTraits& traits)
50  {
52  return *this;
53  }
54 
56  {
57  predicate_ = &RTTI::getDefault<KernelPredicate<Molecule> >();
58  }
59  };
60 
61 
63  typedef BidirectionalIterator
64  <Composite, Molecule, Composite::CompositeIterator, MoleculeIteratorTraits>
66 
71 
73  typedef std::reverse_iterator<MoleculeIterator> MoleculeReverseIterator;
74 
76  typedef std::reverse_iterator<MoleculeConstIterator> MoleculeConstReverseIterator;
77 
80 } // namespace BALL
81 
82 #endif // BALL_KERNEL_MOLECULEITERATOR_H
BALL::MoleculeIteratorTraits::MoleculeIteratorTraits
MoleculeIteratorTraits(const Composite &composite)
Definition: moleculeIterator.h:38
BALL::Molecule
Definition: molecule.h:29
BALL::CompositeIteratorTraits::operator=
CompositeIteratorTraits & operator=(const CompositeIteratorTraits &traits)
Assignment operator.
Definition: iterator.h:259
BALL_EXPORT
#define BALL_EXPORT
Definition: COMMON/global.h:50
BALL::MoleculeIteratorTraits::MoleculeIteratorTraits
MoleculeIteratorTraits(const MoleculeIteratorTraits &traits, bool=true)
Definition: moleculeIterator.h:44
IteratorWrapper
#define IteratorWrapper(type)
Definition: stdIteratorWrapper.h:4
BALL::ConstBidirectionalIterator
Definition: bidirectionalIterator.h:23
BALL::MoleculeConstIterator
ConstBidirectionalIterator< Composite, Molecule, Composite::CompositeIterator, MoleculeIteratorTraits > MoleculeConstIterator
Definition: moleculeIterator.h:70
stdIteratorWrapper.h
BALL
Definition: constants.h:12
BALL::MoleculeIteratorTraits::MoleculeIteratorTraits
MoleculeIteratorTraits()
Definition: moleculeIterator.h:32
predicate.h
ConstIteratorWrapper
#define ConstIteratorWrapper(type)
Definition: stdIteratorWrapper.h:17
BALL::MoleculeReverseIterator
std::reverse_iterator< MoleculeIterator > MoleculeReverseIterator
Definition: moleculeIterator.h:73
BALL::MoleculeIteratorTraits::resetPredicate
void resetPredicate()
Definition: moleculeIterator.h:55
BALL::MoleculeIterator
BidirectionalIterator< Composite, Molecule, Composite::CompositeIterator, MoleculeIteratorTraits > MoleculeIterator
Definition: moleculeIterator.h:65
BALL::Composite::CompositeIterator
BidirectionalIterator< Composite, Composite, Composite *, CompositeIteratorTraits > CompositeIterator
Definition: composite.h:1468
BALL::MoleculeIteratorTraits
Definition: moleculeIterator.h:27
BALL::CompositeIteratorTraits
Definition: iterator.h:83
BALL::Composite
Definition: composite.h:71
iterator.h
BALL::MoleculeConstReverseIterator
std::reverse_iterator< MoleculeConstIterator > MoleculeConstReverseIterator
Definition: moleculeIterator.h:76