]> git.llucax.com Git - z.facultad/75.07/algowars.git/blob - doc/src-html/auxiliares/SerializacionUtils.pas
Se expanden keywords del svn.
[z.facultad/75.07/algowars.git] / doc / src-html / auxiliares / SerializacionUtils.pas
1 <HTML><HEAD>\r
2 <TITLE>File: serializacionutils.pas </TITLE>\r
3 <META NAME="GENERATOR" CONTENT="PasToHTML(Bystricky Vladimir)">\r
4 </HEAD>\r
5 <BODY BGCOLOR="#FFFFFF">\r
6 <A NAME=serializacionutils.pas><CENTER><H3>serializacionutils.pas</H3></A><I> from <A HREF=/proyecto/doc/src-html/AlgoWars.html> Project: AlgoWars.dpr</A></I></CENTER>\r
7 <HR>\r
8 <PRE>\r
9 <I><FONT COLOR="Navy">{** Funciones útiles para complementar la utilización de la serialización en \r
10     este modelo en particular}</FONT></I> \r
11 <B>unit</B> SerializacionUtils; \r
12  \r
13 <B>interface</B> \r
14  \r
15 <B>uses</B> \r
16   ObjetoVolador; \r
17  \r
18   <I><FONT COLOR="Navy">{** Crea un objeto a partir de un string con el nombre de su clase y otro \r
19       con su representación serializada.}</FONT></I> \r
20   <B>function</B> <A HREF="#restaurarObjeto">restaurarObjeto</A>( clase, str: <B>string</B> ): cObjetoVolador; \r
21  \r
22 <B>implementation</B> \r
23  \r
24 <B>uses</B> \r
25   ObjetoPersistente, \r
26   Armas, \r
27   NavesEnemigas, \r
28   NavePropia, \r
29   Meteorito; \r
30  \r
31 <I><FONT COLOR="Navy">{** Crea un objeto a partir de un string con el nombre de su clase y otro \r
32     con su representación serializada. \r
33     @param  clase Clase del Objeto \r
34     @param  str   Representación del objeto serializado \r
35     @return Puntero al nuevo objeto.}</FONT></I> \r
36 <B>function</B> <A NAME=restaurarObjeto>restaurarObjeto</A>( clase, str: <B>string</B> ): cObjetoVolador; \r
37 <B>begin</B> \r
38   <B>if</B> clase = 'cMeteorito' <B>then</B> \r
39     result := cMeteorito.crearDeSerializado( str ) \r
40   <B>else</B> <B>if</B> clase = 'cLaser' <B>then</B> \r
41     result := cLaser.crearDeSerializado( str ) \r
42   <B>else</B> <B>if</B> clase = 'cMisil' <B>then</B> \r
43     result := cMisil.crearDeSerializado( str ) \r
44   <B>else</B> <B>if</B> clase = 'cMisilDirigido' <B>then</B> \r
45     result := cMisilDirigido.crearDeSerializado( str ) \r
46   <B>else</B> <B>if</B> clase = 'cNavePropia' <B>then</B> \r
47     result := cNavePropia.crearDeSerializado( str ) \r
48   <B>else</B> <B>if</B> clase = 'cNavePesada' <B>then</B> \r
49     result := cNavePesada.crearDeSerializado( str ) \r
50   <B>else</B> <B>if</B> clase = 'cNaveLiviana' <B>then</B> \r
51     result := cNaveLiviana.crearDeSerializado( str ) \r
52   <B>else</B> <B>if</B> clase = 'cNaveEspia' <B>then</B> \r
53     result := cNaveEspia.crearDeSerializado( str ) \r
54   <B>else</B> <B>if</B> clase = 'cNaveSuicida' <B>then</B> \r
55     result := cNaveSuicida.crearDeSerializado( str ) \r
56   <B>else</B> \r
57     <B>raise</B> ESerializacion.create( 'No se puede crear un objeto de la clase "' + \r
58                                  clase + '". Clase Desconocida!' ); \r
59 <B>end</B>; \r
60  \r
61 <B>end</B>. \r
62 </PRE>\r
63 </BODY>\r
64 </HTML>\r