summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers
diff options
context:
space:
mode:
authorJosé Fonseca <[email protected]>2010-02-15 00:22:59 +0000
committerJosé Fonseca <[email protected]>2010-02-15 00:22:59 +0000
commite918519fe916da727eb051367f57b26dbd9ec870 (patch)
treeea78f6e54e5df8a3e319d960eb6699d02fa90a02 /src/gallium/state_trackers
parentdcdf94c87c087186f963b6e201b2989c61a76ef0 (diff)
python: Reconstruct blend state objects from binary blobs.
Diffstat (limited to 'src/gallium/state_trackers')
-rw-r--r--src/gallium/state_trackers/python/p_state.i17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/python/p_state.i b/src/gallium/state_trackers/python/p_state.i
index b80e46bd0df..5afe4d49082 100644
--- a/src/gallium/state_trackers/python/p_state.i
+++ b/src/gallium/state_trackers/python/p_state.i
@@ -60,6 +60,23 @@
%extend pipe_blend_state
{
+ pipe_blend_state(void)
+ {
+ return CALLOC_STRUCT(pipe_blend_state);
+ }
+
+ %cstring_input_binary(const char *STRING, unsigned LENGTH);
+ pipe_blend_state(const char *STRING, unsigned LENGTH)
+ {
+ struct pipe_blend_state *state;
+ state = CALLOC_STRUCT(pipe_framebuffer_state);
+ if (state) {
+ LENGTH = MIN2(sizeof *state, LENGTH);
+ memcpy(state, STRING, LENGTH);
+ }
+ return state;
+ }
+
%cstring_output_allocate_size(char **STRING, int *LENGTH, os_free(*$1));
void __str__(char **STRING, int *LENGTH)
{