]> git.sesse.net Git - casparcg/blobdiff - common/tweener.cpp
Remove all Bluefish444.
[casparcg] / common / tweener.cpp
index bb2fc72a7b005e192671266b5beb217bae573d46..e92cec8dbd3cf293437372707bbc5193a55b31e5 100644 (file)
@@ -455,7 +455,7 @@ tweener_t get_tweener(std::wstring name)
                
        auto it = get_tweens().find(name);
        if(it == get_tweens().end())
-               CASPAR_THROW_EXCEPTION(invalid_argument() << msg_info("Could not find tween.") << arg_value_info(name));
+               CASPAR_THROW_EXCEPTION(user_error() << msg_info(L"Could not find tween " + name));
        
        auto tween = it->second;
        return [=](double t, double b, double c, double d)
@@ -466,17 +466,23 @@ tweener_t get_tweener(std::wstring name)
 
 tweener::tweener(const std::wstring& name)
        : func_(get_tweener(name))
+       , name_(name)
 {
 }
 
-tweener::tweener(const wchar_t* name)
-       : func_(get_tweener(name))
+double tweener::operator()(double t, double b , double c, double d) const
 {
+       return func_(t, b, c, d);
 }
 
-double tweener::operator()(double t, double b , double c, double d) const
+bool tweener::operator==(const tweener& other) const
 {
-       return func_(t, b, c, d);
+       return name_ == other.name_;
+}
+
+bool tweener::operator!=(const tweener& other) const
+{
+       return !(*this == other);
 }
 
 const std::vector<std::wstring>& tweener::names()
@@ -487,12 +493,12 @@ const std::vector<std::wstring>& tweener::names()
 
        static const auto result = []
        {
-               std::vector<std::wstring> result;
+               std::vector<std::wstring> tweens;
 
                for (auto& tween : get_tweens())
-                       result.push_back(tween.first);
+                       tweens.push_back(tween.first);
 
-               return result;
+               return tweens;
        }();
        //static const std::vector<std::wstring> result;