/*---------------------------------------------------------------------------*
  Project:  THP demo
  File:     THPPlayerCommon.h

  Copyright (C)2002-2006 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.

  $Log: THPPlayerCommon.h,v $
  Revision 1.1  02/03/2006 10:00:34  aka
  Imported from Dolphin tree.

    
    1     02/05/14 9:41a Suzuki
    Initial check-in.
    
  $NoKeywords: $  

 *---------------------------------------------------------------------------*/
 
#ifndef __THPPLAYERCOMMON_H__
#define __THPPLAYERCOMMON_H__

#include <revolution.h>

#ifdef __cplusplus
extern "C" {
#endif

// player mode
typedef enum
{
    THP_MODE_ALONE = 0x00,
    THP_MODE_WITH_AX,
    THP_MODE_WITH_MUSYX
} THPPlayerMode;

// play flag
typedef enum
{
    THP_PLAY_ONESHOT = 0x00,
    THP_PLAY_LOOP    = 0x01
} THPPlayFlag;

// structure for read buffer
typedef struct
{
    u8            *ptr;
    s32           frameNumber;
    volatile BOOL isValid;
} THPReadBuffer;

// structure for decoded video data
typedef struct
{
    u8  *ytexture;
    u8  *utexture;
    u8  *vtexture;
    s32 frameNumber;
} THPTextureSet;

// structure for decoded audio data
typedef struct
{
    s16 *buffer;
    s16 *curPtr;
    u32 validSample;
} THPAudioBuffer;

#ifdef __cplusplus
}
#endif

#endif // __THPPLAYERCOMMON_H__
