markov.flux
Class FournisseurObservable

java.lang.Object
  extended by flux.Flux
      extended by markov.flux.FournisseurObservable
All Implemented Interfaces:
BoxModelObject, IFlux, java.io.Serializable, ICapteur

public class FournisseurObservable
extends Flux
implements BoxModelObject, ICapteur

Store data for observers.

Version:
1.11, 08/23/2003
Author:
Laurent JEANPIERRE
See Also:
Serialized Form

Field Summary
static java.lang.String description
          Returns a String describing the class role.
 IFournisseur model
          The underlying Markov Model
 FournisseurHMM provider
          The embeded FournisseurHMM
 
Constructor Summary
FournisseurObservable()
           
FournisseurObservable(ObjectDrawingFrame odf, java.util.Collection code)
           
 
Method Summary
 void add(int entry, java.lang.Object value)
          Introduit une donnée dans cette section du flux.
 void addBlock(int entry, java.util.Collection value)
          Introduit un bloc de données dans cette section du flux.
 void apprend(double[][] beliefs)
          Apprends les probabilités d'observation en se basant sur le chamin de probabilités.
 java.lang.String descriptionEntree(int no)
          Retourne la description de l'une des broches d'entrée.
 java.lang.String descriptionSortie(int no)
          Retourne la description de l'une des broches de sortie.
 java.lang.String descriptionUtilise(int no)
          Retourne la description de l'une des broches d'utilisation.
 void drawRealObject(java.awt.Graphics g)
          Dessine l'objet visuel sur le contexte passé en paramètre.
 void generateCode(java.io.FileWriter file)
          Ecrit le code JAVA nécessaire à l'instanciation du module.
 void generateConnections(java.io.FileWriter file)
          Ecrit le code JAVA nécessaire à la connexion du module avec les autres.
 BoxObject getBox()
          Renvoie la boîte associée au modèle durant le design.
 BuildingPanel getBuildingPanel(boolean lockedBox)
          Récupère le panneau de conception de ce module.
 java.util.LinkedList getData()
          Demande le nouvel envoi des données.
 BoxModelObject getUse(int no)
          Renvoie l'un des objets en cours d'utilisation.
 int getUseNb()
          Combien de broches d'utilisation sont disponibles ?
 java.lang.Class getUseType(int no)
          Renvoie le type des broches d'utilisation du flux.
 boolean isUsing(int no)
          Indique si la broche est en cours d'utilisation.
 void raz(int entry)
          Signale une remise à zéro du flux.
 void razBlock(int entry, java.util.Collection value)
          Modifie les données.
 void sauvegarde_donnees(java.io.Writer fic)
          Sauvegarde les données du flux dans fic.
 void setBox(BoxObject with)
          Associe le modèle avec une boîte à utiliser durant le design.
 IFlux twin()
          Crée un clone du flux courant.
 void unlock(java.lang.Object qui)
          Deverrouille l'objet en fin de modification
 void unUse(int no)
          Libère la broche.
 void use(int no, java.lang.Object other)
          Connecte l'une des broches du flux à un autre objet du flux.
 
Methods inherited from class flux.Flux
changeEntryType, changeExitType, connect, connect, connect, connect, connectBack, disconnect, dumpLocks, getDebugPanel, getEntry, getEntryNb, getEntryType, getExit, getExitNb, getExitType, lock, retourAutorise
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

description

public static java.lang.String description
Returns a String describing the class role.


model

public IFournisseur model
The underlying Markov Model


provider

public FournisseurHMM provider
The embeded FournisseurHMM

Constructor Detail

FournisseurObservable

public FournisseurObservable(ObjectDrawingFrame odf,
                             java.util.Collection code)

FournisseurObservable

public FournisseurObservable()
Method Detail

sauvegarde_donnees

public void sauvegarde_donnees(java.io.Writer fic)
                        throws java.io.IOException
Description copied from interface: BoxModelObject
Sauvegarde les données du flux dans fic. La sauvegarde est faite en ASCII.

Specified by:
sauvegarde_donnees in interface BoxModelObject
Parameters:
fic - le Writer dans lequel il faut écrire.
Throws:
java.io.IOException

add

public void add(int entry,
                java.lang.Object value)
Description copied from class: Flux
Introduit une donnée dans cette section du flux.

Specified by:
add in interface IFlux
Specified by:
add in class Flux
Parameters:
entry - le numéro de l'entrée à remplir.
value - la donnée. Elle doit se conformer au type getEntryType(entree).

addBlock

public void addBlock(int entry,
                     java.util.Collection value)
Description copied from class: Flux
Introduit un bloc de données dans cette section du flux.

Specified by:
addBlock in interface IFlux
Specified by:
addBlock in class Flux
Parameters:
entry - le numéro de l'entrée à remplir.
value - les données. Elles doivent toutes se conformer au type getEntryType(entree).

raz

public void raz(int entry)
Description copied from class: Flux
Signale une remise à zéro du flux.

Specified by:
raz in interface IFlux
Specified by:
raz in class Flux
Parameters:
entry - le numéro de l'entrée à réinitialiser.

razBlock

public void razBlock(int entry,
                     java.util.Collection value)
Description copied from class: Flux
Modifie les données. Equivalent à un raz + addBloc.

Specified by:
razBlock in interface IFlux
Specified by:
razBlock in class Flux
Parameters:
entry - le numéro de l'entrée à actualiser.
value - le bloc de valeurs à envoyer.

unlock

public void unlock(java.lang.Object qui)
            throws java.lang.IllegalAccessException
Description copied from class: Flux
Deverrouille l'objet en fin de modification

Specified by:
unlock in interface IFlux
Overrides:
unlock in class Flux
Parameters:
qui - la référence de l'appelant
Throws:
java.lang.IllegalAccessException - si qui n'a pas verrouillé ce flux.

