ReactOS 0.4.17-dev-934-g091855f
d3dx10tex.h File Reference
#include "d3dx10.h"
Include dependency graph for d3dx10tex.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  D3DX10_IMAGE_INFO
 
struct  D3DX10_IMAGE_LOAD_INFO
 
struct  _D3DX10_TEXTURE_LOAD_INFO
 

Macros

#define D3DX10GetImageInfoFromFile   WINELIB_NAME_AW(D3DX10GetImageInfoFromFile)
 
#define D3DX10GetImageInfoFromResource   WINELIB_NAME_AW(D3DX10GetImageInfoFromResource)
 
#define D3DX10CreateTextureFromFile   WINELIB_NAME_AW(D3DX10CreateTextureFromFile)
 
#define D3DX10CreateTextureFromResource   WINELIB_NAME_AW(D3DX10CreateTextureFromResource)
 

Typedefs

typedef enum D3DX10_FILTER_FLAG D3DX10_FILTER_FLAG
 
typedef enum D3DX10_IMAGE_FILE_FORMAT D3DX10_IMAGE_FILE_FORMAT
 
typedef struct D3DX10_IMAGE_INFO D3DX10_IMAGE_INFO
 
typedef struct D3DX10_IMAGE_LOAD_INFO D3DX10_IMAGE_LOAD_INFO
 
typedef struct _D3DX10_TEXTURE_LOAD_INFO D3DX10_TEXTURE_LOAD_INFO
 

Enumerations

enum  D3DX10_FILTER_FLAG {
  D3DX10_FILTER_NONE = 0x00000001 , D3DX10_FILTER_POINT = 0x00000002 , D3DX10_FILTER_LINEAR = 0x00000003 , D3DX10_FILTER_TRIANGLE = 0x00000004 ,
  D3DX10_FILTER_BOX = 0x00000005 , D3DX10_FILTER_MIRROR_U = 0x00010000 , D3DX10_FILTER_MIRROR_V = 0x00020000 , D3DX10_FILTER_MIRROR_W = 0x00040000 ,
  D3DX10_FILTER_MIRROR = 0x00070000 , D3DX10_FILTER_DITHER = 0x00080000 , D3DX10_FILTER_DITHER_DIFFUSION = 0x00100000 , D3DX10_FILTER_SRGB_IN = 0x00200000 ,
  D3DX10_FILTER_SRGB_OUT = 0x00400000 , D3DX10_FILTER_SRGB = 0x00600000
}
 
enum  D3DX10_IMAGE_FILE_FORMAT {
  D3DX10_IFF_BMP = 0 , D3DX10_IFF_JPG = 1 , D3DX10_IFF_PNG = 3 , D3DX10_IFF_DDS = 4 ,
  D3DX10_IFF_TIFF = 10 , D3DX10_IFF_GIF = 11 , D3DX10_IFF_WMP = 12 , D3DX10_IFF_FORCE_DWORD = 0x7fffffff
}
 

Functions

HRESULT WINAPI D3DX10CreateTextureFromMemory (ID3D10Device *device, const void *src_data, SIZE_T src_data_size, D3DX10_IMAGE_LOAD_INFO *loadinfo, ID3DX10ThreadPump *pump, ID3D10Resource **texture, HRESULT *hresult)
 
HRESULT WINAPI D3DX10FilterTexture (ID3D10Resource *texture, UINT src_level, UINT filter)
 
HRESULT WINAPI D3DX10GetImageInfoFromFileA (const char *src_file, ID3DX10ThreadPump *pump, D3DX10_IMAGE_INFO *info, HRESULT *result)
 
HRESULT WINAPI D3DX10GetImageInfoFromFileW (const WCHAR *src_file, ID3DX10ThreadPump *pump, D3DX10_IMAGE_INFO *info, HRESULT *result)
 
HRESULT WINAPI D3DX10GetImageInfoFromResourceA (HMODULE module, const char *resource, ID3DX10ThreadPump *pump, D3DX10_IMAGE_INFO *info, HRESULT *result)
 
HRESULT WINAPI D3DX10GetImageInfoFromResourceW (HMODULE module, const WCHAR *resource, ID3DX10ThreadPump *pump, D3DX10_IMAGE_INFO *info, HRESULT *result)
 
