Package com.tech.app.models
Class Model
- java.lang.Object
-
- com.tech.app.models.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
-
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() ensuitevoid
fill_C()
Remplir Cjava.util.Vector<java.lang.Integer>
fill_M0()
Remplir M0void
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 initialjava.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 0void
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 placevoid
removePlace(java.lang.String name)
Supprimer une placevoid
removeTransition(Transition transition)
Supprimer une transitionvoid
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
-
-
-
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 classjava.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.
-
-