#include <string>
#include <vector>
-#include "base/files/file_path.h"
#include "base/lazy_instance.h"
#include "content/public/browser/tracing_controller.h"
namespace base {
class RefCountedString;
+class RefCountedMemory;
}
namespace content {
const base::debug::TraceOptions& trace_options,
const EnableRecordingDoneCallback& callback) OVERRIDE;
virtual bool DisableRecording(
- const base::FilePath& result_file_path,
- const TracingFileResultCallback& callback) OVERRIDE;
+ const scoped_refptr<TraceDataSink>& sink) OVERRIDE;
virtual bool EnableMonitoring(
const base::debug::CategoryFilter& category_filter,
const base::debug::TraceOptions& trace_options,
base::debug::CategoryFilter* out_category_filter,
base::debug::TraceOptions* out_trace_options) OVERRIDE;
virtual bool CaptureMonitoringSnapshot(
- const base::FilePath& result_file_path,
- const TracingFileResultCallback& callback) OVERRIDE;
+ const scoped_refptr<TraceDataSink>& sink) OVERRIDE;
virtual bool GetTraceBufferPercentFull(
const GetTraceBufferPercentFullCallback& callback) OVERRIDE;
virtual bool SetWatchEvent(const std::string& category_name,
private:
typedef std::set<scoped_refptr<TraceMessageFilter> > TraceMessageFilterSet;
- class ResultFile;
friend struct base::DefaultLazyInstanceTraits<TracingControllerImpl>;
friend class TraceMessageFilter;
}
bool can_disable_recording() const {
- return is_recording_ && !result_file_;
+ return is_recording_ && !trace_data_sink_.get();
}
bool can_enable_monitoring() const {
}
bool can_disable_monitoring() const {
- return is_monitoring_ && !monitoring_snapshot_file_;
+ return is_monitoring_ && !monitoring_data_sink_.get();
}
bool can_get_trace_buffer_percent_full() const {
void OnDisableRecordingAcked(
TraceMessageFilter* trace_message_filter,
const std::vector<std::string>& known_category_groups);
- void OnDisableRecordingComplete();
- void OnResultFileClosed();
#if defined(OS_CHROMEOS) || defined(OS_WIN)
void OnEndSystemTracingAcked(
void OnCaptureMonitoringSnapshotAcked(
TraceMessageFilter* trace_message_filter);
- void OnMonitoringSnapshotFileClosed();
void OnTraceBufferPercentFullReply(
TraceMessageFilter* trace_message_filter,
void OnEnableRecordingDone(const base::debug::CategoryFilter& category_filter,
const base::debug::TraceOptions& trace_options,
const EnableRecordingDoneCallback& callback);
- void OnDisableRecordingDone(const base::FilePath& result_file_path,
- const TracingFileResultCallback& callback);
+ void OnDisableRecordingDone();
void OnEnableMonitoringDone(
const base::debug::CategoryFilter& category_filter,
const base::debug::TraceOptions& trace_options,
base::debug::TraceOptions trace_options_;
GetCategoriesDoneCallback pending_get_categories_done_callback_;
- TracingFileResultCallback pending_disable_recording_done_callback_;
- TracingFileResultCallback pending_capture_monitoring_snapshot_done_callback_;
GetTraceBufferPercentFullCallback pending_trace_buffer_percent_full_callback_;
std::string watch_category_name_;
std::set<std::string> known_category_groups_;
std::set<TracingUI*> tracing_uis_;
- scoped_ptr<ResultFile> result_file_;
- scoped_ptr<ResultFile> monitoring_snapshot_file_;
+ scoped_refptr<TraceDataSink> trace_data_sink_;
+ scoped_refptr<TraceDataSink> monitoring_data_sink_;
DISALLOW_COPY_AND_ASSIGN(TracingControllerImpl);
};