vlm_wrapper.cpp

来自「uclinux 下的vlc播放器源代码」· C++ 代码 · 共 134 行

CPP
134
字号
/***************************************************************************** * vlm_wrapper.cpp : Wrapper around VLM ***************************************************************************** * Copyright (C) 2000-2005 the VideoLAN team * $Id: vlm_wrapper.cpp 18264 2006-12-04 14:29:50Z md $ * * Authors: Clément Stenac <zorglub@videolan.org> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. *****************************************************************************//* FIXME: This is not wx-specific */#include "dialogs/vlm/vlm_wrapper.hpp"VLMWrapper::VLMWrapper( intf_thread_t *_p_intf ){    p_intf = _p_intf;    p_vlm = NULL;}VLMWrapper::~VLMWrapper(){   /* FIXME :you have to destroy vlm here to close    * but we shouldn't destroy vlm here in case somebody else wants it */   if( p_vlm )        vlm_Delete( p_vlm );}vlc_bool_t VLMWrapper::AttachVLM(){    p_vlm = vlm_New( p_intf );    return p_vlm ? VLC_TRUE: VLC_FALSE ;}void VLMWrapper::LockVLM(){    vlc_mutex_lock( &p_vlm->object_lock );}void VLMWrapper::UnlockVLM(){    vlc_mutex_unlock( &p_vlm->object_lock );}void VLMWrapper::AddBroadcast( const char* name, const char* input,                               const char* output,                               vlc_bool_t b_enabled, vlc_bool_t b_loop  ){    vlm_message_t *message;    string command = "new \"" + string(name) + "\" broadcast";    vlm_ExecuteCommand( p_vlm, command.c_str(), &message );    vlm_MessageDelete( message );    EditBroadcast( name, input, output, b_enabled, b_loop );}void VLMWrapper::EditBroadcast( const char* name, const char* input,                               const char* output,                               vlc_bool_t b_enabled, vlc_bool_t b_loop  ){    vlm_message_t *message;    string command;    command = "setup \"" + string(name) + "\" inputdel all";    vlm_ExecuteCommand( p_vlm, command.c_str(), &message );    vlm_MessageDelete( message );    command = "setup \"" + string(name) + "\" input \"" + string(input) + "\"";    vlm_ExecuteCommand( p_vlm, command.c_str(), &message );    vlm_MessageDelete( message );    if( strlen(output) > 0 )    {        command = "setup \"" + string(name) + "\" output \"" + string(output) + "\"";        vlm_ExecuteCommand( p_vlm, (char*)command.c_str(), &message );        vlm_MessageDelete( message );    }    if( b_enabled )    {        command = "setup \"" + string(name) + "\" enabled";        vlm_ExecuteCommand( p_vlm, command.c_str(), &message );        vlm_MessageDelete( message );    }    if( b_loop )    {        command = "setup \"" + string(name) + "\" loop";        vlm_ExecuteCommand( p_vlm, command.c_str(), &message );        vlm_MessageDelete( message );    }}void VLMWrapper::AddVod( const char* name, const char* input,                         const char* output,                         vlc_bool_t b_enabled, vlc_bool_t b_loop  ){    vlm_message_t *message;    string command = "new \"" + string(name) + "\" vod";    vlm_ExecuteCommand( p_vlm, command.c_str(), &message );    vlm_MessageDelete( message );    EditVod( name, input, output, b_enabled, b_loop );}void VLMWrapper::EditVod( const char* name, const char* input,                          const char* output,                          vlc_bool_t b_enabled, vlc_bool_t b_loop  ){    vlm_message_t *message;    string command;    command = "setup \"" + string(name) + "\" input \"" + string(input) + "\"";    vlm_ExecuteCommand( p_vlm, command.c_str(), &message );    vlm_MessageDelete( message );    if( strlen(output) > 0 )    {        command = "setup \"" + string(name) + "\" output \"" + string(output) + "\"";        vlm_ExecuteCommand( p_vlm, (char*)command.c_str(), &message );        vlm_MessageDelete( message );    }    if( b_enabled )    {        command = "setup \"" + string(name) + "\" enabled";        vlm_ExecuteCommand( p_vlm, command.c_str(), &message );        vlm_MessageDelete( message );    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?