SSBM Decomp
Loading...
Searching...
No Matches
object.h File Reference
#include <platform.h>
#include "baselib/class.h"
#include "baselib/debug.h"
#include "baselib/forward.h"

Go to the source code of this file.

Data Structures

struct  HSD_Obj
struct  HSD_ObjInfo

Macros

#define HSD_OBJ_NOREF   ((u16) - 1)
#define HSD_OBJ(o)
#define HSD_OBJECT_INFO(o)
#define HSD_OBJECT_METHOD(o)
#define HSD_OBJECT_PARENT_INFO(o)
#define MASK_OF(type)

Enumerations

enum  HSD_Type {
  AOBJ_TYPE = 1 ,
  COBJ_TYPE ,
  DOBJ_TYPE ,
  FOBJ_TYPE ,
  FOG_TYPE ,
  JOBJ_TYPE ,
  LOBJ_TYPE ,
  MOBJ_TYPE ,
  POBJ_TYPE ,
  ROBJ_TYPE ,
  TOBJ_TYPE ,
  WOBJ_TYPE ,
  RENDER_TYPE ,
  CHAN_TYPE ,
  TEVREG_TYPE ,
  CBOBJ_TYPE ,
  HSD_MAX_TYPE
}
enum  HSD_TypeMask {
  AOBJ_MASK = MASK_OF(AOBJ_TYPE) ,
  COBJ_MASK = MASK_OF(COBJ_TYPE) ,
  DOBJ_MASK = MASK_OF(DOBJ_TYPE) ,
  FOBJ_MASK = MASK_OF(FOBJ_TYPE) ,
  FOG_MASK = MASK_OF(FOG_TYPE) ,
  JOBJ_MASK = MASK_OF(JOBJ_TYPE) ,
  LOBJ_MASK = MASK_OF(LOBJ_TYPE) ,
  MOBJ_MASK = MASK_OF(MOBJ_TYPE) ,
  POBJ_MASK = MASK_OF(POBJ_TYPE) ,
  ROBJ_MASK = MASK_OF(ROBJ_TYPE) ,
  TOBJ_MASK = MASK_OF(TOBJ_TYPE) ,
  WOBJ_MASK = MASK_OF(WOBJ_TYPE) ,
  RENDER_MASK = MASK_OF(RENDER_TYPE) ,
  CHAN_MASK = MASK_OF(CHAN_TYPE) ,
  TEVREG_MASK = MASK_OF(TEVREG_TYPE) ,
  CBOBJ_MASK = MASK_OF(CBOBJ_TYPE) ,
  ALL_TYPE_MASK = MASK_OF(HSD_MAX_TYPE) - 1
}

Functions

void ObjInfoInit (void)
static bool ref_DEC (void *o)
static void ref_INC (void *o)
static int ref_CNT (void *o)
static int iref_CNT (void *o)
static bool iref_DEC (void *o)
static void iref_INC (void *o)

Variables

HSD_ClassInfo hsdObj

Macro Definition Documentation

◆ HSD_OBJ_NOREF

#define HSD_OBJ_NOREF   ((u16) - 1)

◆ HSD_OBJ

#define HSD_OBJ ( o)
Value:
((HSD_Obj*) o)
Definition object.h:60

◆ HSD_OBJECT_INFO

#define HSD_OBJECT_INFO ( o)
Value:
(o.parent.parent)

◆ HSD_OBJECT_METHOD

#define HSD_OBJECT_METHOD ( o)
Value:
(o->parent.parent.class_info)

◆ HSD_OBJECT_PARENT_INFO

#define HSD_OBJECT_PARENT_INFO ( o)
Value:
((o)->parent.parent.head.parent)

◆ MASK_OF

#define MASK_OF ( type)
Value:
(1 << ((type) - 1))

Enumeration Type Documentation

◆ HSD_Type

enum HSD_Type
Enumerator
AOBJ_TYPE 
COBJ_TYPE 
DOBJ_TYPE 
FOBJ_TYPE 
FOG_TYPE 
JOBJ_TYPE 
LOBJ_TYPE 
MOBJ_TYPE 
POBJ_TYPE 
ROBJ_TYPE 
TOBJ_TYPE 
WOBJ_TYPE 
RENDER_TYPE 
CHAN_TYPE 
TEVREG_TYPE 
CBOBJ_TYPE 
HSD_MAX_TYPE 

◆ HSD_TypeMask

Enumerator
AOBJ_MASK 
COBJ_MASK 
DOBJ_MASK 
FOBJ_MASK 
FOG_MASK 
JOBJ_MASK 
LOBJ_MASK 
MOBJ_MASK 
POBJ_MASK 
ROBJ_MASK 
TOBJ_MASK 
WOBJ_MASK 
RENDER_MASK 
CHAN_MASK 
TEVREG_MASK 
CBOBJ_MASK 
ALL_TYPE_MASK 

Function Documentation

◆ ObjInfoInit()

void ObjInfoInit ( void )

◆ ref_DEC()

bool ref_DEC ( void * o)
inlinestatic

◆ ref_INC()

void ref_INC ( void * o)
inlinestatic

◆ ref_CNT()

int ref_CNT ( void * o)
inlinestatic

◆ iref_CNT()

int iref_CNT ( void * o)
inlinestatic

◆ iref_DEC()

bool iref_DEC ( void * o)
inlinestatic

◆ iref_INC()

void iref_INC ( void * o)
inlinestatic

Variable Documentation

◆ hsdObj

HSD_ClassInfo hsdObj
extern