33 lines
1017 B
C++
33 lines
1017 B
C++
#include "dateutils.h"
|
|
|
|
#include "pico/types.h"
|
|
|
|
|
|
datetime_compare_res compare_datetime(const datetime_t *dt1, const datetime_t *dt2) {
|
|
// Compare year first
|
|
if (dt1->year > dt2->year) return BIGGER_THAN;
|
|
if (dt1->year < dt2->year) return SMALLER_THAN;
|
|
|
|
// Years are equal, compare month
|
|
if (dt1->month > dt2->month) return BIGGER_THAN;
|
|
if (dt1->month < dt2->month) return SMALLER_THAN;
|
|
|
|
// Months are equal, compare day
|
|
if (dt1->day > dt2->day) return BIGGER_THAN;
|
|
if (dt1->day < dt2->day) return SMALLER_THAN;
|
|
|
|
// Days are equal, compare hour
|
|
if (dt1->hour > dt2->hour) return BIGGER_THAN;
|
|
if (dt1->hour < dt2->hour) return SMALLER_THAN;
|
|
|
|
// Hours are equal, compare minute
|
|
if (dt1->min > dt2->min) return BIGGER_THAN;
|
|
if (dt1->min < dt2->min) return SMALLER_THAN;
|
|
|
|
// Minutes are equal, compare second
|
|
if (dt1->sec > dt2->sec) return BIGGER_THAN;
|
|
if (dt1->sec < dt2->sec) return SMALLER_THAN;
|
|
|
|
// All fields are equal
|
|
return EQUALS;
|
|
} |