virgl: clean up virgl_res_needs_flush
[mesa.git] / src / gallium / include / pipe / p_video_enums.h
index ea25a25883db4dfa44b9a5936cddaee5caab051b..adbe7858d0f337820043a62bb5c5737bb331de69 100644 (file)
@@ -18,7 +18,7 @@
  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
- * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR
+ * IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR
  * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
  * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
  * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #ifndef PIPE_VIDEO_ENUMS_H
 #define PIPE_VIDEO_ENUMS_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+enum pipe_video_format
+{
+   PIPE_VIDEO_FORMAT_UNKNOWN = 0,
+   PIPE_VIDEO_FORMAT_MPEG12,   /**< MPEG1, MPEG2 */
+   PIPE_VIDEO_FORMAT_MPEG4,    /**< DIVX, XVID */
+   PIPE_VIDEO_FORMAT_VC1,      /**< WMV */
+   PIPE_VIDEO_FORMAT_MPEG4_AVC,/**< H.264 */
+   PIPE_VIDEO_FORMAT_HEVC,     /**< H.265 */
+   PIPE_VIDEO_FORMAT_JPEG,     /**< JPEG */
+   PIPE_VIDEO_FORMAT_VP9       /**< VP9 */
+};
+
 enum pipe_video_profile
 {
    PIPE_VIDEO_PROFILE_UNKNOWN,
@@ -40,8 +56,22 @@ enum pipe_video_profile
    PIPE_VIDEO_PROFILE_VC1_MAIN,
    PIPE_VIDEO_PROFILE_VC1_ADVANCED,
    PIPE_VIDEO_PROFILE_MPEG4_AVC_BASELINE,
+   PIPE_VIDEO_PROFILE_MPEG4_AVC_CONSTRAINED_BASELINE,
    PIPE_VIDEO_PROFILE_MPEG4_AVC_MAIN,
-   PIPE_VIDEO_PROFILE_MPEG4_AVC_HIGH
+   PIPE_VIDEO_PROFILE_MPEG4_AVC_EXTENDED,
+   PIPE_VIDEO_PROFILE_MPEG4_AVC_HIGH,
+   PIPE_VIDEO_PROFILE_MPEG4_AVC_HIGH10,
+   PIPE_VIDEO_PROFILE_MPEG4_AVC_HIGH422,
+   PIPE_VIDEO_PROFILE_MPEG4_AVC_HIGH444,
+   PIPE_VIDEO_PROFILE_HEVC_MAIN,
+   PIPE_VIDEO_PROFILE_HEVC_MAIN_10,
+   PIPE_VIDEO_PROFILE_HEVC_MAIN_STILL,
+   PIPE_VIDEO_PROFILE_HEVC_MAIN_12,
+   PIPE_VIDEO_PROFILE_HEVC_MAIN_444,
+   PIPE_VIDEO_PROFILE_JPEG_BASELINE,
+   PIPE_VIDEO_PROFILE_VP9_PROFILE0,
+   PIPE_VIDEO_PROFILE_VP9_PROFILE2,
+   PIPE_VIDEO_PROFILE_MAX
 };
 
 /* Video caps, can be different for each codec/profile */
@@ -51,16 +81,12 @@ enum pipe_video_cap
    PIPE_VIDEO_CAP_NPOT_TEXTURES = 1,
    PIPE_VIDEO_CAP_MAX_WIDTH = 2,
    PIPE_VIDEO_CAP_MAX_HEIGHT = 3,
-   PIPE_VIDEO_CAP_NUM_BUFFERS_DESIRED = 4
-};
-
-enum pipe_video_codec
-{
-   PIPE_VIDEO_CODEC_UNKNOWN = 0,
-   PIPE_VIDEO_CODEC_MPEG12,   /**< MPEG1, MPEG2 */
-   PIPE_VIDEO_CODEC_MPEG4,    /**< DIVX, XVID */
-   PIPE_VIDEO_CODEC_VC1,      /**< WMV */
-   PIPE_VIDEO_CODEC_MPEG4_AVC /**< H.264 */
+   PIPE_VIDEO_CAP_PREFERED_FORMAT = 4,
+   PIPE_VIDEO_CAP_PREFERS_INTERLACED = 5,
+   PIPE_VIDEO_CAP_SUPPORTS_PROGRESSIVE = 6,
+   PIPE_VIDEO_CAP_SUPPORTS_INTERLACED = 7,
+   PIPE_VIDEO_CAP_MAX_LEVEL = 8,
+   PIPE_VIDEO_CAP_STACKED_FRAMES = 9
 };
 
 enum pipe_video_entrypoint
@@ -68,8 +94,12 @@ enum pipe_video_entrypoint
    PIPE_VIDEO_ENTRYPOINT_UNKNOWN,
    PIPE_VIDEO_ENTRYPOINT_BITSTREAM,
    PIPE_VIDEO_ENTRYPOINT_IDCT,
-   PIPE_VIDEO_ENTRYPOINT_MC
+   PIPE_VIDEO_ENTRYPOINT_MC,
+   PIPE_VIDEO_ENTRYPOINT_ENCODE
 };
 
+#if defined(__cplusplus)
+}
+#endif
 
 #endif /* PIPE_VIDEO_ENUMS_H */