aboutsummaryrefslogtreecommitdiffstats
path: root/src/native/d3d/D3dImageComponent.hpp
blob: 8226d30665b05fdd48c4e5f62770d877b2de4c10 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
/*
 * $RCSfile$
 *
 * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
 *
 * Use is subject to license terms.
 *
 * $Revision$
 * $Date$
 * $State$
 */

#if !defined(D3DIMAGECOMPONENT_H)
#define D3DIMAGECOMPONENT_H

#include "StdAfx.h"

class D3dImageComponent {
public:

    LPDIRECT3DTEXTURE9  surf;
    D3dCtx               *ctx;
    int                 hashCode;
    D3dImageComponent    *next;

    D3dImageComponent();

    D3dImageComponent(D3dCtx *ctx, int hashCode,
		      LPDIRECT3DTEXTURE9 surf);

    ~D3dImageComponent();

    VOID init();

    static D3dImageComponent* find(D3dImageComponent *list,
				   D3dCtx *ctx, int hashCode);

    static D3dImageComponent* add(D3dImageComponent *list,
				  D3dCtx *ctx, int hashCode,
				  LPDIRECT3DTEXTURE9 surf);

    static VOID remove(D3dImageComponent *list, D3dCtx *ctx, int hashCode);
    static VOID remove(D3dImageComponent *list, D3dCtx *ctx); 
    static VOID remove(D3dImageComponent *list, int hashCode); 
    static VOID remove(D3dImageComponent *list, D3dImageComponent *ic);
    static VOID removeAll(D3dImageComponent *list);
};

/*
 extern D3dImageComponent RasterList;
 extern D3dImageComponent BackgroundImageList;
*/
#endif