Changeset 50957 in vbox for trunk/include
- Timestamp:
- Apr 2, 2014 8:26:07 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/VBoxVideo.h
r50928 r50957 1570 1570 /* blit command that does blitting of allocations identified by VRAM offset or host id 1571 1571 * for VRAM-offset ones the size and format are same as primary */ 1572 #define VBOXCMDVBVA_OPTYPE_BLT _OFFPRIMSZFMT_OR_ID21572 #define VBOXCMDVBVA_OPTYPE_BLT 2 1573 1573 /* flip */ 1574 1574 #define VBOXCMDVBVA_OPTYPE_FLIP 3 … … 1587 1587 #define VBOXCMDVBVA_OPTYPE_NOP 0x80 1588 1588 1589 /* u8Flags flags */ 1590 /* source allocation is specified with the host id. if not set - source allocation is specified with VRAM offset */ 1591 #define VBOXCMDVBVA_OPF_ALLOC_SRCID 0x80 1592 /* destination allocation is specified with the host id. if not set - destination allocation is specified with VRAM offset */ 1593 #define VBOXCMDVBVA_OPF_ALLOC_DSTID 0x40 1594 1595 /* transfer from RAM to Allocation */ 1596 #define VBOXCMDVBVA_OPF_PAGING_TRANSFER_IN 0x20 1597 1598 /* VBOXCMDVBVA_OPTYPE_BLT_PRIMARY specific flags*/ 1599 /* if set - src is a primary id */ 1600 #define VBOXCMDVBVA_OPF_ALLOC_SRCPRIMARY 0x20 1601 /* if set - dst is a primary id */ 1602 #define VBOXCMDVBVA_OPF_ALLOC_DSTPRIMARY 0x10 1603 1589 ///* u8Flags flags */ 1590 ///* source allocation is specified with the host id. if not set - source allocation is specified with VRAM offset */ 1591 //#define VBOXCMDVBVA_OPF_ALLOC_SRCID 0x80 1592 ///* destination allocation is specified with the host id. if not set - destination allocation is specified with VRAM offset */ 1593 //#define VBOXCMDVBVA_OPF_ALLOC_DSTID 0x40 1594 // 1595 ///* transfer from RAM to Allocation */ 1596 #define VBOXCMDVBVA_OPF_PAGING_TRANSFER_IN 0x80 1597 // 1598 ///* VBOXCMDVBVA_OPTYPE_BLT_PRIMARY specific flags*/ 1599 ///* if set - src is a primary id */ 1600 //#define VBOXCMDVBVA_OPF_ALLOC_SRCPRIMARY 0x20 1601 ///* if set - dst is a primary id */ 1602 //#define VBOXCMDVBVA_OPF_ALLOC_DSTPRIMARY 0x10 1603 1604 #define VBOXCMDVBVA_OPF_BLT_TYPE_PRIMARY 0 1605 #define VBOXCMDVBVA_OPF_BLT_TYPE_PRIMARY_GENERIC_A8R8G8B8 1 1606 #define VBOXCMDVBVA_OPF_BLT_TYPE_OFFPRIMSZFMT_OR_ID 2 1607 #define VBOXCMDVBVA_OPF_BLT_TYPE_GENERIC_A8R8G8B8 3 1608 #define VBOXCMDVBVA_OPF_BLT_TYPE_PRIMARY_PRIMARY 4 1609 1610 #define VBOXCMDVBVA_OPF_BLT_TYPE_MASK 7 1611 /* blit direction is from first operand to second */ 1612 #define VBOXCMDVBVA_OPF_BLT_DIR_IN_2 0x10 1613 /* operand 1 contains host id */ 1614 #define VBOXCMDVBVA_OPF_OPERAND1_ISID 0x20 1615 /* operand 2 contains host id */ 1616 #define VBOXCMDVBVA_OPF_OPERAND2_ISID 0x40 1604 1617 1605 1618 /* trying to make the header as small as possible, … … 1612 1625 /* command-specific 1613 1626 * VBOXCMDVBVA_OPTYPE_CRCMD - must be null 1614 * VBOXCMDVBVA_OPTYPE_BLT_PRIMARY - OR-ed VBOXCMDVBVA_OPF_ALLOC_XXX flags 1615 * VBOXCMDVBVA_OPTYPE_BLT_OFFPRIMSZFMT_OR_ID - OR-ed VBOXCMDVBVA_OPF_ALLOC_XXX flags 1627 * VBOXCMDVBVA_OPTYPE_BLT - OR-ed VBOXCMDVBVA_OPF_ALLOC_XXX flags 1616 1628 * VBOXCMDVBVA_OPTYPE_PAGING_TRANSFER - must be null 1617 1629 * VBOXCMDVBVA_OPTYPE_PAGING_FILL - must be null … … 1662 1674 } VBOXCMDVBVA_ALLOCINFO; 1663 1675 1676 typedef struct VBOXCMDVBVA_ALLOCDESC 1677 { 1678 VBOXCMDVBVA_ALLOCINFO Info; 1679 uint16_t width; 1680 uint16_t height; 1681 } VBOXCMDVBVA_ALLOCDESC; 1682 1664 1683 typedef struct VBOXCMDVBVA_RECT 1665 1684 { … … 1677 1696 } VBOXCMDVBVA_POINT; 1678 1697 1698 typedef struct VBOXCMDVBVA_BLT_HDR 1699 { 1700 VBOXCMDVBVA_HDR Hdr; 1701 VBOXCMDVBVA_POINT Pos; 1702 } VBOXCMDVBVA_BLT_HDR; 1703 1679 1704 typedef struct VBOXCMDVBVA_BLT_PRIMARY 1680 1705 { 1681 VBOXCMDVBVA_ HDR Hdr;1706 VBOXCMDVBVA_BLT_HDR Hdr; 1682 1707 VBOXCMDVBVA_ALLOCINFO alloc; 1683 VBOXCMDVBVA_POINT Pos;1684 1708 /* the rects count is determined from the command size */ 1685 1709 VBOXCMDVBVA_RECT aRects[1]; 1686 1710 } VBOXCMDVBVA_BLT_PRIMARY; 1687 1711 1712 typedef struct VBOXCMDVBVA_BLT_PRIMARY_GENERIC_A8R8G8B8 1713 { 1714 VBOXCMDVBVA_BLT_HDR Hdr; 1715 VBOXCMDVBVA_ALLOCDESC alloc; 1716 /* the rects count is determined from the command size */ 1717 VBOXCMDVBVA_RECT aRects[1]; 1718 } VBOXCMDVBVA_BLT_PRIMARY_GENERIC_A8R8G8B8; 1719 1688 1720 typedef struct VBOXCMDVBVA_BLT_OFFPRIMSZFMT_OR_ID 1689 1721 { 1690 VBOXCMDVBVA_HDR Hdr; 1691 VBOXCMDVBVA_ALLOCINFO src; 1692 VBOXCMDVBVA_ALLOCINFO dst; 1693 VBOXCMDVBVA_POINT Pos; 1722 VBOXCMDVBVA_BLT_HDR Hdr; 1723 VBOXCMDVBVA_ALLOCINFO alloc; 1724 uint32_t id; 1694 1725 /* the rects count is determined from the command size */ 1695 1726 VBOXCMDVBVA_RECT aRects[1]; 1696 1727 } VBOXCMDVBVA_BLT_OFFPRIMSZFMT_OR_ID; 1728 1729 typedef struct VBOXCMDVBVA_BLT_GENERIC_A8R8G8B8 1730 { 1731 VBOXCMDVBVA_BLT_HDR Hdr; 1732 VBOXCMDVBVA_ALLOCDESC alloc1; 1733 VBOXCMDVBVA_ALLOCDESC alloc2; 1734 /* the rects count is determined from the command size */ 1735 VBOXCMDVBVA_RECT aRects[1]; 1736 } VBOXCMDVBVA_BLT_GENERIC_A8R8G8B8; 1737 1738 #define VBOXCMDVBVA_SIZEOF_BLTSTRUCT_MAX (sizeof (VBOXCMDVBVA_BLT_GENERIC_A8R8G8B8)) 1697 1739 1698 1740 typedef struct VBOXCMDVBVA_FLIP
Note:
See TracChangeset
for help on using the changeset viewer.