Class Model

  • All Implemented Interfaces:
    java.io.Serializable

    public class Model
    extends java.lang.Object
    implements java.io.Serializable
    Cette classe est le coeur du RdP. C'est dans cette classe que l'on va stocker les places, transitions et arcs du RdP et que l'on va calculer les matrices du RdP.
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      java.util.List<Arc> arcVector  
      (package private) java.util.Vector<java.util.Vector<java.lang.Integer>> C  
      (package private) java.util.Vector<java.lang.Integer> M0  
      int nbArc  
      int nbPlace  
      int nbTransition  
      java.util.List<Place> placeVector  
      java.util.List<Transition> transitionVector  
      (package private) java.util.Vector<java.util.Vector<java.lang.Integer>> w_moins  
      (package private) java.util.Vector<java.util.Vector<java.lang.Integer>> w_plus  
    • Constructor Summary

      Constructors 
      Constructor Description
      Model()
      Constructeur du modèle.
      Model​(Model model)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addArc​(Arc a)
      Ajouter un arc.
      void addPlace​(Place p)
      Ajouter une place, et mettre à jour les matrices.
      void addTransition​(Transition t)
      Ajouter une transition, puis mettre à jour les matrices.
      void clearAll()
      Vider les listes de places et de transition.
      private void clearMatrices()
      Vider complétement les matrices : utiliser initialize() ensuite
      void fill_C()
      Remplir C
      java.util.Vector<java.lang.Integer> fill_M0()
      Remplir M0
      void fill_W()
      Remplir W+ et W-
      private void fillAll()
      Remplir toutes les matrices comme il faut !
      java.lang.String get_C()
      Méthode qui permet d'écrire la matrice C au format LaTeX dans un String.
      java.util.Vector<java.util.Vector<java.lang.Integer>> getC()
      Méthode qui permet de récupérer la matrice d'incidence C.
      java.util.Vector<java.lang.Integer> getM0()
      Méthode qui permet de récupérer le marquage initial
      java.util.Vector<java.lang.Integer> getMarquage()
      Méthode qui permet de récupérer le marquage actuel du model.
      java.util.List<Transition> getTransitionFranchissables()
      Méthode qui permet de récupérer la liste des transitions franchissables pour le marquage actuel du modèle.
      java.util.List<Transition> getTransitionFranchissables​(java.util.Vector<java.lang.Integer> marquage)
      Méthode qui permet de récupérer la liste des transitions franchissables pour le marquage donné en paramètre.
      java.util.Vector<java.util.Vector<java.lang.Integer>> getW_moins()
      Méthode qui permet de récupérer la matrice W-.
      java.util.Vector<java.util.Vector<java.lang.Integer>> getW_plus()
      Méthode qui permet de récupérer la matrice W+.
      private void initialize()
      Remplir les matrices à la bonne taille avec des 0
      void print_W_moins()
      Méthode qui permet d'afficher W- dans la console.
      void print_W_plus()
      Méthode qui permet d'afficher la matrice W+ dans la console.
      void removeArc​(Arc a)
      Méthode qui permet de supprimer un arc.
      void removeArcs​(java.util.List<Arc> arcToDelete)
      Méthode qui permet de supprimer une liste d'arcs.
      void removePlace​(Place place)
      Supprimer une place
      void removePlace​(java.lang.String name)
      Supprimer une place
      void removeTransition​(Transition transition)
      Supprimer une transition
      void setMarquage​(java.util.Vector<java.lang.Integer> marquage)
      Méthode qui permet de donner un certain marquage au modèle.
      void setPlaceVector​(java.util.List<Place> placeVector)
      Méthode qui permet de donner/modifier la liste des Places.
      void setTransitionVector​(java.util.List<Transition> transitionVector)
      Méthode qui permet de donner/modifier la liste des Transitions.
      java.lang.String toString()
      Méthode qui permet d'afficher dans la console les caractéristiques du modèle de cette façon : - marquage initial, - matrice W+, - matrice W-, - matrice d'incidence C, - Places du modèle, - Transitions du modèle.
      void updateMatrices()
      Mettre à jour les matrices Future amélioration : Transformer les autres fonctions pour ne pas avoir à vider complétement les matrices afin de changer leur taille
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • nbPlace

        public int nbPlace
      • nbTransition

        public int nbTransition
      • nbArc

        public int nbArc
      • placeVector

        public java.util.List<Place> placeVector
      • transitionVector

        public java.util.List<Transition> transitionVector
      • arcVector

        public java.util.List<Arc> arcVector
      • M0

        java.util.Vector<java.lang.Integer> M0
      • w_plus

        java.util.Vector<java.util.Vector<java.lang.Integer>> w_plus
      • w_moins

        java.util.Vector<java.util.Vector<java.lang.Integer>> w_moins
      • C

        java.util.Vector<java.util.Vector<java.lang.Integer>> C
    • Constructor Detail

      • Model

        public Model()
        Constructeur du modèle.
      • Model

        public Model​(Model model)
    • Method Detail

      • fill_M0

        public java.util.Vector<java.lang.Integer> fill_M0()
        Remplir M0
        Returns:
        Vecteur d'entiers
      • fill_W

        public void fill_W()
        Remplir W+ et W-
      • fill_C

        public void fill_C()
        Remplir C
      • addPlace

        public void addPlace​(Place p)
        Ajouter une place, et mettre à jour les matrices.
        Parameters:
        p - : Place à ajouter.
      • addTransition

        public void addTransition​(Transition t)
        Ajouter une transition, puis mettre à jour les matrices.
        Parameters:
        t - : Transition à ajouter.
      • addArc

        public void addArc​(Arc a)
        Ajouter un arc.
        Parameters:
        a - : arc à ajouter.
      • removePlace

        public void removePlace​(java.lang.String name)
        Supprimer une place
        Parameters:
        name - : Nom de la place
      • removePlace

        public void removePlace​(Place place)
        Supprimer une place
        Parameters:
        place - : Objet place à supprimer
      • removeTransition

        public void removeTransition​(Transition transition)
        Supprimer une transition
        Parameters:
        transition - : Objet transition à supprimer
      • removeArc

        public void removeArc​(Arc a)
        Méthode qui permet de supprimer un arc.
        Parameters:
        a - : arc à supprimer.
      • removeArcs

        public void removeArcs​(java.util.List<Arc> arcToDelete)
        Méthode qui permet de supprimer une liste d'arcs. Utile lors de la suppression d'une place ou d'une transition.
        Parameters:
        arcToDelete - liste des arcs à supprimer.
      • updateMatrices

        public void updateMatrices()
        Mettre à jour les matrices Future amélioration : Transformer les autres fonctions pour ne pas avoir à vider complétement les matrices afin de changer leur taille
      • fillAll

        private void fillAll()
        Remplir toutes les matrices comme il faut !
      • clearMatrices

        private void clearMatrices()
        Vider complétement les matrices : utiliser initialize() ensuite
      • clearAll

        public void clearAll()
        Vider les listes de places et de transition. Utilisée pour nettoyer la zone de dessin.
      • initialize

        private void initialize()
        Remplir les matrices à la bonne taille avec des 0
      • toString

        public java.lang.String toString()
        Méthode qui permet d'afficher dans la console les caractéristiques du modèle de cette façon : - marquage initial, - matrice W+, - matrice W-, - matrice d'incidence C, - Places du modèle, - Transitions du modèle.
        Overrides:
        toString in class java.lang.Object
        Returns:
        Résultat String
      • print_W_plus

        public void print_W_plus()
        Méthode qui permet d'afficher la matrice W+ dans la console.
      • print_W_moins

        public void print_W_moins()
        Méthode qui permet d'afficher W- dans la console.
      • get_C

        public java.lang.String get_C()
        Méthode qui permet d'écrire la matrice C au format LaTeX dans un String.
        Returns:
        String contenant la matrice C sous format LaTeX.
      • setPlaceVector

        public void setPlaceVector​(java.util.List<Place> placeVector)
        Méthode qui permet de donner/modifier la liste des Places.
        Parameters:
        placeVector - : Liste de places.
      • setTransitionVector

        public void setTransitionVector​(java.util.List<Transition> transitionVector)
        Méthode qui permet de donner/modifier la liste des Transitions.
        Parameters:
        transitionVector - : Liste de Transistions.
      • getM0

        public java.util.Vector<java.lang.Integer> getM0()
        Méthode qui permet de récupérer le marquage initial
        Returns:
        M0 : marquage initial
      • getW_plus

        public java.util.Vector<java.util.Vector<java.lang.Integer>> getW_plus()
        Méthode qui permet de récupérer la matrice W+.
        Returns:
        W+.
      • getW_moins

        public java.util.Vector<java.util.Vector<java.lang.Integer>> getW_moins()
        Méthode qui permet de récupérer la matrice W-.
        Returns:
        W-.
      • getC

        public java.util.Vector<java.util.Vector<java.lang.Integer>> getC()
        Méthode qui permet de récupérer la matrice d'incidence C.
        Returns:
        C.
      • getMarquage

        public java.util.Vector<java.lang.Integer> getMarquage()
        Méthode qui permet de récupérer le marquage actuel du model.
        Returns:
        vecteur de marquage.
      • setMarquage

        public void setMarquage​(java.util.Vector<java.lang.Integer> marquage)
        Méthode qui permet de donner un certain marquage au modèle.
        Parameters:
        marquage - vecteur de marquage.
      • getTransitionFranchissables

        public java.util.List<Transition> getTransitionFranchissables()
        Méthode qui permet de récupérer la liste des transitions franchissables pour le marquage actuel du modèle.
        Returns:
        liste des transitions franchissables.
      • getTransitionFranchissables

        public java.util.List<Transition> getTransitionFranchissables​(java.util.Vector<java.lang.Integer> marquage)
        Méthode qui permet de récupérer la liste des transitions franchissables pour le marquage donné en paramètre.
        Parameters:
        marquage - vecteur de marquage.
        Returns:
        liste des transitions franchissables.