]> git.sesse.net Git - casparcg/blobdiff - protocol/amcp/AMCPCommandsImpl.h
git-svn-id: https://casparcg.svn.sourceforge.net/svnroot/casparcg/server/branches...
[casparcg] / protocol / amcp / AMCPCommandsImpl.h
index c1ac74d4e99cf6470ed303cad673f918cafc3afe..d4997fdef03f3681838d457284d732ce5a141fa0 100644 (file)
@@ -1,22 +1,24 @@
 /*\r
-* copyright (c) 2010 Sveriges Television AB <info@casparcg.com>\r
+* Copyright (c) 2011 Sveriges Television AB <info@casparcg.com>\r
 *\r
-*  This file is part of CasparCG.\r
+* This file is part of CasparCG (www.casparcg.com).\r
 *\r
-*    CasparCG is free software: you can redistribute it and/or modify\r
-*    it under the terms of the GNU General Public License as published by\r
-*    the Free Software Foundation, either version 3 of the License, or\r
-*    (at your option) any later version.\r
+* CasparCG is free software: you can redistribute it and/or modify\r
+* it under the terms of the GNU General Public License as published by\r
+* the Free Software Foundation, either version 3 of the License, or\r
+* (at your option) any later version.\r
 *\r
-*    CasparCG is distributed in the hope that it will be useful,\r
-*    but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-*    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
-*    GNU General Public License for more details.\r
-\r
-*    You should have received a copy of the GNU General Public License\r
-*    along with CasparCG.  If not, see <http://www.gnu.org/licenses/>.\r
+* CasparCG is distributed in the hope that it will be useful,\r
+* but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
+* GNU General Public License for more details.\r
+*\r
+* You should have received a copy of the GNU General Public License\r
+* along with CasparCG. If not, see <http://www.gnu.org/licenses/>.\r
 *\r
+* Author: Nicklas P Andersson\r
 */\r
+\r
  \r
 #ifndef __AMCPCOMMANDSIMPL_H__\r
 #define __AMCPCOMMANDSIMPL_H__\r
@@ -29,8 +31,26 @@ std::wstring ListMedia();
 std::wstring ListTemplates();\r
 \r
 namespace amcp {\r
+       \r
+class ChannelGridCommand : public AMCPCommandBase<false, AddToQueue, 0>\r
+{\r
+       std::wstring print() const { return L"ChannelGridCommand";}\r
+       bool DoExecute();\r
+};\r
+\r
+class DiagnosticsCommand : public AMCPCommandBase<false, AddToQueue, 0>\r
+{\r
+       std::wstring print() const { return L"DiagnosticsCommand";}\r
+       bool DoExecute();\r
+};\r
 \r
-class MixerCommand : public AMCPCommandBase<true, AddToQueue, 2>\r
+class CallCommand : public AMCPCommandBase<true, AddToQueue, 1>\r
+{\r
+       std::wstring print() const { return L"CallCommand";}\r
+       bool DoExecute();\r
+};\r
+\r
+class MixerCommand : public AMCPCommandBase<true, AddToQueue, 1>\r
 {\r
        std::wstring print() const { return L"MixerCommand";}\r
        bool DoExecute();\r
@@ -84,12 +104,24 @@ class StopCommand : public AMCPCommandBase<true, AddToQueue, 0>
        bool DoExecute();\r
 };\r
 \r
-class ClearCommand : public AMCPCommandBase<true, AddToQueue, 0>\r
+class ClearCommand : public AMCPCommandBase<true, ImmediatelyAndClear, 0>\r
 {\r
        std::wstring print() const { return L"ClearCommand";}\r
        bool DoExecute();\r
 };\r
 \r
+class PrintCommand : public AMCPCommandBase<true, AddToQueue, 0>\r
+{\r
+       std::wstring print() const { return L"PrintCommand";}\r
+       bool DoExecute();\r
+};\r
+\r
+class LogCommand : public AMCPCommandBase<false, AddToQueue, 0>\r
+{\r
+       std::wstring print() const { return L"LogCommand";}\r
+       bool DoExecute();\r
+};\r
+\r
 class CGCommand : public AMCPCommandBase<true, AddToQueue, 1>\r
 {\r
        std::wstring print() const { return L"CGCommand";}\r
@@ -138,10 +170,10 @@ class InfoCommand : public AMCPCommandBase<false, AddToQueue, 0>
 {\r
 public:\r
        std::wstring print() const { return L"InfoCommand";}\r
-       InfoCommand(const std::vector<safe_ptr<core::channel>>& channels) : channels_(channels){}\r
+       InfoCommand(const std::vector<spl::shared_ptr<core::video_channel>>& channels) : channels_(channels){}\r
        bool DoExecute();\r
 private:\r
-       const std::vector<safe_ptr<core::channel>>& channels_;\r
+       const std::vector<spl::shared_ptr<core::video_channel>>& channels_;\r
 };\r
 \r
 class VersionCommand : public AMCPCommandBase<false, AddToQueue, 0>\r