aboutsummaryrefslogtreecommitdiffstats
path: root/meowpp/colors/HSV.h
diff options
context:
space:
mode:
Diffstat (limited to 'meowpp/colors/HSV.h')
-rw-r--r--meowpp/colors/HSV.h73
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_