BALL  1.4.79
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
PDBAtomIterator.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 // $Id: PDBAtomIterator.h,v 1.25 2005/10/23 12:02:17 oliver Exp $
5 //
6 
7 #ifndef BALL_KERNEL_PDBATOMITERATOR_H
8 #define BALL_KERNEL_PDBATOMITERATOR_H
9 
10 #ifndef BALL_COMMON_H
11 # include <BALL/common.h>
12 #endif
13 
14 #ifndef BALL_KERNEL_PDBATOM_H
15 # include <BALL/KERNEL/PDBAtom.h>
16 #endif
17 
18 #ifndef BALL_KERNEL_ITERATOR_H
19 # include <BALL/KERNEL/iterator.h>
20 #endif
21 
22 #ifndef BALL_KERNEL_PREDICATE_H
23 # include <BALL/KERNEL/predicate.h>
24 #endif
25 
26 #ifndef BALL_CONCEPT_STDITERATORWRAPPER_H
28 #endif
29 
30 namespace BALL
31 {
38  {
39  public:
40 
41  inline PDBAtomIteratorTraits();
42 
43  PDBAtomIteratorTraits(const Composite& composite);
44 
45  inline PDBAtomIteratorTraits(const PDBAtomIteratorTraits& traits);
46 
47  PDBAtomIteratorTraits& operator = (const PDBAtomIteratorTraits& traits);
48 
49  void resetPredicate();
50  };
51 
54  {
55  predicate_ = &RTTI::getDefault<KernelPredicate<PDBAtom> >();
56  }
57 
59  : CompositeIteratorTraits(traits)
60  {
61  }
62 
64  : CompositeIteratorTraits(composite)
65  {
66  predicate_ = &RTTI::getDefault<KernelPredicate<PDBAtom> >();
67  }
68 
70  {
72  return *this;
73  }
74 
76  {
77  predicate_ = &RTTI::getDefault<KernelPredicate<PDBAtom> >();
78  }
79 
80 
85 
89 
93 
95  typedef std::reverse_iterator<PDBAtomIterator> PDBAtomReverseIterator;
96 
98  typedef std::reverse_iterator<PDBAtomConstIterator> PDBAtomConstReverseIterator;
100 
103 } // namespace BALL
104 
105 #endif // BALL_KERNEL_PDBATOMITERATOR_H
ConstBidirectionalIterator< Composite, PDBAtom, Composite::CompositeIterator, PDBAtomIteratorTraits > PDBAtomConstIterator
A constant bidirectional iterator for the PDBAtom class.
PDBAtomIteratorTraits & operator=(const PDBAtomIteratorTraits &traits)
#define IteratorWrapper(type)
#define ConstIteratorWrapper(type)
const UnaryPredicate< Composite > * predicate_
The predicate.
Definition: iterator.h:235
CompositeIteratorTraits & operator=(const CompositeIteratorTraits &traits)
Assignment operator.
Definition: iterator.h:259
BidirectionalIterator< Composite, PDBAtom, Composite::CompositeIterator, PDBAtomIteratorTraits > PDBAtomIterator
A mutable bidirectional iterator for the PDBAtom class.
Mutable bidirectional iterator.
std::reverse_iterator< PDBAtomIterator > PDBAtomReverseIterator
A mutable reverse bidirectional iterator for the PDBAtom class.
std::reverse_iterator< PDBAtomConstIterator > PDBAtomConstReverseIterator
A constant reverse bidirectional iterator for the PDBAtom class.
#define BALL_EXPORT
Definition: COMMON/global.h:50