#include <config.h>
Classes | |
class | config_error |
Public Member Functions | |
Config (string strategy, string name) | |
Config (string strategy, ConfigFile &config) | |
string | getName () |
string | getType () |
void | setType (string name) |
void | setName (string name) |
template<class T > | |
void | getParam (const char *param, T &value) |
Esta clase permite leer un fichero de configucación de la aplicación.
El modelo que admite es el siguiente:
En un fichero de configuración se especifique los distintos parámetros para cada uno de las estrategias del AG.
Se considera estrategia a cada uno de los métodos de cruce, de selección o de reemplazo a aplicar.
Se considera <type> de una estrategia no sólo a un tipo de estrategia (como oeprador de cruce BLX o alpha) sino también al conjunto de parámetros.
La idea es poder asociar el mismo identificador de estrategia con distintos conjuntos de parámetros, cada uno identificado con un nombre distintivo.
De esa forma, simplemente indicando el tipo de la estrategia a aplicar se seleccionaría el total de parámetros.
formato: <typeestrategia>.<type>.id = <name>
Para asociar a este <type> los distintos parámetros la sintaxis es la siguiente (se supone que el objeto factory asociado identificará la distinta ).
<typeestrategia>.<type>.<param1> = <value1> <typeestrategia>.<type>.<param2> = <value2>
o bien mediante un fichero externo <typeestrategia>.<type>.params = <filename>
<filename> en este caso contendría la sintaxis <param1> = <value1> <param2> = <value2> Se puede especificar parámetros comunes a los distintos tipos asociados a una estrategia con la sintaxis. <typeestrategia>.<name>.<param1> = <value1>
Dado que la idea de esta sintaxis es especificar parámetros comunes tendrá preferencia la sintaxis <typeestrategia>.<type>.<paran> sobre ésta.
La elección de la estrategia (el identificador <type>) a aplicar se puede especificar mediante paso de parámetros o bien mediante un valor default:
<typeestrategia>.<default> = <type>
Definition at line 89 of file config.h.
Config::Config | ( | string | strategy, | |
string | name | |||
) | [inline] |
Config::Config | ( | string | strategy, | |
ConfigFile & | config | |||
) | [inline] |
string Config::getName | ( | ) | [inline] |
void Config::getParam | ( | const char * | param, | |
T & | value | |||
) | [inline] |
string Config::getType | ( | ) | [inline] |
void Config::setName | ( | string | name | ) | [inline] |
void Config::setType | ( | string | name | ) | [inline] |