twin

public IFlux twin()
Description copied from interface: IFlux
Crée un clone du flux courant. Toutes les caractèristiques seront recopiées. Aucun lien avec d'autres flux ne sera copié.

Specified by:
twin in interface IFlux

getUseNb

public int getUseNb()
Description copied from class: Flux
Combien de broches d'utilisation sont disponibles ?

Specified by:
getUseNb in interface IFlux
Overrides:
getUseNb in class Flux
Returns:
le nombre de broches disponibles.

getUseType

public java.lang.Class getUseType(int no)
                           throws java.lang.IllegalArgumentException
Description copied from class: Flux
Renvoie le type des broches d'utilisation du flux.

Specified by:
getUseType in interface IFlux
Overrides:
getUseType in class Flux
Parameters:
no - le numéro de la broche interrogé
Returns:
la Class correspondant à la broche no.
Throws:
java.lang.IllegalArgumentException - si no n'est pas entre 0 et getUseNb()-1.

isUsing

public boolean isUsing(int no)
                throws java.lang.IllegalArgumentException
Description copied from class: Flux
Indique si la broche est en cours d'utilisation.

Specified by:
isUsing in interface IFlux
Overrides:
isUsing in class Flux
Parameters:
no - le numéro de la broche à tester.
Throws:
java.lang.IllegalArgumentException - si broche n'est pas entre 0 et getUseNb()-1.

getUse

public BoxModelObject getUse(int no)
                      throws java.lang.IllegalArgumentException
Description copied from class: Flux
Renvoie l'un des objets en cours d'utilisation.

Specified by:
getUse in interface IFlux
Overrides:
getUse in class Flux
Parameters:
no - le numéro de la broche à tester.
Throws:
java.lang.IllegalArgumentException - si broche n'est pas entre 0 et getUseNb()-1.

unUse

public void unUse(int no)
           throws java.lang.IllegalArgumentException
Description copied from class: Flux
Libère la broche.

Specified by:
unUse in interface IFlux
Overrides:
unUse in class Flux
Parameters:
no - le numéro de la broche à déconnect.
Throws:
java.lang.IllegalArgumentException - si broche n'est pas entre 0 et getUseNb()-1.

use

public void use(int no,
                java.lang.Object other)
         throws java.lang.IllegalArgumentException
Description copied from class: Flux
Connecte l'une des broches du flux à un autre objet du flux.

Specified by:
use in interface IFlux
Overrides:
use in class Flux
Parameters:
no - le numéro de la broche à connect.
other - l'objet à user
Throws:
java.lang.IllegalArgumentException - si broche n'est pas entre 0 et getUseNb()-1.

generateCode

public void generateCode(java.io.FileWriter file)
Description copied from interface: BoxModelObject
Ecrit le code JAVA nécessaire à l'instanciation du module.

Specified by:
generateCode in interface BoxModelObject
Parameters:
file - le fichier dans le quel le code sera écrit.

generateConnections

public void generateConnections(java.io.FileWriter file)
Description copied from interface: BoxModelObject
Ecrit le code JAVA nécessaire à la connexion du module avec les autres.

Specified by:
generateConnections in interface BoxModelObject
Parameters:
file - le fichier dans le quel le code sera écrit.

drawRealObject

public void drawRealObject(java.awt.Graphics g)
Description copied from interface: BoxModelObject
Dessine l'objet visuel sur le contexte passé en paramètre.

Specified by:
drawRealObject in interface BoxModelObject
Parameters:
g - le contexte graphique sur lequel il faut dessiner.

getBox

public BoxObject getBox()
Description copied from interface: BoxModelObject
Renvoie la boîte associée au modèle durant le design.

Specified by:
getBox in interface BoxModelObject
Returns:
un BoxObject correspondant à l'interface entre le IFlux et l'application de design.

setBox

public void setBox(BoxObject with)
Description copied from interface: BoxModelObject
Associe le modèle avec une boîte à utiliser durant le design.

Specified by:
setBox in interface BoxModelObject
Parameters:
with - un BoxObject contenant les donnés;es de l'interface visuelle.

descriptionEntree

public java.lang.String descriptionEntree(int no)
Description copied from interface: BoxModelObject
Retourne la description de l'une des broches d'entrée.

Specified by:
descriptionEntree in interface BoxModelObject
Parameters:
no - un entier contenant le numéro de la broche à interroger.

descriptionSortie

public java.lang.String descriptionSortie(int no)
Description copied from interface: BoxModelObject
Retourne la description de l'une des broches de sortie.

Specified by:
descriptionSortie in interface BoxModelObject
Parameters:
no - un entier contenant le numéro de la broche à interroger.

descriptionUtilise

public java.lang.String descriptionUtilise(int no)
Description copied from class: Flux
Retourne la description de l'une des broches d'utilisation.

Specified by:
descriptionUtilise in interface BoxModelObject
Overrides:
descriptionUtilise in class Flux
Parameters:
no - un entier contenant le numéro de la broche à interroger.

getBuildingPanel

public BuildingPanel getBuildingPanel(boolean lockedBox)
Description copied from interface: BoxModelObject
Récupère le panneau de conception de ce module.

Specified by:
getBuildingPanel in interface BoxModelObject

getData

public java.util.LinkedList getData()
Description copied from interface: ICapteur
Demande le nouvel envoi des données.

Specified by:
getData in interface ICapteur

apprend

public void apprend(double[][] beliefs)
Description copied from interface: ICapteur
Apprends les probabilités d'observation en se basant sur le chamin de probabilités.

Specified by:
apprend in interface ICapteur
Parameters:
beliefs - un tableau[temps][états].