/*
* Copyright 2007,2010 Vijay Kiran Kamuju
* Copyright 2007 David ADAM
* Copyright 2010 Christian Costa
*
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
/*
* Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
* other than GPL or LGPL is available it will apply instead, Oracle elects to use only
* the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
* a choice of LGPL license versions is made available with the language indicating
* that LGPLv2 or any later version may be used, or where a choice of which version
* of the LGPL is applied is otherwise unspecified.
*/
#ifndef __D3DRMDEFS_H__
#define __D3DRMDEFS_H__
#include <stddef.h>
#include <d3dtypes.h>
#if defined(__cplusplus)
extern "C" {
#endif
typedef struct _D3DRMVECTOR4D
{
D3DVALUE x;
D3DVALUE y;
D3DVALUE z;
D3DVALUE w;
typedef struct _D3DRMQUATERNION {
D3DVALUE s;
D3DVECTOR v;
typedef struct _D3DRMRAY {
typedef struct _D3DRMBOX {
typedef void (*D3DRMWRAPCALLBACK)(D3DVECTOR *vec, int *u, int *v, D3DVECTOR *a, D3DVECTOR *b, void *ctx);
typedef enum _D3DRMLIGHTTYPE {
typedef enum _D3DRMSHADEMODE {
D3DRMSHADE_FLAT = 0,
typedef enum _D3DRMLIGHTMODE {
typedef enum _D3DRMFILLMODE {
typedef enum _D3DRMTEXTUREQUALITY {
typedef enum _D3DRMCOMBINETYPE {
typedef enum _D3DRMPALETTEFLAGS
{
typedef struct _D3DRMPALETTEENTRY {
unsigned char red;
unsigned char green;
unsigned char blue;
unsigned char flags;
typedef struct _D3DRMIMAGE {
int width;
int height;
int aspectx;
int aspecty;
int depth;
int rgb;
int bytes_per_line;
void* buffer1;
void* buffer2;
int palette_size;
typedef enum _D3DRMWRAPTYPE {
typedef enum _D3DRMPROJECTIONTYPE
{
typedef enum _D3DRMXOFFORMAT {
typedef enum _D3DRMCOLORSOURCE {
typedef enum _D3DRMFRAMECONSTRAINT {
typedef enum _D3DRMMATERIALMODE {
typedef enum _D3DRMFOGMODE {
typedef enum _D3DRMZBUFFERMODE {
typedef enum _D3DRMSORTMODE {
typedef struct _D3DRMMATERIALOVERRIDE {
#define D3DRMCALLBACK_PREORDER 0
typedef struct _D3DRMLOADRESOURCE
{
const char *lpName;
const char *lpType;
typedef struct _D3DRMLOADMEMORY
{
void *lpMemory;
typedef struct _D3DRMPMESHLOADSTATUS {
typedef enum _D3DRMUSERVISUALREASON {
typedef struct _D3DRMANIMATIONKEY
{
#if !defined(__cplusplus) || !defined(D3D_OVERLOADS)
union
{
#else
#endif
typedef struct _D3DRMVERTEX {
D3DRMQUATERNION * WINAPI D3DRMQuaternionFromRotation(D3DRMQUATERNION *x, D3DVECTOR *axis, D3DVALUE theta);
D3DRMQUATERNION * WINAPI D3DRMQuaternionMultiply(D3DRMQUATERNION *ret, D3DRMQUATERNION *x, D3DRMQUATERNION *y);
D3DVECTOR * WINAPI D3DRMVectorRotate(D3DVECTOR *ret, D3DVECTOR *x, D3DVECTOR *axis, D3DVALUE theta);
#if defined(__cplusplus)
}
#endif
#endif