// Copyright (c) 2012 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. #include "chrome/browser/performance_monitor/event.h" namespace performance_monitor { Event::Event(const EventType& type, const base::Time& time, scoped_ptr data) : type_(type), time_(time), data_(data.release()) { } Event::~Event() { } scoped_ptr Event::FromValue(scoped_ptr data) { int type = 0; if (!data->GetInteger(std::string("type"), &type)) return scoped_ptr(); double time = 0.0; if (!data->GetDouble(std::string("time"), &time)) return scoped_ptr(); return scoped_ptr(new Event(static_cast(type), base::Time::FromInternalValue((int64)time), data.Pass())); } } // namespace performance_monitor