99 lines
3.7 KiB
C
99 lines
3.7 KiB
C
|
|
/***************************************************************************
|
||
|
|
* *
|
||
|
|
* XStudioService.h -- This module defines the APIs for Xbox 360 Studio *
|
||
|
|
* Services *
|
||
|
|
* *
|
||
|
|
* Copyright (c) Microsoft Corp. All rights reserved. *
|
||
|
|
* *
|
||
|
|
***************************************************************************/
|
||
|
|
|
||
|
|
#pragma once
|
||
|
|
|
||
|
|
#ifndef XSTUDIO
|
||
|
|
#error "You must include xstudio.h rather than including xstudioservice.h directly"
|
||
|
|
#endif
|
||
|
|
|
||
|
|
|
||
|
|
#ifdef __cplusplus
|
||
|
|
extern "C" {
|
||
|
|
#endif
|
||
|
|
|
||
|
|
// Set bitfield ordering to lsb->msb on PPC (default is msb->lsb)
|
||
|
|
#if defined(_M_PPCBE)
|
||
|
|
#pragma bitfield_order(push)
|
||
|
|
#pragma bitfield_order(lsb_to_msb)
|
||
|
|
#endif
|
||
|
|
|
||
|
|
|
||
|
|
// -----------------------------------------------------------------------------
|
||
|
|
// Handle Types
|
||
|
|
// -----------------------------------------------------------------------------
|
||
|
|
|
||
|
|
typedef unsigned int XSTUDIO_HANDLE;
|
||
|
|
|
||
|
|
typedef XSTUDIO_HANDLE XSTUDIO_FILE_HANDLE;
|
||
|
|
|
||
|
|
// -----------------------------------------------------------------------------
|
||
|
|
// Stream Types
|
||
|
|
// -----------------------------------------------------------------------------
|
||
|
|
|
||
|
|
typedef enum _XSTUDIO_STREAM_ID
|
||
|
|
{
|
||
|
|
XSTUDIO_STREAM_ID_NUICAM_BASE = 0,
|
||
|
|
XSTUDIO_STREAM_ID_NUICAM_DEPTH = XSTUDIO_STREAM_ID_NUICAM_BASE + 0, // 0
|
||
|
|
XSTUDIO_STREAM_ID_NUICAM_COLOR = XSTUDIO_STREAM_ID_NUICAM_BASE + 1, // 1
|
||
|
|
|
||
|
|
XSTUDIO_STREAM_ID_NUIAPI_BASE = 4,
|
||
|
|
XSTUDIO_STREAM_ID_NUIAPI_SKELETON = XSTUDIO_STREAM_ID_NUIAPI_BASE + 0, // 4
|
||
|
|
XSTUDIO_STREAM_ID_NUIAPI_IDENTITY = XSTUDIO_STREAM_ID_NUIAPI_BASE + 2, // 6
|
||
|
|
XSTUDIO_STREAM_ID_NUIAPI_PLAYER_INDEX = XSTUDIO_STREAM_ID_NUIAPI_BASE + 3, // 7
|
||
|
|
|
||
|
|
XSTUDIO_STREAM_ID_TITLE_BASE = 16,
|
||
|
|
XSTUDIO_STREAM_ID_TITLE_DATA = XSTUDIO_STREAM_ID_TITLE_BASE + 0, // 16
|
||
|
|
|
||
|
|
XSTUDIO_STREAM_ID_MISC_PRIVATE = 31, // 31
|
||
|
|
|
||
|
|
XSTUDIO_STREAM_ID_COUNT = 32,
|
||
|
|
|
||
|
|
XSTUDIO_STREAM_ID_INVALID = 0xFFFFFFFF
|
||
|
|
|
||
|
|
} XSTUDIO_STREAM_ID;
|
||
|
|
|
||
|
|
|
||
|
|
typedef DWORD XSTUDIO_STREAM_FLAGS, *PXSTUDIO_STREAM_FLAGS;
|
||
|
|
|
||
|
|
#define XSTUDIO_STREAM_FLAG_NONE ( 0 )
|
||
|
|
#define XSTUDIO_STREAM_FLAG_DEFAULT ( (XSTUDIO_STREAM_FLAGS)-1 )
|
||
|
|
|
||
|
|
#define XSTUDIO_STREAM_FLAG_NUICAM_DEPTH ( 1 << XSTUDIO_STREAM_ID_NUICAM_DEPTH )
|
||
|
|
#define XSTUDIO_STREAM_FLAG_NUICAM_COLOR ( 1 << XSTUDIO_STREAM_ID_NUICAM_COLOR )
|
||
|
|
#define XSTUDIO_STREAM_FLAG_NUICAM_ALL ( XSTUDIO_STREAM_FLAG_NUICAM_DEPTH | XSTUDIO_STREAM_FLAG_NUICAM_COLOR )
|
||
|
|
|
||
|
|
#define XSTUDIO_STREAM_FLAG_NUIAPI_SKELETON ( 1 << XSTUDIO_STREAM_ID_NUIAPI_SKELETON )
|
||
|
|
#define XSTUDIO_STREAM_FLAG_NUIAPI_IDENTITY ( 1 << XSTUDIO_STREAM_ID_NUIAPI_IDENTITY )
|
||
|
|
#define XSTUDIO_STREAM_FLAG_NUIAPI_PLAYER_INDEX ( 1 << XSTUDIO_STREAM_ID_NUIAPI_PLAYER_INDEX )
|
||
|
|
|
||
|
|
#define XSTUDIO_STREAM_FLAG_NUIAPI_ALL ( XSTUDIO_STREAM_FLAG_NUIAPI_SKELETON \
|
||
|
|
| XSTUDIO_STREAM_FLAG_NUIAPI_IDENTITY \
|
||
|
|
| XSTUDIO_STREAM_FLAG_NUIAPI_PLAYER_INDEX )
|
||
|
|
|
||
|
|
|
||
|
|
#define XSTUDIO_STREAM_FLAG_TITLE_DATA ( 1 << XSTUDIO_STREAM_ID_TITLE_DATA )
|
||
|
|
#define XSTUDIO_STREAM_FLAG_TITLE_ALL ( XSTUDIO_STREAM_FLAG_TITLE_DATA )
|
||
|
|
|
||
|
|
|
||
|
|
#define XSTUDIO_STREAM_FLAG_ALL ( XSTUDIO_STREAM_FLAG_NUICAM_ALL \
|
||
|
|
| XSTUDIO_STREAM_FLAG_NUIAPI_ALL \
|
||
|
|
| XSTUDIO_STREAM_FLAG_TITLE_ALL )
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
#if defined(_M_PPCBE)
|
||
|
|
#pragma bitfield_order(pop)
|
||
|
|
#endif
|
||
|
|
|
||
|
|
#ifdef __cplusplus
|
||
|
|
}
|
||
|
|
#endif
|
||
|
|
|