1f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)# Copyright 2014 The Chromium Authors. All rights reserved.
2eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch# Use of this source code is governed by a BSD-style license that can be
3eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch# found in the LICENSE file.
4eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
5f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)import telemetry.timeline.event as timeline_event
6eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
76e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)
8eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdochclass Sample(timeline_event.TimelineEvent):
9eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  ''' A Sample represents a sample taken at an instant in time
10eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  plus parameters associated with that sample.
11eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
12eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  NOTE: The Sample class implements the same interface as
13eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  Slice. These must be kept in sync.
14eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
15eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  All time units are stored in milliseconds.
16eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  '''
17a3f7b4e666c476898878fa745f637129375cd889Ben Murdoch  def __init__(self, parent_thread, category, name, timestamp, args=None):
18eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch    super(Sample, self).__init__(
19a3f7b4e666c476898878fa745f637129375cd889Ben Murdoch        category, name, timestamp, 0, args=args)
20a3f7b4e666c476898878fa745f637129375cd889Ben Murdoch    self.parent_thread = parent_thread
21