summaryrefslogtreecommitdiff
path: root/src/ssa_reader.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/ssa_reader.h')
-rw-r--r--src/ssa_reader.h18
1 files changed, 16 insertions, 2 deletions
diff --git a/src/ssa_reader.h b/src/ssa_reader.h
index d47d8cb..5de660c 100644
--- a/src/ssa_reader.h
+++ b/src/ssa_reader.h
@@ -41,8 +41,22 @@ public:
SSAReader (FILE* f);
SSAReader (std::string subs);
- static std::vector<RawSubtitle> parse_line(RawSubtitle base, std::string line, int play_res_x, int play_res_y, Colour primary_colour);
- static void parse_tag(RawSubtitle& sub, std::string style, int play_res_x, int play_res_y, Colour primary_colour);
+ class Context
+ {
+ public:
+ Context(int play_res_x_, int play_res_y_, Colour primary_colour_)
+ : play_res_x(play_res_x_)
+ , play_res_y(play_res_y_)
+ , primary_colour(primary_colour_)
+ {}
+
+ int play_res_x;
+ int play_res_y;
+ Colour primary_colour;
+ };
+
+ static std::vector<RawSubtitle> parse_line(RawSubtitle base, std::string line, Context const& context);
+ static void parse_tag(RawSubtitle& sub, std::string style, Context const& context);
private:
void read (boost::function<boost::optional<std::string> ()> get_line);