diff options
author | Matt Strapp <matt@mattstrapp.net> | 2021-10-11 20:02:46 -0500 |
---|---|---|
committer | Matt Strapp <matt@mattstrapp.net> | 2021-10-11 20:02:46 -0500 |
commit | aa2a4faf537c9bc7e2e87ff38483e2bf53ed24cf (patch) | |
tree | d5049549bcb1fed21d118c200ae40bac7e1ebbcc /dev/a3-earthquake/earthquake_database.h | |
parent | Fix gnu's stupidity (diff) | |
parent | Publish a3 (diff) | |
download | csci4611-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 'dev/a3-earthquake/earthquake_database.h')
-rw-r--r-- | dev/a3-earthquake/earthquake_database.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/dev/a3-earthquake/earthquake_database.h b/dev/a3-earthquake/earthquake_database.h new file mode 100644 index 0000000..026e454 --- /dev/null +++ b/dev/a3-earthquake/earthquake_database.h @@ -0,0 +1,50 @@ +/** CSci-4611 Assignment 3: Earthquake + */ + +#ifndef EARTHQUAKEDATABASE_H_ +#define EARTHQUAKEDATABASE_H_ + +#include <string> +#include <vector> + +#include "earthquake.h" +#include "date.h" + +/** A database of earthquakes created by loading from a data file. + */ +class EarthquakeDatabase { +public: + /// Creates an empty EarthquakeDatabase + EarthquakeDatabase() {} + + /// Creates an EarthquakeDatabase from file + EarthquakeDatabase(std::string filename); + + /// Returns the index of the most recent earthquake as of given date + int FindMostRecentQuake(Date d); + + /// Returns Earthquake given index in file + Earthquake earthquake(int index); + + /// Returns minimum index. Note that this is not zero! + int min_index(); + + /// Returns maximum valid index. Running + /// getByIndex(getMaxIndex()) WILL return the last earthquake in the file + int max_index(); + + /// Returns the magnitude of the earthquake with the largest magnitude + /// in the database + float max_magnitude(); + + /// Returns the magnitude of the earthquake with the smallest magnitude + /// in the database + float min_magnitude(); + +protected: + std::vector<Earthquake> earthquakes; + float min_mag_; + float max_mag_; +}; + +#endif |