blob: a10816fffb2efdb216fef01686cdd16b7bfe2240 [file] [log] [blame]
# Copyright 2018 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""An adapter to remotely access the DUT graphics facade."""
class GraphicsFacadeRemoteAdapter(object):
"""GraphicsFacadeRemoteAdapter remotely monitors graphics hangs."""
def __init__(self, remote_facade_proxy):
"""Construct a GraphicsFacadeRemoteAdapter.
@param remote_facade_proxy: RemoteFacadeProxy object.
"""
self._proxy = remote_facade_proxy
@property
def _graphics_proxy(self):
"""Gets the proxy to DUT USB facade.
@return XML RPC proxy to DUT graphics facade.
"""
return self._proxy.graphics
def graphics_state_checker_initialize(self):
"""Create and initialize the graphics state checker object.
This will establish existing errors and take a snapshot of graphics
kernel memory.
"""
self._graphics_proxy.graphics_state_checker_initialize()
def graphics_state_checker_finalize(self):
"""Throw an error on new GPU hang messages in system logs."""
self._graphics_proxy.graphics_state_checker_finalize()