X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Ftypes.h;h=16000daa809c8a58b342461e31e2bbd3169363c8;hb=bec7cbcc015814452690a0f702cc41b6f5f56311;hp=626666b4263f6e22217c45c263cf42f040b60a35;hpb=fe99eae4b95c5fcf2f3730efad4a18d0cb5c29bc;p=libdcp.git diff --git a/src/types.h b/src/types.h index 626666b4..16000daa 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; }; @@ -139,12 +139,15 @@ public: return float (numerator) / denominator; } + std::string as_string () const; + int numerator; int denominator; }; 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); /** @struct EqualityOptions * @brief A class to describe what "equality" means for a particular test. @@ -155,13 +158,15 @@ extern bool operator!= (Fraction const & a, Fraction const & b); 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 */ @@ -170,12 +175,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