From 938fef4a37a7b7c61b4b6ff74cb4cfd2f100c427 Mon Sep 17 00:00:00 2001 From: Georgey Date: Wed, 5 Jul 2017 11:40:43 +0530 Subject: Added linux shared libraries and header files for int and ecos functions --- thirdparty/linux/include/coin1/CoinRational.hpp | 44 +++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 thirdparty/linux/include/coin1/CoinRational.hpp (limited to 'thirdparty/linux/include/coin1/CoinRational.hpp') diff --git a/thirdparty/linux/include/coin1/CoinRational.hpp b/thirdparty/linux/include/coin1/CoinRational.hpp new file mode 100644 index 0000000..bfbfa5f --- /dev/null +++ b/thirdparty/linux/include/coin1/CoinRational.hpp @@ -0,0 +1,44 @@ +// Authors: Matthew Saltzman and Ted Ralphs +// Copyright 2015, Matthew Saltzman and Ted Ralphs +// Licensed under the Eclipse Public License 1.0 + +#ifndef CoinRational_H +#define CoinRational_H + +#include + +//Small class for rational numbers +class CoinRational +{ + +public : + long getDenominator() { return denominator_; } + long getNumerator() { return numerator_; } + + CoinRational(): + numerator_(0), + denominator_(1) + {}; + + CoinRational(long n, long d): + numerator_(n), + denominator_(d) + {}; + + CoinRational(double val, double maxdelta, long maxdnom) + { + if (!nearestRational_(val, maxdelta, maxdnom)){ + numerator_ = 0; + denominator_ = 1; + } + }; + +private : + + long numerator_; + long denominator_; + + bool nearestRational_(double val, double maxdelta, long maxdnom); +}; + +#endif -- cgit