It seems likely that SSA font sizes should be interpreted as
[libsub.git] / src / reader.h
index e5f142f94973472f220f5ca036aeac4e5a0ace83..aab73840ab09c0c0cae1e4d7469a956f852a2cc7 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2014 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2014-2021 Carl Hetherington <cth@carlh.net>
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
 
 */
 
-#include "subtitle.h"
-#include <list>
+#ifndef LIBSUB_READER_H
+#define LIBSUB_READER_H
+
+#include "raw_subtitle.h"
+#include <map>
+#include <string>
+#include <vector>
+
+struct subrip_reader_convert_line_test;
 
 namespace sub {
 
+/** @class Reader
+ *  @brief Parent for classes which can read particular subtitle formats.
+ */
 class Reader
 {
 public:
-       std::list<Subtitle> subtitles () const {
+       virtual ~Reader () {}
+
+       std::vector<RawSubtitle> subtitles () const {
                return _subs;
        }
 
+       virtual std::map<std::string, std::string> metadata () const {
+               return std::map<std::string, std::string> ();
+       }
+
 protected:
+       friend struct ::subrip_reader_convert_line_test;
+
        void warn (std::string) const;
 
-       std::list<Subtitle> _subs;
+       std::vector<RawSubtitle> _subs;
 };
 
 }
+
+#endif