udp.h

来自「linux下实现视频播放的播放器」· C头文件 代码 · 共 83 行

H
83
字号
/* *  Copyright (C) 2005-2007  gulikoza * *  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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *//* $Id$ */#ifndef UDP_H#define UDP_H#ifdef WIN32#include <winsock.h>#else#include <sys/types.h>#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>#include <unistd.h>#endif#define MODULE "udpSource"class udpSource : public Source {private:    struct sockaddr_in addr;    // Network interface and file desctriptor    CStr iface;    int desc;    // Save stream    CStr filename;protected:    int Run();public:    udpSource(CStr& i, CStr& file):iface(i),desc(0),filename(file) {	if(!filename.empty()) {	    LOG_MSG("Filename to use for recording: '%s'", filename.c_str());	}    }    bool Open(CStr&);    void configure(const void * pt) {	if(pt) {	    filename.assign((const char *)pt);	} else {	    filename.clear();	}    }    ~udpSource() {	TerminateThread();#ifdef WIN32        closesocket(desc);	WSACleanup();#else	close(desc);#endif	ERROR_MSG("Closed.");    }};#undef MODULE#endif // UDP_H

⌨️ 快捷键说明

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