Morgengrauner Dokumentation
Dateipfad: /home/mud/mudlib/doc/efun/object_infoGESCHUETZT
SYNOPSIS
#include
mixed * object_info(object ob, int what)
mixed * object_info(object ob, int what, int index)
BESCHREIBUNG
Liefert einige interne Informationen ueber das Objekt in Form
eines Arrays. Das Argument gibt an, welche Informationen
geliefert werden.
Das Resultat ist normalerweise ein Array. Wird jedoch
spezifiziert, wird nur der Wert geliefert, der im Array an der
Position stehen wuerde.
Die moeglichen Werte fuer und die Indizes des gelieferten
Arrays sind in definiert und muessen eingebunden
werden. Diese Definitionen koennen sich in zukuenftigen Versionen
des Drivers aendern!
== OINFO_BASIC:
Dieser Aufruf liefert grundlegende Informationen ueber :
int [OIB_HEART_BEAT]: 1, wenn einen heart_beat() hat,
sonst 0.
int [OIB_IS_WIZARD]: 1, wenn ein Gott ist (das
Wizard Flag gesetzt hat), sonst 0. Der
Eintrag ist immer 0, wenn set_is_wizard()
nicht verfuegbar ist.
int [OIB_ENABLE_COMMANDS]: 1, wenn Kommandos geben darf, sonst 0.
int [OIB_CLONE]: 1, wenn ein Clon ist, sonst 0.
int [OIB_DESTRUCTED]: 1, wenn zerstoert wurde, sonst 0.
int [OIB_SWAPPED]: 1, wenn geswapt wurde, sonst 0.
int [OIB_ONCE_INTERACTIVE]: 1, wenn einmal interaktiv war,
sonst 0.
int [OIB_RESET_STATE]: 1, wenn im gleichen Zustand wie nach
einem reset() ist, sonst 0.
int [OIB_WILL_CLEAN_UP]: 1, wenn clean_up() aufruft, sonst 0.
int [OIB_LAMBDA_REFERENCED]:1, wenn Lambdas beinhaltet, sonst 0.
int [OIB_SHADOW]: 1, wenn ein Schatten uebergeworfen
wurde, sonst 0.
int [OIB_REPLACED]: 1, wenn das Programm von ersetzt
wurde (mit replace_program()), sonst 0.
int [OIB_NEXT_RESET]: Zeit bis zum naechsten Reset.
int [OIB_TIME_OF_REF]: Zeit des letzen Aufrufs von .
int [OIB_REF]: Anzahl Aufrufe von .
int [OIB_GIGATICKS]: GIGATICKS und TICKS liefern die summierten
int [OIB_TICKS]: Evalkosten von .
int [OIB_SWAP_NUM]: Die Swap-Nummer von s Programm, oder
-1, wenn nicht geswapt wurde.
int [OIB_PROG_SWAPPED]: 1, wenn 's Programm geswapt wurde,
sonst 0.
int [OIB_VAR_SWAPPED]: 1, wenn 's Variablen geswapt wurden,
sonst 0.
int [OIB_NAME]: der Objektname von .
object [OIB_NEXT_ALL]: das naechste Objekt in der Objektliste.
object [OIB_PREV_ALL]: das vorherige Objekt in der Objektliste.
== OINFO_POSITION:
Dieser Aufruf liefert Informationen ueber die Position von in der
globalen Objektliste:
object [OIP_NEXT]: naechstes Objekt in der Objektliste.
object [OIP_PREV]: vorheriges Objekt in der Objektliste.
int [OIP_POS]: die Position von in der Objektliste,
beginnend von 0 aufwaerts.
Dieser Aufruf kann aufwendig an Rechenzeit sein.
== OINFO_MEMORY:
Dieser Aufruf liefert Informationen ueber Speichernutzung von .
int [OIM_REF]: Anzahl Referenzierungen von .
string [OIM_NAME]: Name von .
int [OIM_PROG_SIZE]: Programmgroesse.
int [OIM_NUM_FUNCTIONS]: Anzahl Funktionen in .
int [OIM_SIZE_FUNCTIONS]: Speicherbedarf der Funktionen
int [OIM_NUM_VARIABLES]: Anzahl Variablen im Programm.
int [OIM_SIZE_VARIABLES]: Speicherbedarf der Variablen.
int [OIM_NUM_STRINGS]: Anzahl Strings im Programm.
int [OIM_SIZE_STRINGS]: Speicherbedarf der String-Pointer.
int [OIM_SIZE_STRINGS_DATA]: Speicherbedarf der String-Daten,
korrigiert um das Ausmass des Daten-
Sharing.
int [OIM_SIZE_STRINGS_TOTAL]: unkorrigierter Speicherbedarf der
String-Daten.
int [OIM_NUM_INCLUDES]: Anzahl Includefiles im Programm.
int [OIM_NUM_INHERITED]: Anzahl inheriter Programme.
int [OIM_SIZE_INHERITED]: Speicherbedarf der Inherits.
int [OIM_TOTAL_SIZE]: Gesamter Speicherbedarf des Programms.
int [OIM_DATA_SIZE]: Gesamte Speicherbedarf der Variablenwerte
des Objekts , korrigiert um das
Ausmass des Daten-Sharings.
int [OIM_DATA_SIZE_TOTAL]: unkorrigierter Gesamter Speicherbedarf
der Variablenwerte des Objekts.
int [OIM_NO_INHERIT]: 1, wenn das Programm nicht inheritet
werden kann.
int [OIM_NO_CLONE]: 1, wenn das Programm / der Blueprint
nicht geclont werden kann.
int [OIM_NO_SHADOW]: 1, wenn dem Objekt kein Shadow
uebergeworfen werden darf.
Dieser Aufruf holt das Programm aus dem Swap, falls notwendig.
Die OIM_SIZE_xxx-Eintraege zeigen nur den Speicherbedarf der
Strukturen / Pointer an, nicht aber den Speicherbedarf von
Variablenwerten, Funktionscode oder der Strings selbst.
GESCHICHTE
Eingefuehrt in LDMud 3.2.6.
Aenderungen in LDMud 3.2.7:
- neues Kriterium OIB_REPLACED.
- das Kriterium OIB_IS_WIZARD ist immer 0, wenn set_is_wizard()
nicht verfuegbar ist.
- das Kriterium OIB_APPROVED wurde entfernt.
LDMud 3.2.8 fuehrte neu OIM_DATA_SIZE im Resultat von OINFO_MEMORY ein.
LDMud 3.2.9 erweiterte OINFO_MEMORY um den Index Mechanismus,
OIM_NUM_INCLUDES, OIM_NO_INHERIT, OIM_NO_SHADOW, OIM_NO_CLONE,
OIM_SIZE_STRINGS_DATA, OIM_SIZE_STRINGS_TOTAL, und
OIM_DATA_SIZE_TOTAL
SIEHE AUCH
debug_info(E)
zurück zur Übersicht