Start Info Community Spielen
 
 

Morgengrauner Dokumentation

Dateipfad: /home/mud/mudlib/doc/efun/object_info

GESCHUETZT
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

YOUTUBE | FACEBOOK | TWITTER | DISCORD | FEEDBACK | IMPRESSUM | DATENSCHUTZ 1992–2023 © MorgenGrauen.