![]() |
University of Murcia, Spain ![]() |
src/qvio/qvmplayercameraworker.hGo to the documentation of this file.00001 /* 00002 * Copyright (C) 2007, 2008, 2009. PARP Research Group. 00003 * <http://perception.inf.um.es> 00004 * University of Murcia, Spain. 00005 * 00006 * This file is part of the QVision library. 00007 * 00008 * QVision is free software: you can redistribute it and/or modify 00009 * it under the terms of the GNU Lesser General Public License as 00010 * published by the Free Software Foundation, version 3 of the License. 00011 * 00012 * QVision is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 * GNU Lesser General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU Lesser General Public 00018 * License along with QVision. If not, see <http://www.gnu.org/licenses/>. 00019 */ 00020 00024 00025 #ifndef QVMPLAYERCAMERAWORKER_H 00026 #define QVMPLAYERCAMERAWORKER_H 00027 00028 #include <QTimer> 00029 00030 #include <QVWorker> 00031 #include <qvio.h> 00032 #include <qvio/qvcameraworker.h> 00033 00034 #include<QVMPlayerReader> 00035 00120 class QVMPlayerCameraWorker: public QVCameraWorker 00121 { 00122 public: 00126 QVMPlayerCameraWorker(QString name); 00127 00129 ~QVMPlayerCameraWorker() { mplayerreader.closeCam(); }; 00130 00131 private: 00132 QVMPlayerReader mplayerreader; 00133 00134 protected: 00135 bool openCam(QString urlName, int &cols, int &rows, int &fps); 00136 void closeCam(); 00137 bool grab(QVImage<uChar,1> &imgY, QVImage<uChar,1> &imgU, QVImage<uChar,1> &imgV); 00138 double lengthOfVideo(); 00139 double currentPos(); 00140 00141 private slots: 00142 void setCurrentPos(double time_pos); 00143 }; 00144 00145 00146 #endif |