HRESULT WINAPI D3DX10GetImageInfoFromMemory (const void *src_data, SIZE_T src_data_size, ID3DX10ThreadPump *pump, D3DX10_IMAGE_INFO *img_info, HRESULT *hresult)
 
HRESULT WINAPI D3DX10CreateTextureFromFileA (ID3D10Device *device, const char *src_file, D3DX10_IMAGE_LOAD_INFO *load_info, ID3DX10ThreadPump *pump, ID3D10Resource **texture, HRESULT *hresult)
 
HRESULT WINAPI D3DX10CreateTextureFromFileW (ID3D10Device *device, const WCHAR *src_file, D3DX10_IMAGE_LOAD_INFO *load_info, ID3DX10ThreadPump *pump, ID3D10Resource **texture, HRESULT *hresult)
 
HRESULT WINAPI D3DX10CreateTextureFromResourceA (ID3D10Device *device, HMODULE module, const char *resource, D3DX10_IMAGE_LOAD_INFO *load_info, ID3DX10ThreadPump *pump, ID3D10Resource **texture, HRESULT *hresult)
 
HRESULT WINAPI D3DX10CreateTextureFromResourceW (ID3D10Device *device, HMODULE module, const WCHAR *resource, D3DX10_IMAGE_LOAD_INFO *load_info, ID3DX10ThreadPump *pump, ID3D10Resource **texture, HRESULT *hresult)
 
HRESULT WINAPI D3DX10LoadTextureFromTexture (ID3D10Resource *src_texture, D3DX10_TEXTURE_LOAD_INFO *load_info, ID3D10Resource *dst_texture)
 

Macro Definition Documentation

◆ D3DX10CreateTextureFromFile

#define D3DX10CreateTextureFromFile   WINELIB_NAME_AW(D3DX10CreateTextureFromFile)

Definition at line 163 of file d3dx10tex.h.

◆ D3DX10CreateTextureFromResource

#define D3DX10CreateTextureFromResource   WINELIB_NAME_AW(D3DX10CreateTextureFromResource)

Definition at line 169 of file d3dx10tex.h.

◆ D3DX10GetImageInfoFromFile

#define D3DX10GetImageInfoFromFile   WINELIB_NAME_AW(D3DX10GetImageInfoFromFile)

Definition at line 148 of file d3dx10tex.h.

◆ D3DX10GetImageInfoFromResource

#define D3DX10GetImageInfoFromResource   WINELIB_NAME_AW(D3DX10GetImageInfoFromResource)

Definition at line 154 of file d3dx10tex.h.

Typedef Documentation

◆ D3DX10_FILTER_FLAG

◆ D3DX10_IMAGE_FILE_FORMAT

◆ D3DX10_IMAGE_INFO

◆ D3DX10_IMAGE_LOAD_INFO

◆ D3DX10_TEXTURE_LOAD_INFO

Enumeration Type Documentation

◆ D3DX10_FILTER_FLAG

Enumerator
D3DX10_FILTER_NONE 
D3DX10_FILTER_POINT 
D3DX10_FILTER_LINEAR 
D3DX10_FILTER_TRIANGLE 
D3DX10_FILTER_BOX 
D3DX10_FILTER_MIRROR_U 
D3DX10_FILTER_MIRROR_V 
D3DX10_FILTER_MIRROR_W 
D3DX10_FILTER_MIRROR 
D3DX10_FILTER_DITHER 
D3DX10_FILTER_DITHER_DIFFUSION 
D3DX10_FILTER_SRGB_IN 
D3DX10_FILTER_SRGB_OUT 
D3DX10_FILTER_SRGB 

Definition at line 24 of file d3dx10tex.h.

