1b285192aSMauro Carvalho Chehab /* 2b285192aSMauro Carvalho Chehab file operation functions 3b285192aSMauro Carvalho Chehab Copyright (C) 2003-2004 Kevin Thayer <nufan_wfk at yahoo.com> 4b285192aSMauro Carvalho Chehab Copyright (C) 2005-2007 Hans Verkuil <hverkuil@xs4all.nl> 5b285192aSMauro Carvalho Chehab 6b285192aSMauro Carvalho Chehab This program is free software; you can redistribute it and/or modify 7b285192aSMauro Carvalho Chehab it under the terms of the GNU General Public License as published by 8b285192aSMauro Carvalho Chehab the Free Software Foundation; either version 2 of the License, or 9b285192aSMauro Carvalho Chehab (at your option) any later version. 10b285192aSMauro Carvalho Chehab 11b285192aSMauro Carvalho Chehab This program is distributed in the hope that it will be useful, 12b285192aSMauro Carvalho Chehab but WITHOUT ANY WARRANTY; without even the implied warranty of 13b285192aSMauro Carvalho Chehab MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14b285192aSMauro Carvalho Chehab GNU General Public License for more details. 15b285192aSMauro Carvalho Chehab 16b285192aSMauro Carvalho Chehab You should have received a copy of the GNU General Public License 17b285192aSMauro Carvalho Chehab along with this program; if not, write to the Free Software 18b285192aSMauro Carvalho Chehab Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 19b285192aSMauro Carvalho Chehab */ 20b285192aSMauro Carvalho Chehab 21b285192aSMauro Carvalho Chehab #ifndef IVTV_FILEOPS_H 22b285192aSMauro Carvalho Chehab #define IVTV_FILEOPS_H 23b285192aSMauro Carvalho Chehab 24b285192aSMauro Carvalho Chehab /* Testing/Debugging */ 25b285192aSMauro Carvalho Chehab int ivtv_v4l2_open(struct file *filp); 26b285192aSMauro Carvalho Chehab ssize_t ivtv_v4l2_read(struct file *filp, char __user *buf, size_t count, 27b285192aSMauro Carvalho Chehab loff_t * pos); 28b285192aSMauro Carvalho Chehab ssize_t ivtv_v4l2_write(struct file *filp, const char __user *buf, size_t count, 29b285192aSMauro Carvalho Chehab loff_t * pos); 30b285192aSMauro Carvalho Chehab int ivtv_v4l2_close(struct file *filp); 31c23e0cb8SAl Viro __poll_t ivtv_v4l2_enc_poll(struct file *filp, poll_table * wait); 32c23e0cb8SAl Viro __poll_t ivtv_v4l2_dec_poll(struct file *filp, poll_table * wait); 33b285192aSMauro Carvalho Chehab int ivtv_start_capture(struct ivtv_open_id *id); 34b285192aSMauro Carvalho Chehab void ivtv_stop_capture(struct ivtv_open_id *id, int gop_end); 35b285192aSMauro Carvalho Chehab int ivtv_start_decoding(struct ivtv_open_id *id, int speed); 36b285192aSMauro Carvalho Chehab void ivtv_mute(struct ivtv *itv); 37b285192aSMauro Carvalho Chehab void ivtv_unmute(struct ivtv *itv); 38b285192aSMauro Carvalho Chehab 39b285192aSMauro Carvalho Chehab /* Utilities */ 40269c11fbSAndy Walls /* Shared with ivtv-alsa module */ 41269c11fbSAndy Walls int ivtv_claim_stream(struct ivtv_open_id *id, int type); 42b285192aSMauro Carvalho Chehab void ivtv_release_stream(struct ivtv_stream *s); 43b285192aSMauro Carvalho Chehab 44b285192aSMauro Carvalho Chehab #endif 45