1 package com.fnbrito.ai.config;
2
3
4 /***
5 *
6 *
7 * @author Nacho Brito.
8 *
9 */
10 public interface Configurable {
11
12 /***
13 *
14 * @return los objetos ConfigurationChange que se pueden aplicar a este objeto.
15 */
16 public ConfigurationChange[] getConfigurations();
17
18 /***
19 * @return true si el objeto necesita ser reconfigurado, false si se encuentra en su funcionamiento óptimo.
20 */
21 public boolean needsReconfiguration();
22
23 /***
24 * La función fitness debe medir el éxito de una configuración particular.
25 * @return la función fitness para la configuración de este componente.
26 */
27 public FitnessFunction getFitnessFunction();
28
29 /***
30 * Método a invocar antes de modificar la configuración del componente.
31 *
32 */
33 public void preConfigure();
34
35 /***
36 * Método a invocar después de modificar la configuración del componente.
37 *
38 */
39 public void postConfigure();
40 }