Package medite :: Package MediteAppli :: Module synthetic :: Class BiBlocListWD
[hide private]
[frames] | no frames]

Class BiBlocListWD

source code

object --+    
         |    
BiBlocList --+
             |
            BiBlocListWD
Known Subclasses:
BiBlocListWDListe

BiblocList avec type déplacement (D) autorisé

Instance Methods [hide private]
 
__init__(self, resultat, planTravail, depOrdonnes=True)
Constructeur Si on utilise l'ancien algo d'identification des remplacements et déplacements, on peut avoir des blocs présents uniquement dans resultat.getListeDeplacements().
source code
 
extractDeplacements(self)
Extraction des déplacements
source code
 
extractDeplacements__old(self)
Extraction des déplacements
source code
 
__extractDepInsSup(self, lSupOrIns, listeDep, SorI)
On scinde effectivement le blocs en une liste de blocs (S ou I) et D...
source code

Inherited from BiBlocList: evaluation, extractRemplacements, extractRemplacements__, printCloseTable, printTableLine, print_html, print_html_oneshot, print_html_streaming, toResultat

Inherited from BiBlocList (private): _testNonPerte, _testOrdre

Inherited from object: __delattr__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __str__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, resultat, planTravail, depOrdonnes=True)
(Constructor)

source code 
Constructeur 

Si on utilise l'ancien algo d'identification des remplacements et déplacements,
on peut avoir des blocs présents uniquement dans resultat.getListeDeplacements().
Ceux-ci sont alors ajoutés comme des S ou des I.

dd: si depOrdonnes=False, pas d'assertion d'ordre sur les déplacement-> recherche d'un dep en O(n) dans __decoreDep1()
    sinon si depOrdonnes=True, assertion d'ordre respectée -> recherche en O(log n) dans __decoreDep2()
    
pre: isinstance(resultat,Donnees.resultatAppli.Resultat) 
     isinstance(planTravail,Donnees.planTravail.PlanTravail) 

Overrides: BiBlocList.__init__
(inherited documentation)

extractDeplacements(self)

source code 

Extraction des déplacements

Teste les blocs insérés et supprimés. Si le rapport des déplacements à l'intérieur d'un bloc est supérieur au seuil Alors ce bloc est scindé en une liste de blocs (I ou S) et D Modifie directement self.liste

AssertionError: 270455 ('D', 270444, 270455, []) ('D', 270450, 270455, [])

extractDeplacements__old(self)

source code 

Extraction des déplacements

Teste les blocs insérés et supprimés. Si le rapport des déplacements à l'intérieur d'un bloc est supérieur au seuil Alors ce bloc est scindé en une liste de blocs (I ou S) et D

__extractDepInsSup(self, lSupOrIns, listeDep, SorI)

source code 
On scinde effectivement le blocs en une liste de blocs (S ou I) et D

lSupOrIns: liste de (I ou S)
listeDep: liste de D
SorI: traite-on des S ou des I ?
pre: isinstance(lSupOrIns,list) and isinstance(listeDep,list)
     (SorI == 'S' or SorI == 'I')