__exec_global_fn : comunicare verso oggetti globali

Per mandare un messaggio e un insieme di parametri ad un oggetto globale è necessaria la conoscenza del suo identificatore globale; la richiesta è effettuata mediante la macro variadic __exec_global_fn della quale si riporta la definizione:

#define __exec_global_fn(...)  test_request::exec_global_fn( __VA_ARGS__,_$end) 
  • Il primo argomento della macro è sempre l’identificatore globale dell’oggetto destinazione
  • Il secondo argomento è func_name, seguito eventualmente da op_id
  • Seguono eventualmente un numero qualunque di argomenti passati.

Un esempio reale è  il seguente:

__exec_global_fn(_$dock_edit_layout,_$detach,_$document,doc);

La macro richiede  all’oggetto globale _$dock_edit_layout di sconnettersi (_$detach) dal documento (_$document) puntato da doc; è equivalente, nel linguaggio CLB_language del framework alla frase

_$detach _$document doc from $dock_edit_layout

Del linguaggio interpretato CLB_language  di Colibri scriveremo in successivi post.

Ovviamente il messaggio dovrà poter essere interpretato dall’istanza di identificatore _$dock_edit_layout;  fra poco descriveremo come, in un esempio pratico.

Pages: 1 2 3 4 5 6 7
Skip to toolbar