BALL  1.4.2
 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 namespace BALL
27 {
34  {
35  public:
36 
37  inline PDBAtomIteratorTraits();
38 
39  PDBAtomIteratorTraits(const Composite& composite);
40 
41  inline PDBAtomIteratorTraits(const PDBAtomIteratorTraits& traits);
42 
43  PDBAtomIteratorTraits& operator = (const PDBAtomIteratorTraits& traits);
44 
45  void resetPredicate();
46  };
47 
50  {
51  predicate_ = &RTTI::getDefault<KernelPredicate<PDBAtom> >();
52  }
53 
55  : CompositeIteratorTraits(traits)
56  {
57  }
58 
60  : CompositeIteratorTraits(composite)
61  {
62  predicate_ = &RTTI::getDefault<KernelPredicate<PDBAtom> >();
63  }
64 
66  {
68  return *this;
69  }
70 
72  {
73  predicate_ = &RTTI::getDefault<KernelPredicate<PDBAtom> >();
74  }
75 
76 
81 
85 
89 
91  typedef std::reverse_iterator<PDBAtomIterator> PDBAtomReverseIterator;
92 
94  typedef std::reverse_iterator<PDBAtomConstIterator> PDBAtomConstReverseIterator;
96 } // namespace BALL
97 
98 #endif // BALL_KERNEL_PDBATOMITERATOR_H