diff options
Diffstat (limited to 'meowpp/colors/HSV.h')
-rw-r--r-- | meowpp/colors/HSV.h | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/meowpp/colors/HSV.h b/meowpp/colors/HSV.h deleted file mode 100644 index fe3c70d..0000000 --- a/meowpp/colors/HSV.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef colors_HSV_H_ -#define colors_HSV_H_ - -#include "RGB.h" -#include "YUV.h" -#include "HSL.h" - -#include <cstdlib> - -namespace meow{ - template<class T> - class HSV{ - protected: - T hsv_[3]; - HSV(); - HSV(T const& h, T const& s, T const& v); - HSV(T const* hsv); - public: - virtual ~HSV(){ } - ///////////////// **# not force #** //////////////// - virtual T hMax() const = 0; - virtual T hMin() const = 0; - virtual T sMax() const = 0; - virtual T sMin() const = 0; - virtual T vMax() const = 0; - virtual T vMin() const = 0; - /////////////////// **# access #** ///////////////// - T h() const; - T s() const; - T v() const; - T hsv(size_t i) const; - T vsh(size_t i) const; - /////////////////// **# setting #** //////////////// - T h(T const& val); - T s(T const& val); - T v(T const& val); - T hsv(size_t i, T const& val); - T vsh(size_t i, T const& val); - }; - - class HSVf: public HSV<double>{ - public: - HSVf(); - ~HSVf(); - HSVf(double const&h,double const&s,double const&v); - HSVf(double const* hsv); - double hMin() const; - double hMax() const; - double sMin() const; - double sMax() const; - double vMin() const; - double vMax() const; - }; - - template<class HSV_T1, class HSV_T2> - inline void HSV_to_HSV(HSV<HSV_T1> const& a, HSV<HSV_T2>* b); - template<class RGB_T, class HSV_T> - inline void RGB_to_HSV(RGB<RGB_T> const& rgb, HSV<HSV_T>* hsv); - template<class HSV_T, class RGB_T> - inline void HSV_to_RGB(HSV<HSV_T> const& hsv, RGB<RGB_T>* rgb); - template<class YUV_T, class HSV_T> - inline void YUV_to_HSV(YUV<YUV_T> const& yuv, HSV<HSV_T>* hsv); - template<class HSV_T, class YUV_T> - inline void HSV_to_YUV(HSV<HSV_T> const& hsv, YUV<YUV_T>* yuv); - template<class HSL_T, class HSV_T> - inline void HSL_to_HSV(HSL<HSL_T> const& hsl, HSV<HSV_T>* hsv); - template<class HSV_T, class HSL_T> - inline void HSV_to_HSL(HSV<HSV_T> const& hsv, HSL<HSL_T>* hsl); -} - -#include "HSV.hpp" - -#endif // colors_HSV_H_ |