BALL  1.4.79
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
connectedComponentsProcessor.h
Go to the documentation of this file.
1 #ifndef BALL_STRUCTURE_CONNECTEDCOMPONENTSPROCESSOR_H
2 #define BALL_STRUCTURE_CONNECTEDCOMPONENTSPROCESSOR_H
3 
4 #ifndef BALL_CONCEPT_PROCESSOR_H
5 # include <BALL/CONCEPT/processor.h>
6 #endif
7 
8 #ifndef BALL_KERNEL_SYSTEM_H
9 # include <BALL/KERNEL/system.h>
10 #endif
11 
12 namespace BALL
13 {
21  : public UnaryProcessor<AtomContainer>
22  {
23  public:
27  typedef std::vector<Atom*> Component;
28  typedef std::vector<Component> ComponentVector;
30 
32 
33 
37 
40 
44 
48 
50  virtual bool start();
51 
54  void clear();
55 
58  virtual Processor::Result operator ()(AtomContainer& ac);
59 
61  virtual bool finish();
62 
64 
68 
70  Size getNumberOfConnectedComponents();
71 
73  ComponentVector& getComponents();
74 
76  const ComponentVector& getComponents() const;
77 
91  Size splitIntoMolecules(System& to_split);
92 
94 
95  protected:
97  };
98 }
99 
100 #endif // BALL_STRUCTURE_CONNECTEDCOMPONENTSPROCESSOR_H
#define BALL_CREATE(name)
Definition: create.h:62
#define BALL_EXPORT
Definition: COMMON/global.h:50