+#include "../../StdAfx.h"\r
+\r
+#include "blend_modes.h"\r
+\r
+#include <boost/algorithm/string.hpp>\r
+\r
+namespace caspar { namespace core {\r
+ \r
+blend_mode::type get_blend_mode(const std::wstring& str)\r
+{\r
+ if(boost::iequals(str, L"normal"))\r
+ return blend_mode::normal;\r
+ else if(boost::iequals(str, L"lighten"))\r
+ return blend_mode::lighten;\r
+ else if(boost::iequals(str, L"darken"))\r
+ return blend_mode::darken;\r
+ else if(boost::iequals(str, L"multiply"))\r
+ return blend_mode::multiply;\r
+ else if(boost::iequals(str, L"average"))\r
+ return blend_mode::average;\r
+ else if(boost::iequals(str, L"add"))\r
+ return blend_mode::add;\r
+ else if(boost::iequals(str, L"subtract"))\r
+ return blend_mode::subtract;\r
+ else if(boost::iequals(str, L"difference"))\r
+ return blend_mode::difference;\r
+ else if(boost::iequals(str, L"negation"))\r
+ return blend_mode::negation;\r
+ else if(boost::iequals(str, L"exclusion"))\r
+ return blend_mode::exclusion;\r
+ else if(boost::iequals(str, L"screen"))\r
+ return blend_mode::screen;\r
+ else if(boost::iequals(str, L"overlay"))\r
+ return blend_mode::overlay;\r
+ else if(boost::iequals(str, L"soft_light"))\r
+ return blend_mode::soft_light;\r
+ else if(boost::iequals(str, L"hard_light"))\r
+ return blend_mode::hard_light;\r
+ else if(boost::iequals(str, L"color_dodge"))\r
+ return blend_mode::color_dodge;\r
+ else if(boost::iequals(str, L"color_burn"))\r
+ return blend_mode::color_burn;\r
+ else if(boost::iequals(str, L"linear_dodge"))\r
+ return blend_mode::linear_dodge;\r
+ else if(boost::iequals(str, L"linear_burn"))\r
+ return blend_mode::linear_burn;\r
+ else if(boost::iequals(str, L"linear_light"))\r
+ return blend_mode::linear_light;\r
+ else if(boost::iequals(str, L"vivid_light"))\r
+ return blend_mode::vivid_light;\r
+ else if(boost::iequals(str, L"pin_light"))\r
+ return blend_mode::pin_light;\r
+ else if(boost::iequals(str, L"hard_mix"))\r
+ return blend_mode::hard_mix;\r
+ else if(boost::iequals(str, L"reflect"))\r
+ return blend_mode::reflect;\r
+ else if(boost::iequals(str, L"glow"))\r
+ return blend_mode::glow;\r
+ else if(boost::iequals(str, L"phoenix"))\r
+ return blend_mode::phoenix;\r
+ else if(boost::iequals(str, L"contrast"))\r
+ return blend_mode::contrast;\r
+ else if(boost::iequals(str, L"saturation"))\r
+ return blend_mode::saturation;\r
+ else if(boost::iequals(str, L"color"))\r
+ return blend_mode::color;\r
+ else if(boost::iequals(str, L"luminosity"))\r
+ return blend_mode::luminosity;\r
+ \r
+ return blend_mode::normal;\r
+}\r
+\r
+}}
\ No newline at end of file