BALL
1.4.2
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
BALL
VIEW
MODELS
atomBondModelBaseProcessor.h
Go to the documentation of this file.
1
// -*- Mode: C++; tab-width: 2; -*-
2
// vi: set ts=2:
3
//
4
// $Id: atomBondModelBaseProcessor.h,v 1.18 2005/12/23 17:02:17 amoll Exp $
5
//
6
7
#ifndef BALL_VIEW_MODELS_ATOMBONDMODELBASEPROCESSOR_H
8
#define BALL_VIEW_MODELS_ATOMBONDMODELBASEPROCESSOR_H
9
10
#ifndef BALL_DATATYPE_HASHSET_H
11
# include <
BALL/DATATYPE/hashSet.h
>
12
#endif
13
14
#ifndef BALL_VIEW_MODELS_MODELPROCESSOR_H
15
# include <
BALL/VIEW/MODELS/modelProcessor.h
>
16
#endif
17
18
namespace
BALL
19
{
20
class
Atom
;
21
class
Bond;
22
23
namespace
VIEW
24
{
31
class
BALL_VIEW_EXPORT
AtomBondModelBaseProcessor
32
:
public
ModelProcessor
33
{
34
public
:
35
36
BALL_CREATE
(
AtomBondModelBaseProcessor
)
37
38
41
45
AtomBondModelBaseProcessor
();
46
49
AtomBondModelBaseProcessor
(
const
AtomBondModelBaseProcessor
& baseProcessor);
50
53
virtual
~
AtomBondModelBaseProcessor
();
54
62
virtual
void
clear();
63
65
68
73
void
set
(
const
AtomBondModelBaseProcessor
& processor);
74
78
const
AtomBondModelBaseProcessor
& operator = (
const
AtomBondModelBaseProcessor
& processor);
79
81
84
92
virtual
Processor::Result
operator() (
Composite
& composite);
93
95
98
106
virtual
void
dump(std::ostream& s = std::cout,
Size
depth = 0)
const
;
107
109
virtual
void
clearComposites();
110
112
virtual
bool
createGeometricObjects();
113
114
protected
:
115
117
126
132
void
insertAtom_(
const
Atom
* atom);
133
136
void
clearUsedAtoms_();
137
140
std::list<const Atom*>& getAtomList_();
141
144
HashSet<const Atom*>
& getAtomSet_();
145
151
void
buildBondModels_();
152
154
155
virtual
void
visualiseBond_(
const
Bond
& bond);
156
157
virtual
void
visualiseRings_
(){};
158
159
vector<vector<Atom*> > rings_;
160
HashSet<const Atom*>
ring_atoms_
;
161
162
private
:
163
164
std::list<const Atom*>
used_atoms_
;
165
HashSet<const Atom*>
atom_set_
;
166
};
167
168
# ifndef BALL_NO_INLINE_FUNCTIONS
169
# include <BALL/VIEW/MODELS/atomBondModelBaseProcessor.iC>
170
# endif
171
172
} }
// namespaces
173
174
#endif // BALL_VIEW_MODELS_ATOMBONDMODELBASEPROCESSOR_H
Generated by
1.8.3.1