#ifndef IMAGE_H
#define IMAGE_H

namespace seemicro
{
  /** Wandelt das Bild im planaren YUV-Format in ein ausgepacktes
    * nicht-planares "YUV444"(?)-Format,
    * gleichzeitig erfolgt auch yuv2rgb-Konvertierung.
    * Credits to Rene Liebscher :)
    * Siehe auch
    * file:///home/micha/studium/diplom/v4l/v4l2doc/v4l2.html#PIXFMT-YVU420
    */
  void yuv420p_unpack_2_rgb24(const unsigned char *src, char *dst,
    int width, int height);

  /**
    * von http://www.buena.com/articles/hsvspace.pdf
    */
  void rgb2hsv(int rgbIn, unsigned short*
      piOutHue, unsigned short* piOutSaturation, unsigned short*
      piOutValue);

  /**
    * chromatic color
    * taken from http://www.efg2.com/Lab/Graphics/Colors/HSV.htm
    * 0 <= h <= 360,
    * 0 <= s <= 255,
    * 0 <= v <= 255
    */
  int hsv2rgb(int h, unsigned char s, unsigned char v);

}

#endif

