SSBM Decomp
Loading...
Searching...
No Matches
lobj.h File Reference
#include <platform.h>
#include "baselib/debug.h"
#include "baselib/forward.h"
#include "baselib/object.h"
#include <dolphin/gx.h>
#include <dolphin/gx/GXEnum.h>
#include <dolphin/mtx.h>

Go to the source code of this file.

Data Structures

struct  HSD_LightPoint
struct  HSD_LightPointDesc
struct  HSD_LightSpot
struct  HSD_LightSpotDesc
struct  HSD_LightAttn
struct  HSD_LObj
struct  HSD_LightDesc
struct  HSD_LightAnim
struct  HSD_LObjInfo

Macros

#define MAX_GXLIGHT   9
#define HSD_LOBJ(o)
#define HSD_LOBJ_INFO(i)
#define HSD_LOBJ_METHOD(o)

Functions

u8 HSD_LObjGetPriority (HSD_LObj *lobj)
u32 HSD_LObjGetFlags (HSD_LObj *lobj)
void HSD_LObjSetFlags (HSD_LObj *lobj, u32 flags)
void HSD_LObjClearFlags (HSD_LObj *lobj, u32 flags)
GXLightID HSD_LObjGetLightMaskDiffuse (void)
s32 HSD_LObjGetLightMaskAttnFunc (void)
s32 HSD_LObjGetLightMaskAlpha (void)
s32 HSD_LObjGetLightMaskSpecular (void)
void HSD_LObjSetActive (HSD_LObj *lobj)
s32 HSD_LObjGetNbActive (void)
HSD_LObjHSD_LObjGetActiveByID (GXLightID id)
HSD_LObjHSD_LObjGetActiveByIndex (s32 idx)
void HSD_LObjClearActive (void)
void LObjUpdateFunc (void *obj, enum_t type, HSD_ObjData *val)
void HSD_LObjAddAnim (HSD_LObj *lobj, HSD_LightAnim *lanim)
void HSD_LObjAddAnimAll (HSD_LObj *lobj, HSD_LightAnim *lanim)
void HSD_LObjAnim (HSD_LObj *lobj)
void HSD_LObjAnimAll (HSD_LObj *lobj)
void HSD_LObjReqAnim (HSD_LObj *lobj, f32 startframe)
void HSD_LObjReqAnimAll (HSD_LObj *lobj, f32 startframe)
void HSD_LObjGetLightVector (HSD_LObj *lobj, Vec3 *dir)
void HSD_LObjSetup (HSD_LObj *lobj, GXColor color, f32 shininess)
bool HSD_LObjGetPosition (HSD_LObj *, Vec3 *)
bool HSD_LObjGetInterest (HSD_LObj *, Vec3 *)
HSD_WObjHSD_LObjGetPositionWObj (HSD_LObj *lobj)
HSD_WObjHSD_LObjGetInterestWObj (HSD_LObj *lobj)
void HSD_LObjSetPositionWObj (HSD_LObj *lobj, HSD_WObj *wobj)
void HSD_LObjSetInterestWObj (HSD_LObj *lobj, HSD_WObj *wobj)
u32 HSD_LightID2Index (GXLightID)
void HSD_LObjDeleteCurrent (HSD_LObj *lobj)
s32 HSD_Index2LightID (u32)
void HSD_LObjRemoveAll (HSD_LObj *lobj)
void HSD_LObjSetPosition (HSD_LObj *lobj, Vec3 *position)
void HSD_LObjSetInterest (HSD_LObj *lobj, Vec3 *interest)
void HSD_LObj_803668EC (HSD_LObj *lobj)
void HSD_LObjSetupInit (HSD_CObj *arg0)
void HSD_LObjSetColor (HSD_LObj *lobj, GXColor color)
void HSD_LObjGetColor (HSD_LObj *lobj, GXColor *color)
void HSD_LObjSetSpot (HSD_LObj *lobj, f32 cutoff, s32 point_func)
void HSD_LObjSetDistAttn (HSD_LObj *lobj, f32 ref_dist, f32 ref_br, s32 dist_func)
void HSD_LObjSetAttnA (HSD_LObj *lobj, f32 a0, f32 a1, f32 a2)
void HSD_LObjSetAttnK (HSD_LObj *lobj, f32 k0, f32 k1, f32 k2)
void HSD_LObjSetAttn (HSD_LObj *lobj, f32 a0, f32 a1, f32 a2, f32 k0, f32 k1, f32 k2)
void HSD_LObjSetupSpecularInit (Mtx pmtx)
u32 HSD_LObjGetType (HSD_LObj *lobj)
void HSD_LObjAddCurrent (HSD_LObj *lobj)
void HSD_LObjUnrefThis (HSD_LObj *lobj)
void HSD_LObjDeleteCurrentAll (HSD_LObj *lobj)
void HSD_LObjSetCurrentAll (HSD_LObj *lobj)
HSD_LObjHSD_LObjGetCurrentByType (u16 type)
void HSD_LObjSetDefaultClass (HSD_LObjInfo *info)
HSD_LObjInfoHSD_LObjGetDefaultClass (void)
HSD_LObjHSD_LObjAlloc (void)
HSD_LObjHSD_LObjLoadDesc (HSD_LightDesc *ldesc)
static HSD_LObjHSD_LObjGetNext (HSD_LObj *lobj)
static void HSD_LObjSetNext (HSD_LObj *lobj, HSD_LObj *next)

