)]}'
{
  "commit": "ea146f7ef6886373d4d53e2cca5d939a4621a5cc",
  "tree": "a9deceae4b863b950fea2c74a0ae337f2fe5cb62",
  "parents": [
    "38514f1650b7abc78a98a692ab16a41784cf2fd8"
  ],
  "author": {
    "name": "Kaiyi Li",
    "email": "kaiyili@google.com",
    "time": "Wed Feb 03 12:52:23 2021 -0800"
  },
  "committer": {
    "name": "Kaiyi Li",
    "email": "kaiyili@google.com",
    "time": "Sat Feb 06 13:13:20 2021 -0800"
  },
  "message": "Native VK Swapchain: add DisplayVk to orchestrate the CompositorVk and SwapChainStateVk\n\nDisplayVk is used to connect the compositor, swapchain and gfxstream\nrenderer.\n\nSimilar to FrameBuffer, DisplayVk also has a two stage initialization,\nfirst initialized by the constructor, then use the bindToSurface with a\nVkSurfaceKHR to complete the initialization.\n\nTo draw a VkImage, first call importVkImage to specify an id to this\nimage. Then call post with this id to draw. When using with FrameBuffer,\nthe id is supposed to be the color buffer id. And post is supposed to be\ncalled in FrameBuffer::post() with the same id. DisplayVk::importVkImage\nand DisplayVk::releaseImport is supposed to track the lifetime of a\nVkImage backed ColorBuffer.\n\nIn DisplayVk::post, a transform to stretch the ColorBuffer to fill the\nentire window is used.\n\nDisplayVk::post waits until the command buffer finishes execution. To\nchange this function into an asynchronous function, add extra parameters\nto pass in sync objects, and signal those objects once the execution\ncompletes, but let the function returns once the command buffer is\nsubmitted.\n\nTest: DisplayVk_unittests\n\nChange-Id: I90c0e46947dfd3cd4c5c5c2c71ffbd987ca1c89d\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c4bbdf934ddb122e154495f9f75a3fab7527cd48",
      "old_mode": 33188,
      "old_path": "stream-servers/CMakeLists.txt",
      "new_id": "bf2b1be27c6785dc6310862b32f9bfb0d76c9fff",
      "new_mode": 33188,
      "new_path": "stream-servers/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "9880a4a170ea1b009d0b832fb8acec69e9c9f66b",
      "old_mode": 33188,
      "old_path": "stream-servers/CompositorVk.h",
      "new_id": "eac4eece0579b77a44216be92366a6b1460de0ba",
      "new_mode": 33188,
      "new_path": "stream-servers/CompositorVk.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8822e763db5ea7272358f208608e735cd4e979d5",
      "new_mode": 33188,
      "new_path": "stream-servers/DisplayVk.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0bb4f259b8c9078d2c3e10373695e5b2fbbb5a22",
      "new_mode": 33188,
      "new_path": "stream-servers/DisplayVk.h"
    },
    {
      "type": "modify",
      "old_id": "e6cc9055df16290d43d2837bf1c2c861d94d4a6d",
      "old_mode": 33188,
      "old_path": "stream-servers/SwapChainStateVk.h",
      "new_id": "8c2c2026224777c7962b6bf7e3a3d6556ac6036b",
      "new_mode": 33188,
      "new_path": "stream-servers/SwapChainStateVk.h"
    },
    {
      "type": "modify",
      "old_id": "ce9bb98c5e03e1ac3ec7bba00d2a169ca04f4eee",
      "old_mode": 33188,
      "old_path": "stream-servers/tests/CompositorVk_unittest.cpp",
      "new_id": "428207e85c7c66170b2f23d0c6be141d18dca426",
      "new_mode": 33188,
      "new_path": "stream-servers/tests/CompositorVk_unittest.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c5f2059a7420e4d7fff8ec5fe889cb7794e65d90",
      "new_mode": 33188,
      "new_path": "stream-servers/tests/DisplayVk_unittest.cpp"
    },
    {
      "type": "modify",
      "old_id": "433ddef19f1953db0b8059df99c229588342ec73",
      "old_mode": 33188,
      "old_path": "stream-servers/tests/VkTestUtils.h",
      "new_id": "a8dcb4a6bf3780c2e1e6572728b8eeb70f4d02a0",
      "new_mode": 33188,
      "new_path": "stream-servers/tests/VkTestUtils.h"
    }
  ]
}
