From affaca1e5bc1c4dfdd7f2bd0f0dbbd9ec825b157 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Wed, 22 May 2024 23:04:40 +0200 Subject: Add a Context class to manage some state. --- src/ssa_reader.h | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'src/ssa_reader.h') 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 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 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 ()> get_line); -- cgit v1.2.3