| // Copyright 2014 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. | 
 |  | 
 | #ifndef SERVICES_TRACING_TRACE_DATA_SINK_H_ | 
 | #define SERVICES_TRACING_TRACE_DATA_SINK_H_ | 
 |  | 
 | #include <string> | 
 |  | 
 | #include "base/basictypes.h" | 
 | #include "mojo/public/cpp/system/data_pipe.h" | 
 |  | 
 | namespace tracing { | 
 |  | 
 | class TraceDataSink { | 
 |  public: | 
 |   explicit TraceDataSink(mojo::ScopedDataPipeProducerHandle pipe); | 
 |   ~TraceDataSink(); | 
 |  | 
 |   void AddChunk(const std::string& json); | 
 |   void Flush(); | 
 |  | 
 |  private: | 
 |   mojo::ScopedDataPipeProducerHandle pipe_; | 
 |   bool empty_; | 
 |  | 
 |   DISALLOW_COPY_AND_ASSIGN(TraceDataSink); | 
 | }; | 
 |  | 
 | }  // namespace tracing | 
 |  | 
 | #endif  // SERVICES_TRACING_TRACE_DATA_SINK_H_ |