diff options
author | Christian Vazquez <christian.vazquez@epfl.ch> | 2011-04-19 07:49:34 +0000 |
---|---|---|
committer | Christian Vazquez <christian.vazquez@epfl.ch> | 2011-04-19 07:49:34 +0000 |
commit | 12a5fafab92e4a6803c56af5a934ba21f84ee762 (patch) | |
tree | 9ac6077abfe6624568735d0c629eaec26b0f2838 | |
parent | 9d9da8b4ec09741c7482bea0da0ee8ac8c4366a4 (diff) | |
download | vhc-12a5fafab92e4a6803c56af5a934ba21f84ee762.tar.gz vhc-12a5fafab92e4a6803c56af5a934ba21f84ee762.tar.bz2 vhc-12a5fafab92e4a6803c56af5a934ba21f84ee762.zip |
ajouté qq lignes de commentaire.
-rw-r--r-- | src/main/Accelerator.h | 18 | ||||
-rw-r--r-- | src/main/CompositeElement.h | 4 | ||||
-rw-r--r-- | src/main/CurvedElement.h | 3 | ||||
-rw-r--r-- | src/main/Dipole.h | 6 | ||||
-rw-r--r-- | src/main/Element.h | 2 | ||||
-rw-r--r-- | src/main/FODO.h | 7 |
6 files changed, 30 insertions, 10 deletions
diff --git a/src/main/Accelerator.h b/src/main/Accelerator.h index 9b61922..89f87b3 100644 --- a/src/main/Accelerator.h +++ b/src/main/Accelerator.h @@ -16,7 +16,8 @@ namespace vhc { - +/** Représente un accélérateur. Cette classe contient en particulier une méthode + * qui fait évoluer les particules qu'elle contient. */ class Accelerator { private : @@ -28,14 +29,13 @@ private : protected: - /* Attributs d'un accélérateur : une collection d'éléments, et une de particules. */ + /** Attributs d'un accélérateur : une collection d'éléments, et une de particules. */ std::vector< Element* > elementCollec; std::vector< Particle* > particleCollec; public: /** Constructeur d'un accélérateur. */ - // Pour l'instant j'ai décidé que l'accélérateur possède deux containers (cf. slide35) Accelerator (): elementCollec(0), particleCollec(0) @@ -43,14 +43,10 @@ public: virtual ~Accelerator() {clear();} - /* Retourne un pointeur sur un élément de l'accélérateur, - * il n'y a pas besoin d'avoir l'élément lui-même. - * Question : où mettre le 'delete' ? */ + /** Retourne un pointeur sur un élément de l'accélérateur.*/ Element* getElement(int rank) const { return elementCollec[rank]; } - /* Retourne un pointeur sur une particule de l'accélérateur, - * il n'y a pas besoin d'avoir la particule elle-même. - * Question : où mettre le 'delete' ? */ + /* Retourne un pointeur sur une particule de l'accélérateur.*/ Particle* getParticle(int rank) const { return particleCollec[rank];} /** Retourne une représentation en chaîne de caractères de cet accélérateur. */ @@ -85,16 +81,18 @@ public: elementCollec.clear(); } + /** Retourne la liste des éléments de l'accélérateur.*/ const std::vector< Element* >& getElements() const { return elementCollec; } + /** Retourne la liste des particules de l'accélérateur.*/ const std::vector< Particle* >& getParticles() const { return particleCollec; } - /** Fait évoluer l'accélérateur d'un lapse de temps dt. */ + /** Fait évoluer l'accélérateur d'un laps de temps dt. */ void step(double dt) { for (int i = 0; i < particleCollec.size(); ++i) { diff --git a/src/main/CompositeElement.h b/src/main/CompositeElement.h index ce274b1..42786e2 100644 --- a/src/main/CompositeElement.h +++ b/src/main/CompositeElement.h @@ -38,12 +38,16 @@ public: /** Determine si une particule a passe cet element, donc passe le dernier element composant. */ virtual bool isPast(const Particle& particle) const; + /** Retourne le vecteur résultant du champ magnétique de tous les éléments, à une certaine position donnée.*/ virtual Vector3D magneticFieldAt(const Vector3D& position) const; + /** Retourne le vecteur résultant du champ électrique de tous les éléments, à une certaine position donnée.*/ virtual Vector3D electricFieldAt(const Vector3D& position) const; + // TODO une explication simple.....lol virtual void accept(const ElementVisitor& v) const; + /** Retourne cet élément composé sous forme de chaîne de caractères.*/ virtual std::string toString() const; }; diff --git a/src/main/CurvedElement.h b/src/main/CurvedElement.h index f11ff34..f0aeae6 100644 --- a/src/main/CurvedElement.h +++ b/src/main/CurvedElement.h @@ -60,7 +60,10 @@ public: /** Retourne l'angle entre la position d'entree, le centre de courbure et la position de sortie. */ double getAngle() const; + /** Retourne le type ("Cuved Element") de cet élément.*/ virtual std::string getType() const; + + /** Retourne cet élément courbe sous forme de chaîne de caractères.*/ virtual std::string toString() const; }; diff --git a/src/main/Dipole.h b/src/main/Dipole.h index 7c9c24c..b5c1334 100644 --- a/src/main/Dipole.h +++ b/src/main/Dipole.h @@ -45,13 +45,19 @@ public: * Ceci correspondrait en realite a une correction du champ a l'aide d'electroaimants. */ void setMagneticField(const Vector3D& field); + /** Retourne le vecteur du champ magnétique de cet élément, à une certaine position donnée.*/ virtual Vector3D magneticFieldAt(const Vector3D& position) const; + /** Retourne le type ("Dipole") de cet élément.*/ virtual std::string getType() const; + + /** Retourne le dipole sous forme de chaîne de caractères.*/ virtual std::string toString() const; + // TODO explication simple virtual void accept(const ElementVisitor& v) const; + /** Redéfinition du constructeur de copie hérité de la classe 'cloneable'.*/ virtual Dipole* clone() const; diff --git a/src/main/Element.h b/src/main/Element.h index 8f8ffa1..a34200c 100644 --- a/src/main/Element.h +++ b/src/main/Element.h @@ -106,8 +106,10 @@ public: * dans des implementations concretes. */ virtual std::string getType() const; + /** Retourne une représentation de cet élément sous forme de chaînes de caractères.*/ virtual std::string toString() const; + //TODO expl. virtual void accept(const ElementVisitor& v) const = 0; }; diff --git a/src/main/FODO.h b/src/main/FODO.h index 924849d..a3f19f2 100644 --- a/src/main/FODO.h +++ b/src/main/FODO.h @@ -14,6 +14,10 @@ namespace vhc { +/** Représente une maille FODO, qui est un composé d'éléments constitué + * -d'un quadrupole focalisant; + * -de deux éléments droits; + * -à la sortie, d'un quadrupole défocalisant. */ class FODO: public CompositeElement { private: @@ -25,10 +29,13 @@ private: StraightElement* straightElement2; public: + /** Constructeur d'une maille FODO.*/ FODO(const Vector3D& entry, const Vector3D& exit, double sectionRadius, double straightLength, double focalizingCoefficient, Element* next = NULL); + /** Destructeur virtuel.*/ virtual ~FODO(); + // TODO expl. virtual FODO* clone() const; }; |