#include #include PDFVersion::PDFVersion() : PDFVersion(0, 0, 0) { } PDFVersion::PDFVersion(int major_version, int minor_version, int extension_level) : major_version(major_version), minor_version(minor_version), extension_level(extension_level) { } bool PDFVersion::operator<(PDFVersion const& rhs) const { return ( (this->major_version < rhs.major_version) ? true : (this->major_version > rhs.major_version) ? false : (this->minor_version < rhs.minor_version) ? true : (this->minor_version > rhs.minor_version) ? false : (this->extension_level < rhs.extension_level) ? true : false); } bool PDFVersion::operator==(PDFVersion const& rhs) const { return ( (this->major_version == rhs.major_version) && (this->minor_version == rhs.minor_version) && (this->extension_level == rhs.extension_level)); } void PDFVersion::updateIfGreater(PDFVersion const& other) { if (*this < other) { *this = other; } } void PDFVersion::getVersion(std::string& version, int& extension_level) const { extension_level = this->extension_level; version = std::to_string(this->major_version) + "." + std::to_string(this->minor_version); } int PDFVersion::getMajor() const { return this->major_version; } int PDFVersion::getMinor() const { return this->minor_version; } int PDFVersion::getExtensionLevel() const { return this->extension_level; }