1/* Copyright 2017 The TensorFlow Authors. All Rights Reserved.
2
3Licensed under the Apache License, Version 2.0 (the "License");
4you may not use this file except in compliance with the License.
5You may obtain a copy of the License at
6
7 http://www.apache.org/licenses/LICENSE-2.0
8
9Unless required by applicable law or agreed to in writing, software
10distributed under the License is distributed on an "AS IS" BASIS,
11WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12See the License for the specific language governing permissions and
13limitations under the License.
14==============================================================================*/
15#ifndef TENSORFLOW_CORE_SUMMARY_SUMMARY_FILE_WRITER_H_
16#define TENSORFLOW_CORE_SUMMARY_SUMMARY_FILE_WRITER_H_
17
18#include "tensorflow/core/kernels/summary_interface.h"
19#include "tensorflow/core/lib/core/status.h"
20#include "tensorflow/core/platform/env.h"
21#include "tensorflow/core/platform/types.h"
22
23namespace tensorflow {
24
25/// \brief Creates SummaryWriterInterface which writes to a file.
26///
27/// The file is an append-only records file of tf.Event protos. That
28/// makes this summary writer suitable for file systems like GCS.
29///
30/// It will enqueue up to max_queue summaries, and flush at least every
31/// flush_millis milliseconds. The summaries will be written to the
32/// directory specified by logdir and with the filename suffixed by
33/// filename_suffix. The caller owns a reference to result if the
34/// returned status is ok. The Env object must not be destroyed until
35/// after the returned writer.
36Status CreateSummaryFileWriter(int max_queue, int flush_millis,
37 const string& logdir,
38 const string& filename_suffix, Env* env,
39 SummaryWriterInterface** result);
40
41} // namespace tensorflow
42
43#endif // TENSORFLOW_CORE_SUMMARY_SUMMARY_FILE_WRITER_H_
44