1 {** Funciones útiles para complementar la utilización de la serialización en
\r
2 este modelo en particular}
\r
3 unit SerializacionUtils;
\r
10 {** Crea un objeto a partir de un string con el nombre de su clase y otro
\r
11 con su representación serializada.}
\r
12 function restaurarObjeto( clase, str: string ): cObjetoVolador;
\r
23 {** Crea un objeto a partir de un string con el nombre de su clase y otro
\r
24 con su representación serializada.
\r
25 @param clase Clase del Objeto
\r
26 @param str Representación del objeto serializado
\r
27 @return Puntero al nuevo objeto.}
\r
28 function restaurarObjeto( clase, str: string ): cObjetoVolador;
\r
30 if clase = 'cMeteorito' then
\r
31 result := cMeteorito.crearDeSerializado( str )
\r
32 else if clase = 'cLaser' then
\r
33 result := cLaser.crearDeSerializado( str )
\r
34 else if clase = 'cMisil' then
\r
35 result := cMisil.crearDeSerializado( str )
\r
36 else if clase = 'cMisilDirigido' then
\r
37 result := cMisilDirigido.crearDeSerializado( str )
\r
38 else if clase = 'cNavePropia' then
\r
39 result := cNavePropia.crearDeSerializado( str )
\r
40 else if clase = 'cNavePesada' then
\r
41 result := cNavePesada.crearDeSerializado( str )
\r
42 else if clase = 'cNaveLiviana' then
\r
43 result := cNaveLiviana.crearDeSerializado( str )
\r
44 else if clase = 'cNaveEspia' then
\r
45 result := cNaveEspia.crearDeSerializado( str )
\r
46 else if clase = 'cNaveSuicida' then
\r
47 result := cNaveSuicida.crearDeSerializado( str )
\r
49 raise ESerializacion.create( 'No se puede crear un objeto de la clase "' +
\r
50 clase + '". Clase Desconocida!' );
\r