From de9583004d517b801fa7d87fa57584e66577735a Mon Sep 17 00:00:00 2001 From: Thomas Goyne Date: Thu, 22 Dec 2011 21:28:41 +0000 Subject: [PATCH] Uncrustify AssTime Originally committed to SVN as r6122. --- aegisub/src/ass_time.cpp | 202 +++++++++------------------------------ aegisub/src/ass_time.h | 46 ++++----- 2 files changed, 68 insertions(+), 180 deletions(-) diff --git a/aegisub/src/ass_time.cpp b/aegisub/src/ass_time.cpp index 98cde4b16..0cf57e509 100644 --- a/aegisub/src/ass_time.cpp +++ b/aegisub/src/ass_time.cpp @@ -34,213 +34,99 @@ /// @ingroup subs_storage /// - -//////////// -// Includes #include "config.h" +#include "ass_time.h" + #ifndef AGI_PRE -#include - #include -#include - -#include +#include #endif -#include "ass_time.h" #include "utils.h" - -/// @brief AssTime constructors -AssTime::AssTime() : time(0) { } AssTime::AssTime(int time) { SetMS(time); } +void AssTime::ParseASS(wxString const& text) { + int ms = 0; + size_t pos = 0, end = 0; - -/// @brief Note that this function is atomic, it won't touch the values if it's invalid. --------------- Parses from ASS -/// @param text -/// @return -/// -void AssTime::ParseASS (const wxString text) { - // Prepare - size_t pos = 0; - size_t end = 0; - long th=0,tm=0,tms=0; - - // Count the number of colons - size_t len = text.Length(); - int colons = 0; - for (pos=0;pos 2) { - for (pos=0;pos 2; --colons) pos = text.find(':', pos) + 1; + + // Hours + if (colons == 2) { + while (text[end++] != ':') { } + ms += AegiStringToInt(text, pos, end) * 60 * 60 * 1000; + pos = end; } - try { - // Hours - if (colons == 2) { - while (text[end++] != ':') {}; - th = AegiStringToInt(text,pos,end); - pos = end; - } - - // Minutes - if (colons >= 1) { - while (text[end++] != ':') {}; - tm = AegiStringToInt(text,pos,end); - pos = end; - } - - // Miliseconds (includes seconds) - end = text.Length(); - tms = AegiStringToFix(text,3,pos,end); + // Minutes + if (colons >= 1) { + while (text[end++] != ':') { } + ms += AegiStringToInt(text, pos, end) * 60 * 1000; } - // Something went wrong, don't change anything - catch (...) { - return; - } + // Milliseconds (includes seconds) + ms += AegiStringToFix(text, 3, end, text.size()); - // OK, set values - SetMS(tms + tm*60000 + th*3600000); + SetMS(ms); } -/// @brief AssTime conversion to/from miliseconds -/// @return -/// -int AssTime::GetMS () const { +int AssTime::GetMS() const { return time / 10 * 10; } - -/// @brief DOCME -/// @param _ms -/// -void AssTime::SetMS (int ms) { +void AssTime::SetMS(int ms) { time = mid(0, ms, 10 * 60 * 60 * 1000 - 1); } - - -/// @brief ASS Formated -/// @param msPrecision -/// @return -/// wxString AssTime::GetASSFormated (bool msPrecision) const { - int ms = msPrecision ? time : GetMS(); - - int h = ms / (1000 * 60 * 60); - int m = (ms / (1000 * 60)) % 60; - int s = (ms / 1000) % 60; - ms = ms % 1000; - if (msPrecision) - return wxString::Format("%01i:%02i:%02i.%03i",h,m,s,ms); + return wxString::Format("%d:%02d:%02d.%03d", GetTimeHours(), GetTimeMinutes(), GetTimeSeconds(), GetTimeMiliseconds()); else - return wxString::Format("%01i:%02i:%02i.%02i",h,m,s,ms/10); + return wxString::Format("%d:%02d:%02d.%02d", GetTimeHours(), GetTimeMinutes(), GetTimeSeconds(), GetTimeCentiseconds()); } -/// @brief AssTime comparison -/// @param t1 -/// @param t2 -/// @return -/// -bool operator < (const AssTime &t1, const AssTime &t2) { - return (t1.GetMS() < t2.GetMS()); +bool operator < (AssTime t1, AssTime t2) { + return t1.GetMS() < t2.GetMS(); } - -/// @brief DOCME -/// @param t1 -/// @param t2 -/// @return -/// -bool operator > (const AssTime &t1, const AssTime &t2) { - return (t1.GetMS() > t2.GetMS()); +bool operator > (AssTime t1, AssTime t2) { + return t1.GetMS() > t2.GetMS(); } - -/// @brief DOCME -/// @param t1 -/// @param t2 -/// @return -/// -bool operator <= (const AssTime &t1, const AssTime &t2) { - return (t1.GetMS() <= t2.GetMS()); +bool operator <= (AssTime t1, AssTime t2) { + return t1.GetMS() <= t2.GetMS(); } - -/// @brief DOCME -/// @param t1 -/// @param t2 -/// @return -/// -bool operator >= (const AssTime &t1, const AssTime &t2) { - return (t1.GetMS() >= t2.GetMS()); +bool operator >= (AssTime t1, AssTime t2) { + return t1.GetMS() >= t2.GetMS(); } - -/// @brief DOCME -/// @param t1 -/// @param t2 -/// @return -/// -bool operator == (const AssTime &t1, const AssTime &t2) { - return (t1.GetMS() == t2.GetMS()); +bool operator == (AssTime t1, AssTime t2) { + return t1.GetMS() == t2.GetMS(); } - -/// @brief DOCME -/// @param t1 -/// @param t2 -/// @return -/// -bool operator != (const AssTime &t1, const AssTime &t2) { - return (t1.GetMS() != t2.GetMS()); +bool operator != (AssTime t1, AssTime t2) { + return t1.GetMS() != t2.GetMS(); } -AssTime operator + (const AssTime &t1, const AssTime &t2) { +AssTime operator + (AssTime t1, AssTime t2) { return AssTime(t1.GetMS() + t2.GetMS()); } -AssTime operator - (const AssTime &t1, const AssTime &t2) { +AssTime operator - (AssTime t1, AssTime t2) { return AssTime(t1.GetMS() - t2.GetMS()); } -/// @brief Get -/// @return -/// -int AssTime::GetTimeHours() { return time / 3600000; } - -/// @brief DOCME -/// @return -/// -int AssTime::GetTimeMinutes() { return (time % 3600000)/60000; } - -/// @brief DOCME -/// @return -/// -int AssTime::GetTimeSeconds() { return (time % 60000)/1000; } - -/// @brief DOCME -/// @return -/// -int AssTime::GetTimeMiliseconds() { return (time % 1000); } - -/// @brief DOCME -/// @return -/// -int AssTime::GetTimeCentiseconds() { return (time % 1000)/10; } +int AssTime::GetTimeHours() const { return time / 3600000; } +int AssTime::GetTimeMinutes() const { return (time % 3600000) / 60000; } +int AssTime::GetTimeSeconds() const { return (time % 60000) / 1000; } +int AssTime::GetTimeMiliseconds() const { return (time % 1000); } +int AssTime::GetTimeCentiseconds() const { return (time % 1000) / 10; } FractionalTime::FractionalTime(agi::vfr::Framerate fps, bool dropframe) : fps(fps) diff --git a/aegisub/src/ass_time.h b/aegisub/src/ass_time.h index 4f274c2d2..36cda3233 100644 --- a/aegisub/src/ass_time.h +++ b/aegisub/src/ass_time.h @@ -37,8 +37,6 @@ #pragma once #ifndef AGI_PRE -#include - #include #endif @@ -50,35 +48,39 @@ /// /// DOCME class AssTime { - /// Time in miliseconds + /// Time in milliseconds int time; public: - AssTime(); - AssTime(int ms); + AssTime(int ms = 0); - int GetTimeHours(); - int GetTimeMinutes(); - int GetTimeSeconds(); - int GetTimeMiliseconds(); - int GetTimeCentiseconds(); + int GetTimeHours() const; ///< Get the hours portion of this time + int GetTimeMinutes() const; ///< Get the minutes portion of this time + int GetTimeSeconds() const; ///< Get the seconds portion of this time + int GetTimeMiliseconds() const; ///< Get the miliseconds portion of this time + int GetTimeCentiseconds() const; ///< Get the centiseconds portion of this time - int GetMS() const; ///< Returns milliseconds - void SetMS(int ms); ///< Sets values to milliseconds with bounds-checking - void ParseASS(const wxString text); ///< Sets value to text-form time, in ASS format - wxString GetASSFormated(bool ms=false) const; ///< Returns the ASS representation of time + /// Get millisecond, rounded to centisecond precision + int GetMS() const; + /// Sets values to milliseconds with bounds-checking + void SetMS(int ms); + /// Parse an ASS time string, leaving the time unchanged if the string is malformed + void ParseASS(wxString const& text); + /// Return the time as a string + /// @param ms Use milliseconds precision, for non-ASS formats + wxString GetASSFormated(bool ms=false) const; }; // Comparison operators -bool operator == (const AssTime &t1, const AssTime &t2); -bool operator != (const AssTime &t1, const AssTime &t2); -bool operator < (const AssTime &t1, const AssTime &t2); -bool operator > (const AssTime &t1, const AssTime &t2); -bool operator <= (const AssTime &t1, const AssTime &t2); -bool operator >= (const AssTime &t1, const AssTime &t2); +bool operator == (AssTime t1, AssTime t2); +bool operator != (AssTime t1, AssTime t2); +bool operator < (AssTime t1, AssTime t2); +bool operator > (AssTime t1, AssTime t2); +bool operator <= (AssTime t1, AssTime t2); +bool operator >= (AssTime t1, AssTime t2); // Arithmetic operators -AssTime operator + (const AssTime &t1, const AssTime &t2); -AssTime operator - (const AssTime &t1, const AssTime &t2); +AssTime operator + (AssTime t1, AssTime t2); +AssTime operator - (AssTime t1, AssTime t2); /// DOCME /// @class FractionalTime