La tabella classi OB (OBCLASSES) è composta da un numero di definizioni (OBCLASS) contigue, ognuna delle quali contiene tutte le informazioni su una specifica classe object block definita dall'utente.
La posizione (relativa al file) e il numero di elementi della tabella sono specificate rispettivamente dai campi HEADER.OBCLASSOFF e HEADER.OBCLASSCNT.
Definizione classe OB
Una classe OB (OBCLASS) è composta dalle seguenti informazioni:
Nome |
Offset |
Tipo |
Descrizione |
---|---|---|---|
ID |
+0 |
U32 |
ID classe OB Nota: i valori 0 e 0xFFFFFFFF sono ID a significato speciale. |
|
+4 |
U8[2] |
(riservati) |
FLAGS |
+6 |
U16 |
Impostazioni della classe OB: 0x0001 Campo TEXT non compresso (NCF0). 0x0002 Campo MODIFIER non compresso (NCF1). |
NAME |
+8 |
U32 |
Offset nome della classe OB (relativo a stringhe). |
TEXT |
+12 |
U32 |
Offset descrizione della classe OB (relativo a stringhe compresse, o stringhe se NCF0). |
VERSION |
+16 |
U32 |
Versione classe OB (formato nvMake). |
INTFID |
+20 |
U32 |
Identificativo univoco interfaccia obect block. |
PATHID |
+24 |
U32 |
Identificativo percorso del file .OBB: 0=Percorso assoluto 1=(riservato) 2=Percorso relativo a workspace 3=Percorso relativo a factory RDE3 |
FILENAME |
+28 |
U32 |
Offset nome del file .OBB (relativo a stringhe)(#1). |
SRCID |
+32 |
U32 |
Identificativo sorgente della classe OB. |
METHODSOFF |
+36 |
U32 |
Offset della tabella metodi OB (relativo al file) |
METHODSCNT |
+40 |
U32 |
Dimensione tabella metodi OB |
ATTRIB |
+44 |
U32 |
Attributi classe OB. |
MODIFIER |
+48 |
U32 |
Offset modificatori della classe OB (relativo a stringhe compresse, o stringhe se NCF1). |
|
+52 |
U8[16] |
(riservati) |
(#1) In caso di PATHID diverso da 0, il nome del file .OBB non presenta percorsi al suo interno, ma è semplicemente il nome del file con relativa al percorso PATHID: in caso invece di PATHID uguale a 0, il nome del file .OBB potrebbe contenere un percorso relativo/assoluto.