gallium: Add UNSYNCHRONIZED cpu access flag. Document others.
This commit is contained in:
@@ -225,9 +225,10 @@ enum pipe_transfer_usage {
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
/*
|
||||
* Buffer usage flags
|
||||
*/
|
||||
|
||||
#define PIPE_BUFFER_USAGE_CPU_READ (1 << 0)
|
||||
#define PIPE_BUFFER_USAGE_CPU_WRITE (1 << 1)
|
||||
#define PIPE_BUFFER_USAGE_GPU_READ (1 << 2)
|
||||
@@ -236,9 +237,63 @@ enum pipe_transfer_usage {
|
||||
#define PIPE_BUFFER_USAGE_VERTEX (1 << 5)
|
||||
#define PIPE_BUFFER_USAGE_INDEX (1 << 6)
|
||||
#define PIPE_BUFFER_USAGE_CONSTANT (1 << 7)
|
||||
|
||||
/*
|
||||
* CPU access flags.
|
||||
*
|
||||
* These flags should only be used for texture transfers or when mapping
|
||||
* buffers.
|
||||
*
|
||||
* Note that the PIPE_BUFFER_USAGE_CPU_xxx flags above are also used for
|
||||
* mapping. Either PIPE_BUFFER_USAGE_CPU_READ or PIPE_BUFFER_USAGE_CPU_WRITE
|
||||
* must be set.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Discards the memory within the mapped region.
|
||||
*
|
||||
* It should not be used with PIPE_BUFFER_USAGE_CPU_READ.
|
||||
*
|
||||
* See also:
|
||||
* - OpenGL's ARB_map_buffer_range extension, MAP_INVALIDATE_RANGE_BIT flag.
|
||||
* - Direct3D's D3DLOCK_DISCARD flag.
|
||||
*/
|
||||
#define PIPE_BUFFER_USAGE_DISCARD (1 << 8)
|
||||
|
||||
/**
|
||||
* Fail if the resource cannot be mapped immediately.
|
||||
*
|
||||
* See also:
|
||||
* - Direct3D's D3DLOCK_DONOTWAIT flag.
|
||||
* - Mesa3D's MESA_MAP_NOWAIT_BIT flag.
|
||||
* - WDDM's D3DDDICB_LOCKFLAGS.DonotWait flag.
|
||||
*/
|
||||
#define PIPE_BUFFER_USAGE_DONTBLOCK (1 << 9)
|
||||
#define PIPE_BUFFER_USAGE_FLUSH_EXPLICIT (1 << 10) /**< See pipe_screen::buffer_flush_mapped_range */
|
||||
|
||||
/**
|
||||
* Do not attempt to synchronize pending operations on the resource when mapping.
|
||||
*
|
||||
* It should not be used with PIPE_BUFFER_USAGE_CPU_READ.
|
||||
*
|
||||
* See also:
|
||||
* - OpenGL's ARB_map_buffer_range extension, MAP_UNSYNCHRONIZED_BIT flag.
|
||||
* - Direct3D's D3DLOCK_NOOVERWRITE flag.
|
||||
* - WDDM's D3DDDICB_LOCKFLAGS.IgnoreSync flag.
|
||||
*/
|
||||
#define PIPE_BUFFER_USAGE_UNSYNCHRONIZED (1 << 10)
|
||||
|
||||
/**
|
||||
* Written ranges will be notified later with
|
||||
* pipe_screen::buffer_flush_mapped_range.
|
||||
*
|
||||
* It should not be used with PIPE_BUFFER_USAGE_CPU_READ.
|
||||
*
|
||||
* See also:
|
||||
* - pipe_screen::buffer_flush_mapped_range
|
||||
* - OpenGL's ARB_map_buffer_range extension, MAP_FLUSH_EXPLICIT_BIT flag.
|
||||
*/
|
||||
#define PIPE_BUFFER_USAGE_FLUSH_EXPLICIT (1 << 11)
|
||||
|
||||
/** Pipe driver custom usage flags should be greater or equal to this value */
|
||||
#define PIPE_BUFFER_USAGE_CUSTOM (1 << 16)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user