Merci pour les explications (et pour le PS rassurant car en effet je suis pas sure de tout comprendre). J'essaie déjà de faire fonctionner ça. Il y a peut etre un moyen de faire la même chose en ne modifiant que SiMatrix et pas ComputeMonth ca serait ideal. Je vais y reflechir. La solution le moins compliqué est la suivante :
@Override protected SiMatrix newSiMatrix(SimulationContext context) throws TopiaException { return new SiMatrixEffortByCell_Sid(context); } /** * Use custom "siMatrix" instead of provided _siMatrix. */ @Override protected void computeMonth(SimulationContext context, SiMatrix siMatrixParent, TimeStep step, Population pop) throws IsisFishException, TopiaException { // to add result SiMatrixEffortByCell_Sid siMatrix = (SiMatrixEffortByCell_Sid)siMatrixParent; } Donc dans computeMonth(), on "cast" le siMatrixParent pour changer son type et pouvoir disposer des nouvelles méthodes. Car ici, on sais qu'il est du type SiMatrixEffortByCell_Sid et pas seulement du type SiMatrix. Le 10/06/2015 12:05, Sigrid Lehuta a écrit :
OK et tu vois pourquoi ça compile pas ? ---------- 1. ERROR in C:\Users\slehuta\isis-fish-4-rc\isis-community-database\simulators\SimulatorEffortByCell_Sid.java (at line 192) .matrixCatchPerStrategyMetPerZonePop(N, pop, step); ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The method matrixCatchPerStrategyMetPerZonePop(MatrixND, Population, TimeStep) is undefined for the type SiMatrixEffortByCell_Sid
Il indique le probleme: la matrixCatchPerStrategyMetPerZonePop(MatrixND, Population, TimeStep) n'existe pas dans la classe : SiMatrixEffortByCell_Sid
---------- 2. ERROR in C:\Users\slehuta\isis-fish-4-rc\isis-community-database\simulators\SimulatorEffortByCell_Sid.java (at line 198) abundance = siMatrix.matrixAbundance(N, pop, step, ^^^^^^^^^^^^^^^ The method matrixAbundance(MatrixND, Population, TimeStep) in the type SiMatrixEffortByCell is not applicable for the arguments (MatrixND, Population, TimeStep, MatrixND)
Un peu pareil, sauf que la methode matrixAbundance existe mais elle ne prend pas les mêmes parametres. Les autres erreurs sont similaires. PS: Tu peux téléphoner si c'est plus rapide à debugger que par mail... -- Éric Chatellier - www.codelutin.com - 02.40.50.29.28