BALL  1.4.79
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RSVertex.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 
5 #ifndef BALL_STRUCTURE_RSVERTEX_H
6 #define BALL_STRUCTURE_RSVERTEX_H
7 
8 #ifndef BALL_STRUCTURE_GRAPHVERTEX_H
10 #endif
11 
12 
13 namespace BALL
14 {
15  class RSEdge;
16  class RSFace;
17  class ReducedSurface;
18  class RSComputer;
19  class SESEdge;
20  class SESFace;
21  class SESVertex;
22  class SolventExcludedSurface;
23  class SESComputer;
24  class SESSingularityCleaner;
25  class TriangulatedSES;
26  class SESTriangulator;
27  class SASEdge;
28  class SASFace;
29  class SASVertex;
30  class SolventAccessibleSurface;
31  class TriangulatedSAS;
32  class SASTriangulator;
33 
37  class BALL_EXPORT RSVertex : public GraphVertex< RSVertex,RSEdge,RSFace >
38  {
39  public:
40 
63  friend class RSEdge;
64  friend class RSFace;
65  friend class ReducedSurface;
66  friend class RSComputer;
67  friend class SESEdge;
68  friend class SESFace;
69  friend class SESVertex;
70  friend class SolventExcludedSurface;
71  friend class SESComputer;
72  friend class SESSingularityCleaner;
73  friend class TriangulatedSES;
74  friend class SESTriangulator;
75  friend class SASEdge;
76  friend class SASFace;
77  friend class SASVertex;
79  friend class TriangulatedSAS;
80  friend class SASTriangulator;
81 
83 
84 
87 
91  RSVertex();
92 
100  RSVertex(const RSVertex& rsvertex, bool deep = false);
101 
106  RSVertex(Index atom);
107 
111  virtual ~RSVertex();
113 
117 
125  void set(const RSVertex& rsvertex, bool deep = false);
126 
132  RSVertex& operator = (const RSVertex& rsvertex);
133 
135 
138 
142  void setAtom(Index atom);
143 
147  Index getAtom() const;
148 
150 
153 
158  virtual bool operator == (const RSVertex& rsvertex) const;
159 
164  virtual bool operator != (const RSVertex& rsvertex) const;
165 
169  virtual bool operator *= (const RSVertex& rsvertex) const;
170 
172 
173  protected:
174 
175  /*_ @name Attributes
176  */
178 
179  /*_ The index of the atom represented by the RSVertex
180  */
181  Index atom_;
182 
184 
185  };
186 
190 
194  BALL_EXPORT std::ostream& operator << (std::ostream& s, const RSVertex& rsvertex);
195 
197 
198 
199 } // namespace BALL
200 
201 #endif // BALL_STRUCTURE_RSVERTEX_H
#define BALL_CREATE(name)
Definition: create.h:62
#define BALL_EXPORT
Definition: COMMON/global.h:50