| Index: tools/telemetry/telemetry/core/system_info.py
|
| diff --git a/tools/telemetry/telemetry/core/system_info.py b/tools/telemetry/telemetry/core/system_info.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..443c6be4ddce7a6f1217d8a72e4a19b7823b7eef
|
| --- /dev/null
|
| +++ b/tools/telemetry/telemetry/core/system_info.py
|
| @@ -0,0 +1,40 @@
|
| +# Copyright (c) 2013 The Chromium Authors. All rights reserved.
|
| +# Use of this source code is governed by a BSD-style license that can be
|
| +# found in the LICENSE file.
|
| +from telemetry.core import gpu_info
|
| +
|
| +class SystemInfo(object):
|
| + """Provides low-level system information."""
|
| +
|
| + def __init__(self, model_name, gpu_dict):
|
| + if (model_name == None) or (gpu_dict == None):
|
| + raise Exception("Missing model_name or gpu_dict argument")
|
| + self._model_name = model_name
|
| + self._gpu = gpu_info.GPUInfo.FromDict(gpu_dict)
|
| +
|
| + @classmethod
|
| + def FromDict(cls, attrs):
|
| + """Constructs a SystemInfo from a dictionary of attributes.
|
| + Attributes currently required to be present in the dictionary:
|
| +
|
| + model_name (string): a platform-dependent string
|
| + describing the model of machine, or the empty string if not
|
| + supported.
|
| + gpu (object containing GPUInfo's required attributes)
|
| + """
|
| + return cls(attrs["model_name"], attrs["gpu"])
|
| +
|
| + @property
|
| + def model_name(self):
|
| + """A string describing the machine model.
|
| +
|
| + This is a highly platform-dependent value and not currently
|
| + specified for any machine type aside from Macs. On Mac OS, this
|
| + is the model identifier, reformatted slightly; for example,
|
| + 'MacBookPro 10.1'."""
|
| + return self._model_name
|
| +
|
| + @property
|
| + def gpu(self):
|
| + """A GPUInfo object describing the graphics processor(s) on the system."""
|
| + return self._gpu
|
|
|