Program Listing for File profiles.hpp
↰ Return to documentation for file (include/eat/process/profiles.hpp)
#pragma once
#include <stdexcept>
#include <variant>
namespace eat::process::profiles {
struct ITUEmissionProfile {
public:
ITUEmissionProfile(int level) : level_(level) {
if (level_ < 0 || level_ > 2) throw std::invalid_argument{"level must be 0, 1 or 2"};
}
int level() const { return level_; }
private:
int level_;
};
using Profile = std::variant<ITUEmissionProfile>;
} // namespace eat::process::profiles