# 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()