Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
4358 Serge 1
 
2
#define __NVC0_STATEOBJ_H__
3
4
 
5
6
 
7
   (so)->state[(so)->size++] = NVC0_FIFO_PKHDR_SQ(NVC0_3D(m), s)
8
9
 
10
   (so)->state[(so)->size++] = NVC0_FIFO_PKHDR_IL(NVC0_3D(m), d)
11
12
 
13
14
 
15
16
 
17
   struct pipe_blend_state pipe;
18
   int size;
19
   uint32_t state[72];
20
};
21
22
 
23
   struct pipe_rasterizer_state pipe;
24
   int size;
25
   uint32_t state[43];
26
};
27
28
 
29
   struct pipe_depth_stencil_alpha_state pipe;
30
   int size;
31
   uint32_t state[26];
32
};
33
34
 
35
   union {
36
      struct pipe_resource *buf;
37
      const void *data;
38
   } u;
39
   uint32_t size;
40
   uint32_t offset;
41
   boolean user; /* should only be TRUE if u.data is valid and non-NULL */
42
};
43
44
 
45
   struct pipe_vertex_element pipe;
46
   uint32_t state;
47
   uint32_t state_alt; /* buffer 0 and with source offset (for translate) */
48
};
49
50
 
51
   uint32_t min_instance_div[PIPE_MAX_ATTRIBS];
52
   uint16_t vb_access_size[PIPE_MAX_ATTRIBS];
53
   struct translate *translate;
54
   unsigned num_elements;
55
   uint32_t instance_elts;
56
   uint32_t instance_bufs;
57
   boolean shared_slots;
58
   boolean need_conversion; /* e.g. VFETCH cannot convert f64 to f32 */
59
   unsigned size; /* size of vertex in bytes (when packed) */
60
   struct nvc0_vertex_element element[0];
61
};
62
63
 
64
   struct pipe_stream_output_target pipe;
65
   struct pipe_query *pq;
66
   unsigned stride;
67
   boolean clean;
68
};
69
70
 
71
nvc0_so_target(struct pipe_stream_output_target *ptarg)
72
{
73
   return (struct nvc0_so_target *)ptarg;
74
}
75
76
 
77