close
Warning:
Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.
- Timestamp:
-
Aug 2, 2010, 10:38:37 AM (15 years ago)
- Author:
-
Víctor de Buen Remiro
- Comment:
-
--
Legend:
- Unmodified
- Added
- Removed
- Modified
-
v2
|
v3
|
|
1 | | = Carga de librerías de enlace dinámico en TOL = |
| 1 | [[PageOutline]] |
| 2 | |
| 3 | = Librerías C++ built-in TOL de enlace dinámico = |
| 4 | |
| 5 | Las librerías de enlace dinámico en TOL permiten la carga de objetos y funciones creados en C++ para implementar tareas específicas que resulten demasiado lentas en TOL y no sean lo suficientemente generalizables como para formar parte de las utilidades globales del núcleo de TOL. |
| 6 | |
| 7 | == Carga de librerías C++ built-in TOL == |
2 | 8 | |
3 | 9 | La función built-in de TOL |
… |
… |
|
7 | 13 | }}} |
8 | 14 | |
9 | | permite la carga de objetos y funciones creados en C++ para implementar tareas específicas que resulten demasiado lentas en TOL y no sean lo suficientemente generalizables como para formar parte de las utilidades globales del núcleo de TOL. Devuelve un NameBlock en lugar de objetos globales para poder mantener los requisitos de modularidad. |
| 15 | devuelve un NameBlock métodos y miembros escritos en C++ en una librería previamente compilada para su enlace dinámico. Una vez cargado el Nameblock no tiene nada de particular y puede ser usado como cualquier otro creado en el propio lenguaje TOL. |
10 | 16 | |
11 | | == Uso dentro de paquetes == |
| 17 | == Uso de librerías C++ built-in TOL dentro de paquetes == |
12 | 18 | |
13 | 19 | No es posible crear un paquete de forma directa pero sí se puede usar como un miembro dentro de un paquete, adjuntándolo como recurso externo e incluyendo la llamada dentro del método StartActions. |
… |
… |
|
19 | 25 | ... |
20 | 26 | |
| 27 | //At creation time is initialized as trivial NameBlock |
21 | 28 | NameBlock Tools = [[ Real _unused]]; |
22 | 29 | |
… |
… |
|
40 | 47 | }}} |
41 | 48 | |
42 | | == Creación de librerías de enlace dinámico en TOL == |
| 49 | |
| 50 | == Creación de librerías C++ built-in TOL == |
43 | 51 | |
44 | 52 | {{{ |
45 | 53 | #!cpp |
46 | 54 | /* |
| 55 | TOL Dynamic Library |
47 | 56 | <NAME>.cpp |
48 | | TOL Dynamic Library |
49 | 57 | Purpose: ... |
50 | 58 | */ |
… |
… |
|
53 | 61 | |
54 | 62 | static BUserNameBlock* _local_unb_ = new BGraContensP<BNameBlock>("", new BNameBlock); |
55 | | static BNameBlock& _local_nameblock_ = _local_unb_ ->Contens(); |
| 63 | static BNameBlock& _local_nameblock_ = _local_unb_->Contens(); |
56 | 64 | |
57 | 65 | //Entry point of library returns the NameBlock to LoadDynLib |