Abilitare JavaScript per vedere questo sito.

La tabella strutture (STRUCTS) è composta da un numero di definizioni (STRUCT) contigue, ognuna delle quali contiene tutte le informazioni su uno specifica struttura definita dall'utente: in questa tabella non sono presenti i tipi dati predefiniti.

La posizione (relativa al file) e il numero di elementi della tabella sono specificate rispettivamente dai campi HEADER.STRUCTSOFF  e HEADER.STRUCTSCNT.

Definizione struttura

Una struttura (STRUCT) è composta dalle seguenti informazioni:

Nome

Offset

Tipo

Descrizione

ID

+0

U32

ID tipo struttura

Nota: solo valori 0x00010000-0xFFFFFFFE; i valori 0 e 0xFFFFFFFF sono ID a significato speciale.

 

+4

U8[2]

(riservati, uso runtime)

FLAGS

+6

U16

Impostazioni della struttura:

0x0001 Campo TEXT non compresso (NCF0).

0x0002 Campo MODIFIER non compresso (NCF1).

NAME

+8

U32

Offset nome della struttura  (relativo a stringhe).

TEXT

+12

U32

Offset descrizione della struttura (relativo a stringhe compresse, o stringhe se NCF0).

VARSOFF

+16

U32

Offset della tabella variabili (relativo al file) (#1)

VARSCNT

+20

U32

Dimensione tabella variabili

SIZE

+24

U32

Dimensione della struttura [byte]

SRCID

+28

U32

Identificativo sorgente della struttura

OBCID

+32

U32

ID classe OB di riferimento (0=nessuna)(#2,#3)

ATTRIB

+36

U32

Attributi della struttura:

0x00000001 Struttura riferita a classe OB (AREFOBC)(#2)

0x00000002 Struttura principale classe OB (AISOBC)(#2,#3)

0x00000004 Struttura (rif.a) definita esternamente (AEXTERNAL)

MODIFIER

+40

U32

Offset modificatori della struttura (relativo a stringhe compresse, o stringhe se NCF1).

REFID

+44

U32

ID di riferimento tipo struttura (#4).

EXTNAME

+48

U32

Offset nome esterno struttura (relativo a stringhe).

 

+52

U8[16]

(riservati)

(#1) La definizione di struttura usa una normale tabella di definizione variabili per definire i propri elementi. In questo caso gli ID delle variabili non hanno senso e dovrebbero essere sempre a 0.

(#2) A pari valore di OBCID non 0, con attributo AREFOBC, può esistere una sola struttura con flag AISOBC, mentre posso essere  0 o più strutture senza attributo AISOBC.

(#3) Una struttura viene definita "orfana" qualora si trova nella condizione di attributi AREFOBC impostato e campo OBCID = 0: questa condizione capita quando aggiornando/rimuovendo una classe OB, vi sono ancora delle variabili (o altro) che vi fanno riferimento.

(#4) In caso di attributo AREFOBC il campo REFID contiene l'ID della struttura come definito del file OBB di origine (0 in case di attributo AISOBC).

 

  

Keyboard Navigation

F7 for caret browsing
Hold ALT and press letter

This Info: ALT+q
Page Header: ALT+h
Topic Header: ALT+t
Topic Body: ALT+b
Contents: ALT+c
Search: ALT+s
Exit Menu/Up: ESC