summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300/r300_state_inlines.h
diff options
context:
space:
mode:
authorCorbin Simpson <MostAwesomeDude@gmail.com>2009-03-07 00:42:12 -0800
committerCorbin Simpson <MostAwesomeDude@gmail.com>2009-03-07 00:42:12 -0800
commitdcd7f1c0551812cf39ca6a3af9f1610ad84fb24e (patch)
treef62f7e1d77c706ba21e25c02a4d93add223f108c /src/gallium/drivers/r300/r300_state_inlines.h
parent67f2c6054c7303547c790f283ab3d124ac60a276 (diff)
r300-gallium: A bit more vertex format fixup.
Diffstat (limited to 'src/gallium/drivers/r300/r300_state_inlines.h')
-rw-r--r--src/gallium/drivers/r300/r300_state_inlines.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/gallium/drivers/r300/r300_state_inlines.h b/src/gallium/drivers/r300/r300_state_inlines.h
index 630ac3b2fc..8d8b74dfc1 100644
--- a/src/gallium/drivers/r300/r300_state_inlines.h
+++ b/src/gallium/drivers/r300/r300_state_inlines.h
@@ -344,4 +344,32 @@ static INLINE uint32_t r300_translate_gb_pipes(int pipe_count)
return 0;
}
+static uint32_t translate_vertex_data_type(int type) {
+ switch (type) {
+ case EMIT_1F:
+ case EMIT_1F_PSIZE:
+ return R300_DATA_TYPE_FLOAT_1 | R300_SIGNED;
+ break;
+ case EMIT_2F:
+ return R300_DATA_TYPE_FLOAT_2 | R300_SIGNED;
+ break;
+ case EMIT_3F:
+ return R300_DATA_TYPE_FLOAT_3 | R300_SIGNED;
+ break;
+ case EMIT_4F:
+ return R300_DATA_TYPE_FLOAT_4 | R300_SIGNED;
+ break;
+ case EMIT_4UB:
+ return R300_DATA_TYPE_BYTE;
+ break;
+ default:
+ debug_printf("r300: Implementation error: "
+ "Bad vertex data type!\n");
+ assert(0);
+ break;
+ }
+
+ return 0;
+}
+
#endif /* R300_STATE_INLINES_H */