)]}'
{
  "commit": "269dc4d22ad689f96864039d009e336dab2842e6",
  "tree": "87b46fefa6181d6f577a500c2c00ad8d21d2d6b7",
  "parents": [
    "9c87defdde0d2016f8a8daebccfa31879e872306"
  ],
  "author": {
    "name": "Dan Stoza",
    "email": "stoza@google.com",
    "time": "Fri Jan 15 15:07:43 2021 -0800"
  },
  "committer": {
    "name": "Ady Abraham",
    "email": "adyabr@google.com",
    "time": "Wed Feb 24 11:32:41 2021 -0800"
  },
  "message": "SF: Add initial Planner infrastructure\n\nAdds infrastructure for the SF Planner, which will support layer\ncaching/flattening and composition strategy prediction.\n\nBug: 158790260\nTest: atest libcompositionengine_test libsurfaceflinger_unittest\nChange-Id: I0d3027cea073fe25f269f3d5e83fe621dfbe7b2b\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "072dd18cec672c006291723bf77c1e3fd16327ee",
      "old_mode": 33188,
      "old_path": "include/input/Flags.h",
      "new_id": "b12a9ed2c52a0d3b8ed38f639547e2e2bcb21098",
      "new_mode": 33188,
      "new_path": "include/input/Flags.h"
    },
    {
      "type": "modify",
      "old_id": "50bc5edfc6974c85404d407a985e8de8cdcb2cfc",
      "old_mode": 33188,
      "old_path": "services/surfaceflinger/CompositionEngine/Android.bp",
      "new_id": "ade82f688f7ec95a40e7ec288937d3c77ba7d4db",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/CompositionEngine/Android.bp"
    },
    {
      "type": "modify",
      "old_id": "018a6875bd87342162068ec7599ce4a2ab226cf7",
      "old_mode": 33188,
      "old_path": "services/surfaceflinger/CompositionEngine/include/compositionengine/LayerFE.h",
      "new_id": "1fd07b01f47e7a5691de5459079c13696cd15f5a",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/CompositionEngine/include/compositionengine/LayerFE.h"
    },
    {
      "type": "modify",
      "old_id": "3be1cc42657aac4aa8bca568edf0d896cf085a99",
      "old_mode": 33188,
      "old_path": "services/surfaceflinger/CompositionEngine/include/compositionengine/Output.h",
      "new_id": "a8ecb6216386c07f91183e98860ce4e5b7af34c3",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/CompositionEngine/include/compositionengine/Output.h"
    },
    {
      "type": "modify",
      "old_id": "651230c475adddd4c0cf3d0babcc220769ed649e",
      "old_mode": 33188,
      "old_path": "services/surfaceflinger/CompositionEngine/include/compositionengine/impl/Output.h",
      "new_id": "ae35fb0489c457e64401b6f0bba873e63f335a3c",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/CompositionEngine/include/compositionengine/impl/Output.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d19ac62797a4416bee1626c94b515520ea678f17",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/CompositionEngine/include/compositionengine/impl/planner/LayerState.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "53eca01aa400823366dd64ee3ef5d6b08626e75f",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/CompositionEngine/include/compositionengine/impl/planner/Planner.h"
    },
    {
      "type": "modify",
      "old_id": "45891a7ff6df61e491b82a9cac10b70704401803",
      "old_mode": 33188,
      "old_path": "services/surfaceflinger/CompositionEngine/include/compositionengine/mock/LayerFE.h",
      "new_id": "dde8999524565ed74b4a0c74b64be002c0b9bd85",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/CompositionEngine/include/compositionengine/mock/LayerFE.h"
    },
    {
      "type": "modify",
      "old_id": "95db4da5b39149e282e18995553e30382a40c455",
      "old_mode": 33188,
      "old_path": "services/surfaceflinger/CompositionEngine/include/compositionengine/mock/Output.h",
      "new_id": "92991996d976181c693dd628ba4e6e39c0f3c7e5",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/CompositionEngine/include/compositionengine/mock/Output.h"
    },
    {
      "type": "modify",
      "old_id": "3907ac53592e2db1be339edf3c480c54867524d7",
      "old_mode": 33188,
      "old_path": "services/surfaceflinger/CompositionEngine/src/Output.cpp",
      "new_id": "709d7c9f481e484676834aef248940d932bf2a36",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/CompositionEngine/src/Output.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7cf48196e8f4d2d03ce24a6df3908fefa34c7451",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/CompositionEngine/src/planner/LayerState.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "30f48922b658bd20ec0953dbeff8fe40a298c77b",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/CompositionEngine/src/planner/Planner.cpp"
    },
    {
      "type": "modify",
      "old_id": "c4ae3a7f22f5368710696b95fa48d6e935ec93dc",
      "old_mode": 33188,
      "old_path": "services/surfaceflinger/CompositionEngine/tests/OutputTest.cpp",
      "new_id": "f654c2fd07e2391e41a5943dedd299a9ebc90188",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/CompositionEngine/tests/OutputTest.cpp"
    },
    {
      "type": "modify",
      "old_id": "14bb5b71ac71df16ec3e12d8f7b87d077eaa81a6",
      "old_mode": 33188,
      "old_path": "services/surfaceflinger/Layer.h",
      "new_id": "eb760b9915328872b0575b6ae509a38ac926297f",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/Layer.h"
    },
    {
      "type": "modify",
      "old_id": "7e4191544451ae6679f8460eb0ae5220f44738da",
      "old_mode": 33188,
      "old_path": "services/surfaceflinger/SurfaceFlinger.cpp",
      "new_id": "e09abcfb4e338a74db4ae93767cc26c0d6249754",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/SurfaceFlinger.cpp"
    },
    {
      "type": "modify",
      "old_id": "1cb16306a7baa2d17691ffc99ba69ae3257730b2",
      "old_mode": 33188,
      "old_path": "services/surfaceflinger/SurfaceFlinger.h",
      "new_id": "3953a9c2ecce04a15caf88106a3ef1a7cd0541d7",
      "new_mode": 33188,
      "new_path": "services/surfaceflinger/SurfaceFlinger.h"
    }
  ]
}
