]> git.sesse.net Git - casparcg/blobdiff - protocol/amcp/AMCPCommand.h
2.0. image_mixer: Fixed wierd bug where "layer" was leaked.
[casparcg] / protocol / amcp / AMCPCommand.h
index dfbd8ca7d6f54370a8c545cbfaecd6ceaedca195..607de6e8b28a1165fa0a3891e083211dc67673ad 100644 (file)
@@ -22,7 +22,7 @@
 #include "../util/clientinfo.h"\r
 \r
 #include <core/consumer/frame_consumer.h>\r
-#include <core/channel.h>\r
+#include <core/video_channel.h>\r
 \r
 #include <boost/algorithm/string.hpp>\r
 \r
@@ -56,11 +56,11 @@ namespace amcp {
                void SetClientInfo(IO::ClientInfoPtr& s){pClientInfo_ = s;}\r
                IO::ClientInfoPtr GetClientInfo(){return pClientInfo_;}\r
 \r
-               void SetChannel(const std::shared_ptr<core::channel>& pChannel){pChannel_ = pChannel;}\r
-               std::shared_ptr<core::channel> GetChannel(){return pChannel_;}\r
+               void SetChannel(const std::shared_ptr<core::video_channel>& pChannel){pChannel_ = pChannel;}\r
+               std::shared_ptr<core::video_channel> GetChannel(){return pChannel_;}\r
 \r
-               void SetChannels(const std::vector<safe_ptr<core::channel>>& channels){channels_ = channels;}\r
-               const std::vector<safe_ptr<core::channel>>& GetChannels() { return channels_; }\r
+               void SetChannels(const std::vector<safe_ptr<core::video_channel>>& channels){channels_ = channels;}\r
+               const std::vector<safe_ptr<core::video_channel>>& GetChannels() { return channels_; }\r
 \r
                void SetChannelIndex(unsigned int channelIndex){channelIndex_ = channelIndex;}\r
                unsigned int GetChannelIndex(){return channelIndex_;}\r
@@ -82,13 +82,14 @@ namespace amcp {
        protected:\r
                void SetReplyString(const std::wstring& str){replyString_ = str;}\r
                std::vector<std::wstring> _parameters;\r
+               std::vector<std::wstring> _parameters2;\r
 \r
        private:\r
                unsigned int channelIndex_;\r
                int layerIndex_;\r
                IO::ClientInfoPtr pClientInfo_;\r
-               std::shared_ptr<core::channel> pChannel_;\r
-               std::vector<safe_ptr<core::channel>> channels_;\r
+               std::shared_ptr<core::video_channel> pChannel_;\r
+               std::vector<safe_ptr<core::video_channel>> channels_;\r
                AMCPCommandScheduling scheduling_;\r
                std::wstring replyString_;\r
        };\r
@@ -101,6 +102,7 @@ namespace amcp {
        public:\r
                virtual bool Execute()\r
                {\r
+                       _parameters2 = _parameters;\r
                        for(size_t n = 0; n < _parameters.size(); ++n)\r
                                _parameters[n] = boost::to_upper_copy(_parameters[n]);\r
                        return (TNeedChannel && !GetChannel()) || _parameters.size() < TMinParameters ? false : DoExecute();\r