1 #include "../../StdAfx.h"
\r
3 #include "blend_modes.h"
\r
5 #include <boost/algorithm/string.hpp>
\r
7 namespace caspar { namespace core {
\r
9 blend_mode::type get_blend_mode(const std::wstring& str)
\r
11 if(boost::iequals(str, L"normal"))
\r
12 return blend_mode::normal;
\r
13 else if(boost::iequals(str, L"lighten"))
\r
14 return blend_mode::lighten;
\r
15 else if(boost::iequals(str, L"darken"))
\r
16 return blend_mode::darken;
\r
17 else if(boost::iequals(str, L"multiply"))
\r
18 return blend_mode::multiply;
\r
19 else if(boost::iequals(str, L"average"))
\r
20 return blend_mode::average;
\r
21 else if(boost::iequals(str, L"add"))
\r
22 return blend_mode::add;
\r
23 else if(boost::iequals(str, L"subtract"))
\r
24 return blend_mode::subtract;
\r
25 else if(boost::iequals(str, L"difference"))
\r
26 return blend_mode::difference;
\r
27 else if(boost::iequals(str, L"negation"))
\r
28 return blend_mode::negation;
\r
29 else if(boost::iequals(str, L"exclusion"))
\r
30 return blend_mode::exclusion;
\r
31 else if(boost::iequals(str, L"screen"))
\r
32 return blend_mode::screen;
\r
33 else if(boost::iequals(str, L"overlay"))
\r
34 return blend_mode::overlay;
\r
35 else if(boost::iequals(str, L"soft_light"))
\r
36 return blend_mode::soft_light;
\r
37 else if(boost::iequals(str, L"hard_light"))
\r
38 return blend_mode::hard_light;
\r
39 else if(boost::iequals(str, L"color_dodge"))
\r
40 return blend_mode::color_dodge;
\r
41 else if(boost::iequals(str, L"color_burn"))
\r
42 return blend_mode::color_burn;
\r
43 else if(boost::iequals(str, L"linear_dodge"))
\r
44 return blend_mode::linear_dodge;
\r
45 else if(boost::iequals(str, L"linear_burn"))
\r
46 return blend_mode::linear_burn;
\r
47 else if(boost::iequals(str, L"linear_light"))
\r
48 return blend_mode::linear_light;
\r
49 else if(boost::iequals(str, L"vivid_light"))
\r
50 return blend_mode::vivid_light;
\r
51 else if(boost::iequals(str, L"pin_light"))
\r
52 return blend_mode::pin_light;
\r
53 else if(boost::iequals(str, L"hard_mix"))
\r
54 return blend_mode::hard_mix;
\r
55 else if(boost::iequals(str, L"reflect"))
\r
56 return blend_mode::reflect;
\r
57 else if(boost::iequals(str, L"glow"))
\r
58 return blend_mode::glow;
\r
59 else if(boost::iequals(str, L"phoenix"))
\r
60 return blend_mode::phoenix;
\r
61 else if(boost::iequals(str, L"contrast"))
\r
62 return blend_mode::contrast;
\r
63 else if(boost::iequals(str, L"saturation"))
\r
64 return blend_mode::saturation;
\r
65 else if(boost::iequals(str, L"color"))
\r
66 return blend_mode::color;
\r
67 else if(boost::iequals(str, L"luminosity"))
\r
68 return blend_mode::luminosity;
\r
70 return blend_mode::normal;
\r