/*
- Copyright (C) 2014 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2014-2018 Carl Hetherington <cth@carlh.net>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
*/
+/** @file src/colour.h
+ * @brief Colour class.
+ */
+
#ifndef LIBSUB_COLOUR_H
#define LIBSUB_COLOUR_H
+#include <dcp/types.h>
#include <string>
+#include <cmath>
namespace sub {
, g (0)
, b (0)
{}
-
+
Colour (float r, float g, float b)
: r (r)
, g (g)
, b (b)
{}
- Colour (std::string);
+ static Colour from_argb_hex (std::string);
+ static Colour from_rgb_hex (std::string);
/** red component (from 0 to 1) */
float r;
float g;
/** blue component (from 0 to 1) */
float b;
+
+ dcp::Colour dcp() const {
+ return dcp::Colour(lrintf(r * 255), lrintf(g * 255), lrintf(b * 255));
+ }
};
bool
operator== (Colour const & a, Colour const & b);
-
+
}
#endif