summaryrefslogtreecommitdiffstats
path: root/dev/a3-earthquake/date.h
diff options
context:
space:
mode:
authorMatt Strapp <matt@mattstrapp.net>2021-10-11 20:02:46 -0500
committerMatt Strapp <matt@mattstrapp.net>2021-10-11 20:02:46 -0500
commitaa2a4faf537c9bc7e2e87ff38483e2bf53ed24cf (patch)
treed5049549bcb1fed21d118c200ae40bac7e1ebbcc /dev/a3-earthquake/date.h
parentFix gnu's stupidity (diff)
parentPublish a3 (diff)
downloadcsci4611-aa2a4faf537c9bc7e2e87ff38483e2bf53ed24cf.tar
csci4611-aa2a4faf537c9bc7e2e87ff38483e2bf53ed24cf.tar.gz
csci4611-aa2a4faf537c9bc7e2e87ff38483e2bf53ed24cf.tar.bz2
csci4611-aa2a4faf537c9bc7e2e87ff38483e2bf53ed24cf.tar.lz
csci4611-aa2a4faf537c9bc7e2e87ff38483e2bf53ed24cf.tar.xz
csci4611-aa2a4faf537c9bc7e2e87ff38483e2bf53ed24cf.tar.zst
csci4611-aa2a4faf537c9bc7e2e87ff38483e2bf53ed24cf.zip
Merge branch 'support-code' of github.umn.edu:umn-csci-4611-f21/shared-upstream
Diffstat (limited to '')
-rw-r--r--dev/a3-earthquake/date.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/dev/a3-earthquake/date.h b/dev/a3-earthquake/date.h
new file mode 100644
index 0000000..8768745
--- /dev/null
+++ b/dev/a3-earthquake/date.h
@@ -0,0 +1,50 @@
+/** CSci-4611 Assignment 3: Earthquake
+ */
+
+#ifndef DATE_H_
+#define DATE_H_
+
+#include <ctime>
+#include <iostream>
+
+/** A date class that handles leap years and can convert itself to seconds and
+ handle < and > operations.
+ */
+class Date {
+public:
+ Date();
+ Date(double seconds);
+ Date(int m, int d, int y);
+ Date(int m, int d, int y, int hr, int min, double sec);
+
+ bool operator<(const Date& other);
+ bool operator>(const Date& other);
+
+ double ToSeconds() const;
+
+ double SecondsUntil(const Date& other) const;
+
+ int year();
+
+ int month();
+
+ int day();
+
+ int hour();
+
+ int minute();
+
+ double second();
+
+private:
+ std::time_t ctime_;
+ int fouryears_;
+ int year_;
+ int month_;
+ int day_;
+ int hour_;
+ int minute_;
+ double second_;
+};
+
+#endif