| SYNOPSIS |
| #include <sys/driver_hooks.h> |
| |
| set_driver_hook(H_CREATE_OB, value) |
| |
| <value> being: |
| |
| void <name> (0) |
| int <closure> ( void ) |
| int <closure> (object obj_to_init) |
| |
| DESCRIPTION |
| Optional hooks to initialize an explictely loaded |
| object/blueprint after creation. Hook setting can be unbound |
| lambda closures, or the name of the function (static or public) to |
| call in the object. |
| |
| If the hook is a closure expecting an argument, it is bound |
| to the current object and called with the created object as |
| argument. If the hook as a closure without arguments, it is bound to |
| the object to be initalized and called. |
| |
| If the result of the closure call is a non-zero number, it is used |
| as the interval to wait before the first reset(), else the default |
| interval computed from TIME_TO_RESET is used. |
| |
| If the hook is defined as the name of an lfun in the object, |
| it is called in the object with 0 as argument, and any result |
| is ignored. |
| |
| HISTORY |
| LDMud 3.2.10 allowed static functions to be given by name. |
| |
| SEE ALSO |
| hooks(C), create_super(H), create_clone(H) |