| // 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 VTTREADER_H_ // NOLINT | |
| #define VTTREADER_H_ | |
| #include <cstdio> | |
| #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 // VTTREADER_H_ // NOLINT |