// Copyright (c) 2012 The WebM project authors. All Rights Reserved. // // Use of this source code is governed by a BSD-style license // that can be found in the LICENSE file in the root of the source // tree. An additional intellectual property rights grant can be found // in the file PATENTS. All contributing project authors may // be found in the AUTHORS file in the root of the source tree. #ifndef WEBVTT_VTTREADER_H_ #define WEBVTT_VTTREADER_H_ #include #include "./webvttparser.h" namespace libwebvtt { class VttReader : public libwebvtt::Reader { public: VttReader(); virtual ~VttReader(); // Open the file identified by |filename| in read-only mode, as a // binary stream of bytes. Returns 0 on success, negative if error. int Open(const char* filename); // Closes the file stream. Note that the stream is automatically // closed when the VttReader object is destroyed. void Close(); // Reads the next character in the file stream, as per the semantics // of Reader::GetChar. Returns negative if error, 0 on success, and // positive if end-of-stream has been reached. virtual int GetChar(char* c); private: FILE* file_; VttReader(const VttReader&); VttReader& operator=(const VttReader&); }; } // namespace libwebvtt #endif // WEBVTT_VTTREADER_H_