summaryrefslogtreecommitdiff
path: root/src/main/ElementVisitor.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/ElementVisitor.h')
-rw-r--r--src/main/ElementVisitor.h16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/main/ElementVisitor.h b/src/main/ElementVisitor.h
index 49247df..81b2f44 100644
--- a/src/main/ElementVisitor.h
+++ b/src/main/ElementVisitor.h
@@ -10,21 +10,27 @@
namespace vhc {
-class StraightElement;
-class Quadrupole;
-class Dipole;
-
-
+class StraightElement; //forward declaration
+class Quadrupole; //forward declaration
+class Dipole; //forward declaration
+
+/** Represente un visiteur d'elements.
+ * Le motif de conception des visiteurs est utilise pour ajouter des fonctionalites a des elements sans changer leur
+ * implementation. Il s'avere etre extremement utile pour des structures recursives, telles que les elements composees.
+ * @see http://fr.wikipedia.org/wiki/Visiteur_%28motif_de_conception%29 */
class ElementVisitor {
public:
ElementVisitor();
virtual ~ElementVisitor();
+ /** Visite un element droit. */
virtual void visit(const StraightElement* straight) const = 0;
+ /** Visite un quadrupole. */
virtual void visit(const Quadrupole* quadrupole) const = 0;
+ /** Visite un dipole. */
virtual void visit(const Dipole* dipole) const = 0;
};