void Date::updateHours(double dhours) { long hours = floor(dhours); double fraction = dhours - (double)hours; long extminutes = fraction*60 + getMm(); hours += extminutes/60; extminutes = extminutes%60; long days = (getHh()+hours)/24; hours = (getHh()+hours)%24; if(days>0) { updateDays(days); } setHh(hours); setMm(extminutes); }
void Date::updateHours(const double& dhours) { long hours = floor(dhours); double fraction = dhours - (double)hours; long extminutes = fraction*60 + minutes; hours += extminutes/60; extminutes = extminutes%60; long days = (this->hours+hours)/24; hours = (this->hours+hours)%24; if(days>0) { updateDays(days); } this->hours = hours; this->minutes = extminutes; epochTime += dhours*60*60; }