Variables

HSD_LObjInfo hsdLobj

Macro Definition Documentation

◆ MAX_GXLIGHT

#define MAX_GXLIGHT   9

◆ HSD_LOBJ

#define HSD_LOBJ ( o)
Value:
((HSD_LObj*) (o))
Definition lobj.h:57

◆ HSD_LOBJ_INFO

#define HSD_LOBJ_INFO ( i)
Value:
((HSD_LObjInfo*) (i))
Definition lobj.h:104

◆ HSD_LOBJ_METHOD

#define HSD_LOBJ_METHOD ( o)
Value:
#define HSD_LOBJ_INFO(i)
Definition lobj.h:110
#define HSD_OBJECT_METHOD(o)
Definition object.h:15

Function Documentation

◆ HSD_LObjGetPriority()

u8 HSD_LObjGetPriority ( HSD_LObj * lobj)
inline

◆ HSD_LObjGetFlags()

u32 HSD_LObjGetFlags ( HSD_LObj * lobj)

◆ HSD_LObjSetFlags()

void HSD_LObjSetFlags ( HSD_LObj * lobj,
u32 flags )

◆ HSD_LObjClearFlags()

void HSD_LObjClearFlags ( HSD_LObj * lobj,
u32 flags )

◆ HSD_LObjGetLightMaskDiffuse()

GXLightID HSD_LObjGetLightMaskDiffuse ( void )

◆ HSD_LObjGetLightMaskAttnFunc()

s32 HSD_LObjGetLightMaskAttnFunc ( void )

◆ HSD_LObjGetLightMaskAlpha()

s32 HSD_LObjGetLightMaskAlpha ( void )

◆ HSD_LObjGetLightMaskSpecular()

s32 HSD_LObjGetLightMaskSpecular ( void )

◆ HSD_LObjSetActive()

void HSD_LObjSetActive ( HSD_LObj * lobj)

◆ HSD_LObjGetNbActive()

s32 HSD_LObjGetNbActive ( void )

◆ HSD_LObjGetActiveByID()

HSD_LObj * HSD_LObjGetActiveByID ( GXLightID id)

◆ HSD_LObjGetActiveByIndex()

HSD_LObj * HSD_LObjGetActiveByIndex ( s32 idx)

◆ HSD_LObjClearActive()

void HSD_LObjClearActive ( void )

◆ LObjUpdateFunc()

void LObjUpdateFunc ( void * obj,
enum_t type,
HSD_ObjData * val )

◆ HSD_LObjAddAnim()

void HSD_LObjAddAnim ( HSD_LObj * lobj,
HSD_LightAnim * lanim )

◆ HSD_LObjAddAnimAll()

void HSD_LObjAddAnimAll ( HSD_LObj * lobj,
HSD_LightAnim * lanim )

◆ HSD_LObjAnim()

void HSD_LObjAnim ( HSD_LObj * lobj)

◆ HSD_LObjAnimAll()

void HSD_LObjAnimAll ( HSD_LObj * lobj)

◆ HSD_LObjReqAnim()

void HSD_LObjReqAnim ( HSD_LObj * lobj,
f32 startframe )

◆ HSD_LObjReqAnimAll()

void HSD_LObjReqAnimAll ( HSD_LObj * lobj,
f32 startframe )

◆ HSD_LObjGetLightVector()

void HSD_LObjGetLightVector ( HSD_LObj * lobj,
Vec3 * dir )

◆ HSD_LObjSetup()

void HSD_LObjSetup ( HSD_LObj * lobj,
GXColor color,
f32 shininess )

◆ HSD_LObjGetPosition()

bool HSD_LObjGetPosition ( HSD_LObj * lobj,
Vec3 * position )

◆ HSD_LObjGetInterest()

