X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Ftypes.h;h=0f05d889f07db6a406c17a2208de683f7221c27e;hb=f0a6d7b5b8d16b8b47917cd30b340917f5c62fc5;hp=46881a608231c5a5b12d1e8ed8f92e54a8fee70d;hpb=43515be4f21d92d66f28588bcd0dc93ee517d301;p=libdcp.git diff --git a/src/types.h b/src/types.h index 46881a60..0f05d889 100644 --- a/src/types.h +++ b/src/types.h @@ -49,7 +49,7 @@ struct Size float ratio () const { return float (width) / height; } - + int width; int height; }; @@ -114,6 +114,18 @@ enum VAlign extern std::string valign_to_string (VAlign a); extern VAlign string_to_valign (std::string s); +/** Direction for subtitle test */ +enum Direction +{ + DIRECTION_LTR, ///< left-to-right + DIRECTION_RTL, ///< right-to-left + DIRECTION_TTB, ///< top-to-bottom + DIRECTION_BTT ///< bottom-to-top +}; + +extern std::string direction_to_string (Direction a); +extern Direction string_to_direction (std::string s); + enum Eye { EYE_LEFT, @@ -147,7 +159,7 @@ public: extern bool operator== (Fraction const & a, Fraction const & b); extern bool operator!= (Fraction const & a, Fraction const & b); -extern std::ostream& operator<< (std::ostream& s, Fraction const & f); +extern std::ostream& operator<< (std::ostream& s, Fraction const & f); /** @struct EqualityOptions * @brief A class to describe what "equality" means for a particular test. @@ -158,13 +170,15 @@ extern std::ostream& operator<< (std::ostream& s, Fraction const & f); struct EqualityOptions { /** Construct an EqualityOptions where nothing at all can differ */ - EqualityOptions () + EqualityOptions () : max_mean_pixel_error (0) , max_std_dev_pixel_error (0) , max_audio_sample_error (0) , cpl_annotation_texts_can_differ (false) , reel_annotation_texts_can_differ (false) , reel_hashes_can_differ (false) + , issue_dates_can_differ (false) + , keep_going (false) {} /** The maximum allowable mean difference in pixel value between two images */ @@ -173,12 +187,15 @@ struct EqualityOptions double max_std_dev_pixel_error; /** The maximum difference in audio sample value between two soundtracks */ int max_audio_sample_error; - /** true if the nodes of CPLs are allowed to differ */ + /** true if the <AnnotationText> nodes of CPLs are allowed to differ */ bool cpl_annotation_texts_can_differ; - /** true if the nodes of Reels are allowed to differ */ + /** true if the <AnnotationText> nodes of Reels are allowed to differ */ bool reel_annotation_texts_can_differ; /** true if es in Reels can differ */ bool reel_hashes_can_differ; + /** true if IssueDate nodes can differ */ + bool issue_dates_can_differ; + bool keep_going; }; /* I've been unable to make mingw happy with ERROR as a symbol, so