X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Ffilter.h;h=1144a2ca4b0c93efed7c826fca7a253f944de0d5;hb=913bb4e71f287ec7fc050ba5bcf12e3fae26ecfa;hp=5fbfd9c234e3a999bf04d7cbfa826241d49563bc;hpb=b249700e1da7dd6631a8b4440587f4093a2bdef1;p=dcpomatic.git diff --git a/src/lib/filter.h b/src/lib/filter.h index 5fbfd9c23..1144a2ca4 100644 --- a/src/lib/filter.h +++ b/src/lib/filter.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2012-2015 Carl Hetherington + Copyright (C) 2012-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -28,6 +28,7 @@ #define DCPOMATIC_FILTER_H +#include #include #include @@ -44,9 +45,6 @@ class Filter public: Filter (std::string i, std::string n, std::string c, std::string f); - Filter (Filter const&) = delete; - Filter& operator= (Filter const&) = delete; - /** @return our id */ std::string id () const { return _id; @@ -66,10 +64,10 @@ public: return _category; } - static std::vector all (); - static Filter const * from_id (std::string d); + static std::vector all (); + static boost::optional from_id(std::string d); static void setup_filters (); - static std::string ffmpeg_string (std::vector const & filters); + static std::string ffmpeg_string(std::vector const& filters); private: @@ -82,9 +80,14 @@ private: std::string _ffmpeg; /** all available filters */ - static std::vector _filters; + static std::vector _filters; static void maybe_add (std::string, std::string, std::string, std::string); }; +bool operator==(Filter const& a, Filter const& b); +bool operator!=(Filter const& a, Filter const& b); +bool operator<(Filter const& a, Filter const& b); + + #endif