/*---------------------------------------------------------------------------* Project: OS System Health File: OSSysHealth.h Copyright (C) Nintendo. All rights reserved. These coded instructions, statements, and computer programs contain proprietary information of Nintendo of America Inc. and/or Nintendo Company Ltd., and are protected by Federal copyright law. They may not be disclosed to third parties or copied or duplicated in any form, in whole or in part, without the prior written consent of Nintendo. *---------------------------------------------------------------------------*/ #ifndef __OSSYSHEALTH_H__ #define __OSSYSHEALTH_H__ #include #ifdef __cplusplus extern "C" { #endif #define SH_ALARM (1 << 0) #define SH_THREAD (1 << 1) #define SH_MEMORY (1 << 2) #define SH_SYSLOG (1 << 3) #define SH_FGBGTRANSITION (1 << 4) #define SH_NETWORK (1 << 5) #define SH_FILESYSTEM (1 << 6) #define SH_GRAPHIC (1 << 7) #define SH_ALL (SH_ALARM|SH_THREAD|SH_MEMORY|SH_SYSLOG|SH_FGBGTRANSITION|SH_NETWORK|SH_FILESYSTEM|SH_GHAPHIC) typedef struct SHAlarm { u32 todo; } SHAlarm; typedef struct SHThread { u32 todo; } SHThread; typedef struct SHMemory { u32 todo; } SHMemory; typedef struct SHSyslog { char current[8*1024*1024]; char previous[1]; } SHSyslog; typedef struct SHFGBGTransition { u32 todo; } SHFGBGTransition; typedef struct SHNetwork { u32 todo; } SHNetwork; typedef struct SHFileSystem { u32 todo; } SHFileSystem; typedef struct SHGraphic { u32 todo; } SHGraphic; typedef struct OSSysHealth { u32 allocsize; u32 component_mask; SHAlarm *alarm; SHThread *thread; SHMemory *memory; SHSyslog *syslog; SHFGBGTransition *fgbgtransition; SHNetwork *network; SHFileSystem *filesystem; SHGraphic *graphic; } OSSysHealth; OSSysHealth* OSAllocSysHealth(u32 component_mask); void OSFreeSysHealth(OSSysHealth *sh); BOOL OSGetSysHealth(OSSysHealth *sh); #ifdef __cplusplus } #endif #endif // __OSSYSHEALTH_H__