Page principale | Liste des namespaces | Hiérarchie des classes | Liste par ordre alphabétique | Liste des composants | Liste des fichiers | Composants | Déclarations

pi2d14_molecule_ligne.h

Aller à la documentation de ce fichier.
00001 
00002 #ifndef SIMULATOM_MOLECULE_LIGNE
00003 #define SIMULATOM_MOLECULE_LIGNE
00004 
00005 #include "pi2d14/pi2d14_abstractmoleculed.h"
00006 
00007 #include "Atom.h"
00008 
00009 
00010 namespace ALGOATOMD
00011 {
00012 
00013 
00014         #define MOLECULE_LIGNE_NB_ALGO          2       //le nombre d'algo pour la ligne d'atome
00015         
00016 
00017         #define NBR_STEP                        4                       //le nombre de pas durant la rotation des pattes pour l'algorithme 2
00018         #define MV_RAYON                        100                     //le rayon de rotation des pattes pour l'algorithme 2
00019 
00025         class MoleculeLigne : public AbstractMoleculeD
00026         {
00027         private :
00028 
00029                 API::Atom *atoms;                                                                       //le tableau d'atome de la molecule
00030                 
00031                 
00032                 unsigned int size, pair;                                                        //la taille de la ligne(pair sert a determiner les atomes pair)
00033                 int indexInit,index1,index2,index3,index4,index5;       //les index des mouvements synchronise
00034                 bool m1,m2,m3,m4,m5;                                                            //true si le mouvement de meme nom est en cours
00035                                                                                                                         //toutes les valeur sont false si on est dans le mouvement d'initialisation
00036 
00040                 void initDep1();
00044                 void algoDep1();
00048                 void initDep2();
00052                 void algoDep2();
00053 
00054         protected :
00055                 
00060                 bool needMoreMouvement();
00061 
00062         public :
00063 
00069                 MoleculeLigne(int buildParam, int typeDep);
00073                 virtual ~MoleculeLigne();
00074 
00079                 void processMovement();
00083                 void renderMoleculeInfo();
00084                 //int getNbAlgo();
00085         };
00086 
00087 }
00088 
00089 #endif
00090 

Généré le Fri Mar 26 13:02:03 2004 pour AlgoAtomD par doxygen 1.3.5