0N/A/*
2362N/A * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
0N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
0N/A *
0N/A * This code is free software; you can redistribute it and/or modify it
0N/A * under the terms of the GNU General Public License version 2 only, as
2362N/A * published by the Free Software Foundation. Oracle designates this
0N/A * particular file as subject to the "Classpath" exception as provided
2362N/A * by Oracle in the LICENSE file that accompanied this code.
0N/A *
0N/A * This code is distributed in the hope that it will be useful, but WITHOUT
0N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
0N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
0N/A * version 2 for more details (a copy is included in the LICENSE file that
0N/A * accompanied this code).
0N/A *
0N/A * You should have received a copy of the GNU General Public License version
0N/A * 2 along with this work; if not, write to the Free Software Foundation,
0N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
0N/A *
2362N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
2362N/A * or visit www.oracle.com if you need additional information or have any
2362N/A * questions.
0N/A */
0N/A
430N/A#ifndef _D3DSURFACEDATA_H_
430N/A#define _D3DSURFACEDATA_H_
0N/A
0N/A#include "java_awt_image_AffineTransformOp.h"
0N/A#include "sun_java2d_d3d_D3DSurfaceData.h"
430N/A#include "sun_java2d_pipe_hw_AccelSurface.h"
430N/A#include "SurfaceData.h"
430N/A#include <d3d9.h>
0N/A
0N/Atypedef struct _D3DSDOps D3DSDOps;
0N/A
430N/Aclass D3DResource;
430N/A
0N/Astruct _D3DSDOps {
430N/A SurfaceDataOps sdOps;
430N/A
430N/A // the ordinal of the d3d adapter this surface belongs to
430N/A // (may be different from GDI display number)
430N/A jint adapter;
430N/A jint width, height;
430N/A
430N/A // backbuffer-related data
430N/A jint xoff, yoff;
430N/A D3DSWAPEFFECT swapEffect;
430N/A
430N/A D3DResource *pResource;
0N/A};
0N/A
430N/A#define UNDEFINED sun_java2d_pipe_hw_AccelSurface_UNDEFINED
430N/A#define RT_PLAIN sun_java2d_pipe_hw_AccelSurface_RT_PLAIN
430N/A#define TEXTURE sun_java2d_pipe_hw_AccelSurface_TEXTURE
430N/A#define RT_TEXTURE sun_java2d_pipe_hw_AccelSurface_RT_TEXTURE
430N/A#define FLIP_BACKBUFFER sun_java2d_pipe_hw_AccelSurface_FLIP_BACKBUFFER
430N/A#define D3D_DEVICE_RESOURCE \
430N/A sun_java2d_d3d_D3DSurfaceData_D3D_DEVICE_RESOURCE
430N/A
430N/A#define ST_INT_ARGB sun_java2d_d3d_D3DSurfaceData_ST_INT_ARGB
430N/A#define ST_INT_ARGB_PRE sun_java2d_d3d_D3DSurfaceData_ST_INT_ARGB_PRE
430N/A#define ST_INT_ARGB_BM sun_java2d_d3d_D3DSurfaceData_ST_INT_ARGB_BM
430N/A#define ST_INT_RGB sun_java2d_d3d_D3DSurfaceData_ST_INT_RGB
430N/A#define ST_INT_BGR sun_java2d_d3d_D3DSurfaceData_ST_INT_BGR
430N/A#define ST_USHORT_565_RGB sun_java2d_d3d_D3DSurfaceData_ST_USHORT_565_RGB
430N/A#define ST_USHORT_555_RGB sun_java2d_d3d_D3DSurfaceData_ST_USHORT_555_RGB
430N/A#define ST_BYTE_INDEXED sun_java2d_d3d_D3DSurfaceData_ST_BYTE_INDEXED
430N/A#define ST_BYTE_INDEXED_BM sun_java2d_d3d_D3DSurfaceData_ST_BYTE_INDEXED_BM
759N/A#define ST_3BYTE_BGR sun_java2d_d3d_D3DSurfaceData_ST_3BYTE_BGR
430N/A
430N/A/**
430N/A * These are defined to be the same as ExtendedBufferCapabilities.VSyncType
430N/A * enum.
430N/A */
430N/A#define VSYNC_DEFAULT 0
430N/A#define VSYNC_ON 1
430N/A#define VSYNC_OFF 2
430N/A
430N/A/**
430N/A * These are shorthand names for the filtering method constants used by
430N/A * image transform methods.
430N/A */
430N/A#define D3DSD_XFORM_DEFAULT 0
0N/A#define D3DSD_XFORM_NEAREST_NEIGHBOR \
0N/A java_awt_image_AffineTransformOp_TYPE_NEAREST_NEIGHBOR
0N/A#define D3DSD_XFORM_BILINEAR \
0N/A java_awt_image_AffineTransformOp_TYPE_BILINEAR
0N/A
430N/Avoid D3DSD_Flush(void *pData);
430N/Avoid D3DSD_MarkLost(void *pData);
0N/A
430N/A#endif /* _D3DSURFACEDATA_H_ */