bool HSD_LObjGetInterest ( HSD_LObj * lobj,
Vec3 * interest )

◆ HSD_LObjGetPositionWObj()

HSD_WObj * HSD_LObjGetPositionWObj ( HSD_LObj * lobj)

◆ HSD_LObjGetInterestWObj()

HSD_WObj * HSD_LObjGetInterestWObj ( HSD_LObj * lobj)

◆ HSD_LObjSetPositionWObj()

void HSD_LObjSetPositionWObj ( HSD_LObj * lobj,
HSD_WObj * wobj )

◆ HSD_LObjSetInterestWObj()

void HSD_LObjSetInterestWObj ( HSD_LObj * lobj,
HSD_WObj * wobj )

◆ HSD_LightID2Index()

u32 HSD_LightID2Index ( GXLightID id)

◆ HSD_LObjDeleteCurrent()

void HSD_LObjDeleteCurrent ( HSD_LObj * lobj)

◆ HSD_Index2LightID()

s32 HSD_Index2LightID ( u32 index)

◆ HSD_LObjRemoveAll()

void HSD_LObjRemoveAll ( HSD_LObj * lobj)

◆ HSD_LObjSetPosition()

void HSD_LObjSetPosition ( HSD_LObj * lobj,
Vec3 * position )

◆ HSD_LObjSetInterest()

void HSD_LObjSetInterest ( HSD_LObj * lobj,
Vec3 * interest )

◆ HSD_LObj_803668EC()

void HSD_LObj_803668EC ( HSD_LObj * lobj)

◆ HSD_LObjSetupInit()

void HSD_LObjSetupInit ( HSD_CObj * arg0)

◆ HSD_LObjSetColor()

void HSD_LObjSetColor ( HSD_LObj * lobj,
GXColor color )

◆ HSD_LObjGetColor()

void HSD_LObjGetColor ( HSD_LObj * lobj,
GXColor * color )

◆ HSD_LObjSetSpot()

void HSD_LObjSetSpot ( HSD_LObj * lobj,
f32 cutoff,
s32 point_func )

◆ HSD_LObjSetDistAttn()

void HSD_LObjSetDistAttn ( HSD_LObj * lobj,
f32 ref_dist,
f32 ref_br,
s32 dist_func )

◆ HSD_LObjSetAttnA()

void HSD_LObjSetAttnA ( HSD_LObj * lobj,
f32 a0,
f32 a1,
f32 a2 )

◆ HSD_LObjSetAttnK()

void HSD_LObjSetAttnK ( HSD_LObj * lobj,
f32 k0,
f32 k1,
f32 k2 )

◆ HSD_LObjSetAttn()

void HSD_LObjSetAttn ( HSD_LObj * lobj,
f32 a0,
f32 a1,
f32 a2,
f32 k0,
f32 k1,
f32 k2 )

◆ HSD_LObjSetupSpecularInit()

void HSD_LObjSetupSpecularInit ( Mtx pmtx)

◆ HSD_LObjGetType()

u32 HSD_LObjGetType ( HSD_LObj * lobj)

◆ HSD_LObjAddCurrent()

void HSD_LObjAddCurrent ( HSD_LObj * lobj)

◆ HSD_LObjUnrefThis()

void HSD_LObjUnrefThis ( HSD_LObj * lobj)

◆ HSD_LObjDeleteCurrentAll()

void HSD_LObjDeleteCurrentAll ( HSD_LObj * lobj)

◆ HSD_LObjSetCurrentAll()

void HSD_LObjSetCurrentAll ( HSD_LObj * lobj)

◆ HSD_LObjGetCurrentByType()

HSD_LObj * HSD_LObjGetCurrentByType ( u16 type)

◆ HSD_LObjSetDefaultClass()

void HSD_LObjSetDefaultClass ( HSD_LObjInfo * info)

◆ HSD_LObjGetDefaultClass()

HSD_LObjInfo * HSD_LObjGetDefaultClass ( void )

◆ HSD_LObjAlloc()

HSD_LObj * HSD_LObjAlloc ( void )

◆ HSD_LObjLoadDesc()

HSD_LObj * HSD_LObjLoadDesc ( HSD_LightDesc * ldesc)

◆ HSD_LObjGetNext()

HSD_LObj * HSD_LObjGetNext ( HSD_LObj * lobj)
inlinestatic

◆ HSD_LObjSetNext()

void HSD_LObjSetNext ( HSD_LObj * lobj,
HSD_LObj * next )
inlinestatic

Variable Documentation

◆ hsdLobj

HSD_LObjInfo hsdLobj
extern