25{
26 D3DX10_FILTER_NONE = 0x00000001,
27 D3DX10_FILTER_POINT = 0x00000002,
28 D3DX10_FILTER_LINEAR = 0x00000003,
29 D3DX10_FILTER_TRIANGLE = 0x00000004,
30 D3DX10_FILTER_BOX = 0x00000005,
31
32 D3DX10_FILTER_MIRROR_U = 0x00010000,
33 D3DX10_FILTER_MIRROR_V = 0x00020000,
34 D3DX10_FILTER_MIRROR_W = 0x00040000,
35 D3DX10_FILTER_MIRROR = 0x00070000,
36
37 D3DX10_FILTER_DITHER = 0x00080000,
39
40 D3DX10_FILTER_SRGB_IN = 0x00200000,
41 D3DX10_FILTER_SRGB_OUT = 0x00400000,
42 D3DX10_FILTER_SRGB = 0x00600000,
D3DX10_FILTER_FLAG
Definition: d3dx10tex.h:25
@ D3DX10_FILTER_SRGB_OUT
Definition: d3dx10tex.h:41
@ D3DX10_FILTER_LINEAR
Definition: d3dx10tex.h:28
@ D3DX10_FILTER_POINT
Definition: d3dx10tex.h:27
@ D3DX10_FILTER_BOX
Definition: d3dx10tex.h:30
@ D3DX10_FILTER_NONE
Definition: d3dx10tex.h:26
@ D3DX10_FILTER_DITHER_DIFFUSION
Definition: d3dx10tex.h:38
@ D3DX10_FILTER_TRIANGLE
Definition: d3dx10tex.h:29
@ D3DX10_FILTER_MIRROR_V
Definition: d3dx10tex.h:33
@ D3DX10_FILTER_SRGB_IN
Definition: d3dx10tex.h:40
@ D3DX10_FILTER_MIRROR_U
Definition: d3dx10tex.h:32
@ D3DX10_FILTER_DITHER
Definition: d3dx10tex.h:37
@ D3DX10_FILTER_MIRROR_W
Definition: d3dx10tex.h:34
@ D3DX10_FILTER_MIRROR
Definition: d3dx10tex.h:35
@ D3DX10_FILTER_SRGB
Definition: d3dx10tex.h:42

◆ D3DX10_IMAGE_FILE_FORMAT

Enumerator
D3DX10_IFF_BMP 
D3DX10_IFF_JPG 
D3DX10_IFF_PNG 
D3DX10_IFF_DDS 
D3DX10_IFF_TIFF 
D3DX10_IFF_GIF 
D3DX10_IFF_WMP 
D3DX10_IFF_FORCE_DWORD 

Definition at line 45 of file d3dx10tex.h.

46{
51 D3DX10_IFF_TIFF = 10,
52 D3DX10_IFF_GIF = 11,
53 D3DX10_IFF_WMP = 12,
54 D3DX10_IFF_FORCE_DWORD = 0x7fffffff
D3DX10_IMAGE_FILE_FORMAT
Definition: d3dx10tex.h:46
@ D3DX10_IFF_BMP
Definition: d3dx10tex.h:47
@ D3DX10_IFF_PNG
Definition: d3dx10tex.h:49
@ D3DX10_IFF_TIFF
Definition: d3dx10tex.h:51
@ D3DX10_IFF_JPG
Definition: d3dx10tex.h:48
@ D3DX10_IFF_DDS
Definition: d3dx10tex.h:50
@ D3DX10_IFF_GIF
Definition: d3dx10tex.h:52
@ D3DX10_IFF_WMP
Definition: d3dx10tex.h:53
@ D3DX10_IFF_FORCE_DWORD
Definition: d3dx10tex.h:54

Function Documentation

◆ D3DX10CreateTextureFromFileA()

HRESULT WINAPI D3DX10CreateTextureFromFileA ( ID3D10Device *  device,
const char *  src_file,
D3DX10_IMAGE_LOAD_INFO *  load_info,
ID3DX10ThreadPump *  pump,
ID3D10Resource **  texture,
HRESULT *  hresult 
)

Definition at line 574 of file texture.c.

576{
577 WCHAR *buffer;
578 int str_len;
579 HRESULT hr;
580
581 TRACE("device %p, src_file %s, load_info %p, pump %p, texture %p, hresult %p.\n",
582 device, debugstr_a(src_file), load_info, pump, texture, hresult);
583
584 if (!device)
585 return E_INVALIDARG;
586 if (!src_file)
587 return E_FAIL;
588
589 if (!(str_len = MultiByteToWideChar(CP_ACP, 0, src_file, -1, NULL, 0)))
591
592 if (!(buffer = malloc(str_len * sizeof(*buffer))))
593 return E_OUTOFMEMORY;
594
595 MultiByteToWideChar(CP_ACP, 0, src_file, -1, buffer, str_len);
596 hr = D3DX10CreateTextureFromFileW(device, buffer, load_info, pump, texture, hresult);
597
598 free(buffer);
599
600 return hr;
601}
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define E_INVALIDARG
Definition: ddrawi.h:101
#define E_FAIL
Definition: ddrawi.h:102
#define free
Definition: debug_ros.c:5
#define malloc
Definition: debug_ros.c:4
HRESULT hr
Definition: delayimp.cpp:582
#define NULL
Definition: types.h:112
HRESULT WINAPI D3DX10CreateTextureFromFileW(ID3D10Device *device, const WCHAR *src_file, D3DX10_IMAGE_LOAD_INFO *load_info, ID3DX10ThreadPump *pump, ID3D10Resource **texture, HRESULT *hresult)
Definition: texture.c:603
#define CP_ACP
Definition: compat.h:109
#define MultiByteToWideChar
Definition: compat.h:110
GLenum GLuint texture
Definition: glext.h:6295
GLuint buffer
Definition: glext.h:5915
#define debugstr_a
Definition: kernel32.h:31
short WCHAR
Definition: pedump.c:58
#define TRACE(s)
Definition: solgame.cpp:4
Definition: devices.h:37
#define str_len
Definition: treelist.c:89
DWORD WINAPI GetLastError(void)
Definition: except.c:1042
static HRESULT HRESULT_FROM_WIN32(unsigned int x)
Definition: winerror.h:210

◆ D3DX10CreateTextureFromFileW()

HRESULT WINAPI D3DX10CreateTextureFromFileW ( ID3D10Device *  device,
const WCHAR *  src_file,
D3DX10_IMAGE_LOAD_INFO *  load_info,
ID3DX10ThreadPump *  pump,
ID3D10Resource **  texture,
HRESULT *  hresult 
)

Definition at line 603 of file texture.c.

605{
606 void *buffer = NULL;
607 DWORD size = 0;
608 HRESULT hr;
609
610 TRACE("device %p, src_file %s, load_info %p, pump %p, texture %p, hresult %p.\n",
611 device, debugstr_w(src_file), load_info, pump, texture, hresult);
612
613 if (!device)
614 return E_INVALIDARG;
615 if (!src_file)
616 return E_FAIL;
617
618 if (pump)
619 {
620 ID3DX10DataProcessor *processor;
621 ID3DX10DataLoader *loader;
622
623 if (FAILED((hr = D3DX10CreateAsyncFileLoaderW(src_file, &loader))))
624 return hr;
625 if (FAILED((hr = D3DX10CreateAsyncTextureProcessor(device, load_info, &processor))))
626 {
628 return hr;
629 }
630 if (FAILED((hr = ID3DX10ThreadPump_AddWorkItem(pump, loader, processor, hresult, (void **)texture))))
631 {
634 }
635 return hr;
636 }
637
638 if (SUCCEEDED((hr = load_file(src_file, &buffer, &size))))
639 {
640 hr = create_texture(device, buffer, size, load_info, texture);
641 free(buffer);
642 }
643 if (hresult)
644 *hresult = hr;
645 return hr;
646}
#define ID3DX10ThreadPump_AddWorkItem(p, a, b, c, d)
Definition: d3dx10core.h:141
#define ID3DX10DataLoader_Destroy(p)
Definition: d3dx10core.h:88
#define ID3DX10DataProcessor_Destroy(p)
Definition: d3dx10core.h:109
HRESULT WINAPI D3DX10CreateAsyncTextureProcessor(ID3D10Device *device, D3DX10_IMAGE_LOAD_INFO *load_info, ID3DX10DataProcessor **processor)
Definition: async.c:580
HRESULT WINAPI D3DX10CreateAsyncFileLoaderW(const WCHAR *filename, ID3DX10DataLoader **loader)
Definition: async.c:467
HRESULT load_file(const WCHAR *path, void **data, DWORD *size)
Definition: async.c:91
static HRESULT create_texture(ID3D10Device *device, const void *data, SIZE_T size, D3DX10_IMAGE_LOAD_INFO *load_info, ID3D10Resource **texture)
Definition: texture.c:558
unsigned long DWORD
Definition: ntddk_ex.h:95
GLsizeiptr size
Definition: glext.h:5919
#define SUCCEEDED(hr)
Definition: intsafe.h:50
#define FAILED(hr)
Definition: intsafe.h:51
#define debugstr_w
Definition: kernel32.h:32
Definition: loader.c:72

Referenced by D3DX10CreateTextureFromFileA().

◆ D3DX10CreateTextureFromMemory()

HRESULT WINAPI D3DX10CreateTextureFromMemory ( ID3D10Device *  device,
const void *  src_data,
SIZE_T  src_data_size,
D3DX10_IMAGE_LOAD_INFO *  loadinfo,
ID3DX10ThreadPump *  pump,
ID3D10Resource **  texture,
HRESULT *  hresult 
)

Definition at line 1052 of file texture.c.

1054{
1055 HRESULT hr;
1056
1057 TRACE("device %p, src_data %p, src_data_size %Iu, load_info %p, pump %p, texture %p, hresult %p.\n",
1058 device, src_data, src_data_size, load_info, pump, texture, hresult);
1059
1060 if (!device)
1061 return E_INVALIDARG;
1062 if (!src_data)
1063 return E_FAIL;
1064
1065 if (pump)
1066 {
1067 ID3DX10DataProcessor *processor;
1068 ID3DX10DataLoader *loader;
1069
1070 if (FAILED((hr = D3DX10CreateAsyncMemoryLoader(src_data, src_data_size, &loader))))
1071 return hr;
1072 if (FAILED((hr = D3DX10CreateAsyncTextureProcessor(device, load_info, &processor))))
1073 {
1075 return hr;
1076 }
1077 if (FAILED((hr = ID3DX10ThreadPump_AddWorkItem(pump, loader, processor, hresult, (void **)texture))))
1078 {
1081 }
1082 return hr;
1083 }
1084
1085 hr = create_texture(device, src_data, src_data_size, load_info, texture);
1086 if (hresult)
1087 *hresult = hr;
1088 return hr;
1089}
HRESULT WINAPI D3DX10CreateAsyncMemoryLoader(const void *data, SIZE_T data_size, ID3DX10DataLoader **loader)
Definition: async.c:423

◆ D3DX10CreateTextureFromResourceA()

HRESULT WINAPI D3DX10CreateTextureFromResourceA ( ID3D10Device *  device,
HMODULE  module,
const char *  resource,
D3DX10_IMAGE_LOAD_INFO *  load_info,
ID3DX10ThreadPump *  pump,
ID3D10Resource **  texture,
HRESULT *  hresult 
)

Definition at line 648 of file texture.c.

650{
651 void *buffer;
652 DWORD size;
653 HRESULT hr;
654
655 TRACE("device %p, module %p, resource %s, load_info %p, pump %p, texture %p, hresult %p.\n",
656 device, module, debugstr_a(resource), load_info, pump, texture, hresult);
657
658 if (!device)
659 return E_INVALIDARG;
660
661 if (pump)
662 {
663 ID3DX10DataProcessor *processor;
664 ID3DX10DataLoader *loader;
665
667 return hr;
668 if (FAILED((hr = D3DX10CreateAsyncTextureProcessor(device, load_info, &processor))))
669 {
671 return hr;
672 }
673 if (FAILED((hr = ID3DX10ThreadPump_AddWorkItem(pump, loader, processor, hresult, (void **)texture))))
674 {
677 }
678 return hr;
679 }
680
682 return hr;
683 hr = create_texture(device, buffer, size, load_info, texture);
684 if (hresult)
685 *hresult = hr;
686 return hr;
687}
HRESULT load_resourceA(HMODULE module, const char *resource, void **data, DWORD *size)
Definition: async.c:213
HRESULT WINAPI D3DX10CreateAsyncResourceLoaderA(HMODULE module, const char *resource, ID3DX10DataLoader **loader)
Definition: async.c:496

◆ D3DX10CreateTextureFromResourceW()

HRESULT WINAPI D3DX10CreateTextureFromResourceW ( ID3D10Device *  device,
HMODULE  module,
const WCHAR *  resource,
D3DX10_IMAGE_LOAD_INFO *  load_info,
ID3DX10ThreadPump *  pump,
ID3D10Resource **  texture,
HRESULT *  hresult 
)

Definition at line 689 of file texture.c.

691{
692 void *buffer;
693 DWORD size;
694 HRESULT hr;
695
696 TRACE("device %p, module %p, resource %s, load_info %p, pump %p, texture %p, hresult %p.\n",
697 device, module, debugstr_w(resource), load_info, pump, texture, hresult);
698
699 if (!device)
700 return E_INVALIDARG;
701
702 if (pump)
703 {
704 ID3DX10DataProcessor *processor;
705 ID3DX10DataLoader *loader;
706
708 return hr;
709 if (FAILED((hr = D3DX10CreateAsyncTextureProcessor(device, load_info, &processor))))
710 {
712 return hr;
713 }
714 if (FAILED((hr = ID3DX10ThreadPump_AddWorkItem(pump, loader, processor, hresult, (void **)texture))))
715 {
718 }
719 return hr;
720 }
721
723 return hr;
724 hr = create_texture(device, buffer, size, load_info, texture);
725 if (hresult)
726 *hresult = hr;
727 return hr;
728}
HRESULT load_resourceW(HMODULE module, const WCHAR *resource, void **data, DWORD *size)
Definition: async.c:223
HRESULT WINAPI D3DX10CreateAsyncResourceLoaderW(HMODULE module, const WCHAR *resource, ID3DX10DataLoader **loader)
Definition: async.c:528

◆ D3DX10FilterTexture()

HRESULT WINAPI D3DX10FilterTexture ( ID3D10Resource *  texture,
UINT  src_level,
UINT  filter 
)

Definition at line 151 of file d3dx10_43_main.c.

152{
153 FIXME("texture %p, src_level %u, filter %#x stub!\n", texture, src_level, filter);
154
155 return E_NOTIMPL;
156}
#define FIXME(fmt,...)
Definition: precomp.h:53
#define E_NOTIMPL
Definition: ddrawi.h:99
Definition: filter.c:165

◆ D3DX10GetImageInfoFromFileA()

HRESULT WINAPI D3DX10GetImageInfoFromFileA ( const char *  src_file,
ID3DX10ThreadPump *  pump,
D3DX10_IMAGE_INFO *  info,
HRESULT *  result 
)

Definition at line 279 of file texture.c.

281{
282 WCHAR *buffer;
283 int str_len;
284 HRESULT hr;
285
286 TRACE("src_file %s, pump %p, info %p, result %p.\n", debugstr_a(src_file), pump, info, result);
287
288 if (!src_file)
289 return E_FAIL;
290
291 str_len = MultiByteToWideChar(CP_ACP, 0, src_file, -1, NULL, 0);
292 if (!str_len)
294
295 buffer = malloc(str_len * sizeof(*buffer));
296 if (!buffer)
297 return E_OUTOFMEMORY;
298
299 MultiByteToWideChar(CP_ACP, 0, src_file, -1, buffer, str_len);
301
302 free(buffer);
303
304 return hr;
305}
HRESULT WINAPI D3DX10GetImageInfoFromFileW(const WCHAR *src_file, ID3DX10ThreadPump *pump, D3DX10_IMAGE_INFO *info, HRESULT *result)
Definition: texture.c:307
GLuint64EXT * result
Definition: glext.h:11304

◆ D3DX10GetImageInfoFromFileW()

HRESULT WINAPI D3DX10GetImageInfoFromFileW ( const WCHAR *  src_file,
ID3DX10ThreadPump *  pump,
D3DX10_IMAGE_INFO *  info,
HRESULT *  result 
)

Definition at line 307 of file texture.c.

309{
310 void *buffer = NULL;
311 DWORD size = 0;
312 HRESULT hr;
313
314 TRACE("src_file %s, pump %p, info %p, result %p.\n", debugstr_w(src_file), pump, info, result);
315
316 if (!src_file)
317 return E_FAIL;
318
319 if (pump)
320 {
321 ID3DX10DataProcessor *processor;
322 ID3DX10DataLoader *loader;
323
324 if (FAILED((hr = D3DX10CreateAsyncFileLoaderW(src_file, &loader))))
325 return hr;
327 {
329 return hr;
330 }
331 hr = ID3DX10ThreadPump_AddWorkItem(pump, loader, processor, result, NULL);
332 if (FAILED(hr))
333 {
336 }
337 return hr;
338 }
339
340 if (SUCCEEDED((hr = load_file(src_file, &buffer, &size))))
341 {
343 free(buffer);
344 }
345 if (result)
346 *result = hr;
347 return hr;
348}
HRESULT WINAPI D3DX10CreateAsyncTextureInfoProcessor(D3DX10_IMAGE_INFO *info, ID3DX10DataProcessor **processor)
Definition: async.c:560
HRESULT get_image_info(const void *data, SIZE_T size, D3DX10_IMAGE_INFO *img_info)
Definition: texture.c:426

Referenced by D3DX10GetImageInfoFromFileA().

◆ D3DX10GetImageInfoFromMemory()

HRESULT WINAPI D3DX10GetImageInfoFromMemory ( const void *  src_data,
SIZE_T  src_data_size,
ID3DX10ThreadPump *  pump,
D3DX10_IMAGE_INFO *  img_info,
HRESULT *  hresult 
)

Definition at line 521 of file texture.c.

523{
524 HRESULT hr;
525
526 TRACE("src_data %p, src_data_size %Iu, pump %p, img_info %p, hresult %p.\n",
527 src_data, src_data_size, pump, img_info, result);
528
529 if (!src_data)
530 return E_FAIL;
531
532 if (pump)
533 {
534 ID3DX10DataProcessor *processor;
535 ID3DX10DataLoader *loader;
536
537 if (FAILED((hr = D3DX10CreateAsyncMemoryLoader(src_data, src_data_size, &loader))))
538 return hr;
539 if (FAILED((hr = D3DX10CreateAsyncTextureInfoProcessor(img_info, &processor))))
540 {
542 return hr;
543 }
544 if (FAILED((hr = ID3DX10ThreadPump_AddWorkItem(pump, loader, processor, result, NULL))))
545 {
548 }
549 return hr;
550 }
551
552 hr = get_image_info(src_data, src_data_size, img_info);
553 if (result)
554 *result = hr;
555 return hr;
556}

Referenced by load_texture_data().

◆ D3DX10GetImageInfoFromResourceA()

HRESULT WINAPI D3DX10GetImageInfoFromResourceA ( HMODULE  module,
const char *  resource,
ID3DX10ThreadPump *  pump,
D3DX10_IMAGE_INFO *  info,
HRESULT *  result 
)

Definition at line 350 of file texture.c.

352{
353 void *buffer;
354 HRESULT hr;
355 DWORD size;
356
357 TRACE("module %p, resource %s, pump %p, info %p, result %p.\n",
359
360 if (pump)
361 {
362 ID3DX10DataProcessor *processor;
363 ID3DX10DataLoader *loader;
364
366 return hr;
368 {
370 return hr;
371 }
372 if (FAILED((hr = ID3DX10ThreadPump_AddWorkItem(pump, loader, processor, result, NULL))))
373 {
376 }
377 return hr;
378 }
379
381 return hr;
383 if (result)
384 *result = hr;
385 return hr;
386}

◆ D3DX10GetImageInfoFromResourceW()

HRESULT WINAPI D3DX10GetImageInfoFromResourceW ( HMODULE  module,
const WCHAR *  resource,
ID3DX10ThreadPump *  pump,
D3DX10_IMAGE_INFO *  info,
HRESULT *  result 
)

Definition at line 388 of file texture.c.

390{
391 void *buffer;
392 HRESULT hr;
393 DWORD size;
394
395 TRACE("module %p, resource %s, pump %p, info %p, result %p.\n",
397
398 if (pump)
399 {
400 ID3DX10DataProcessor *processor;
401 ID3DX10DataLoader *loader;
402
404 return hr;
406 {
408 return hr;
409 }
410 if (FAILED((hr = ID3DX10ThreadPump_AddWorkItem(pump, loader, processor, result, NULL))))
411 {
414 }
415 return hr;
416 }
417
419 return hr;
421 if (result)
422 *result = hr;
423 return hr;
424}

◆ D3DX10LoadTextureFromTexture()

HRESULT WINAPI D3DX10LoadTextureFromTexture ( ID3D10Resource *  src_texture,
D3DX10_TEXTURE_LOAD_INFO *  load_info,
ID3D10Resource *  dst_texture 
)

Definition at line 172 of file d3dx10_43_main.c.

174{
175 FIXME("src_texture %p, load_info %p, dst_texture %p stub!\n", src_texture, load_info, dst_texture);
176
177 return E_NOTIMPL;
178}