![]() |
University of Murcia, Spain ![]() |
src/qvworkers/qvippworkers.h00001 /* 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 #include <ipp.h> 00026 00027 #include <QMap> 00028 #include <QSize> 00029 #include <QPoint> 00030 #include <QVImage> 00031 #include <QVWorker> 00032 00033 #include <qvdefines.h> 00034 #include <qvipp.h> 00035 #include <qvip/qvipp/qvippfunctions.h> 00036 00037 #ifndef QVIPPWORKERS_H 00038 #define QVIPPWORKERS_H 00039 00047 const QMap<QString, QString> getQVIPPWorkersNames(); 00048 00062 QVPropertyContainer *newQVIPPWorker(QString type, QString name); 00063 00075 class QVConvert_uCharsFloatC1Worker: public QVWorker 00076 { 00077 public: 00078 QVConvert_uCharsFloatC1Worker(QString name = QString()); 00079 void iterate(); 00080 }; 00081 00093 class QVConvert_uCharsFloatC3Worker: public QVWorker 00094 { 00095 public: 00096 QVConvert_uCharsFloatC3Worker(QString name = QString()); 00097 void iterate(); 00098 }; 00099 00112 class QVConvert_sFloatuCharC1Worker: public QVWorker 00113 { 00114 public: 00115 QVConvert_sFloatuCharC1Worker(QString name = QString()); 00116 void iterate(); 00117 }; 00118 00131 class QVConvert_sFloatuCharC3Worker: public QVWorker 00132 { 00133 public: 00134 QVConvert_sFloatuCharC3Worker(QString name = QString()); 00135 void iterate(); 00136 }; 00137 00151 class QVAdd_uCharC1Worker: public QVWorker 00152 { 00153 public: 00154 QVAdd_uCharC1Worker(QString name = QString()); 00155 void iterate(); 00156 }; 00157 00171 class QVAdd_uCharC3Worker: public QVWorker 00172 { 00173 public: 00174 QVAdd_uCharC3Worker(QString name = QString()); 00175 void iterate(); 00176 }; 00177 00190 class QVAdd_sFloatC1Worker: public QVWorker 00191 { 00192 public: 00193 QVAdd_sFloatC1Worker(QString name = QString()); 00194 void iterate(); 00195 }; 00196 00209 class QVAdd_sFloatC3Worker: public QVWorker 00210 { 00211 public: 00212 QVAdd_sFloatC3Worker(QString name = QString()); 00213 void iterate(); 00214 }; 00215 00229 class QVAddC_uCharC1Worker: public QVWorker 00230 { 00231 public: 00232 QVAddC_uCharC1Worker(QString name = QString()); 00233 void iterate(); 00234 }; 00235 00248 class QVAddC_sFloatC1Worker: public QVWorker 00249 { 00250 public: 00251 QVAddC_sFloatC1Worker(QString name = QString()); 00252 void iterate(); 00253 }; 00254 00268 class QVMul_uCharC1Worker: public QVWorker 00269 { 00270 public: 00271 QVMul_uCharC1Worker(QString name = QString()); 00272 void iterate(); 00273 }; 00274 00288 class QVMul_uCharC3Worker: public QVWorker 00289 { 00290 public: 00291 QVMul_uCharC3Worker(QString name = QString()); 00292 void iterate(); 00293 }; 00294 00307 class QVMul_sFloatC3Worker: public QVWorker 00308 { 00309 public: 00310 QVMul_sFloatC3Worker(QString name = QString()); 00311 void iterate(); 00312 }; 00313 00326 class QVMul_sFloatC1Worker: public QVWorker 00327 { 00328 public: 00329 QVMul_sFloatC1Worker(QString name = QString()); 00330 void iterate(); 00331 }; 00332 00346 class QVMulC_uCharC1Worker: public QVWorker 00347 { 00348 public: 00349 QVMulC_uCharC1Worker(QString name = QString()); 00350 void iterate(); 00351 }; 00352 00365 class QVMulC_sFloatC1Worker: public QVWorker 00366 { 00367 public: 00368 QVMulC_sFloatC1Worker(QString name = QString()); 00369 void iterate(); 00370 }; 00371 00384 class QVMulScale_uCharC1Worker: public QVWorker 00385 { 00386 public: 00387 QVMulScale_uCharC1Worker(QString name = QString()); 00388 void iterate(); 00389 }; 00390 00403 class QVMulScale_uCharC3Worker: public QVWorker 00404 { 00405 public: 00406 QVMulScale_uCharC3Worker(QString name = QString()); 00407 void iterate(); 00408 }; 00409 00423 class QVSub_uCharC1Worker: public QVWorker 00424 { 00425 public: 00426 QVSub_uCharC1Worker(QString name = QString()); 00427 void iterate(); 00428 }; 00429 00443 class QVSub_uCharC3Worker: public QVWorker 00444 { 00445 public: 00446 QVSub_uCharC3Worker(QString name = QString()); 00447 void iterate(); 00448 }; 00449 00462 class QVSub_sFloatC1Worker: public QVWorker 00463 { 00464 public: 00465 QVSub_sFloatC1Worker(QString name = QString()); 00466 void iterate(); 00467 }; 00468 00481 class QVSub_sFloatC3Worker: public QVWorker 00482 { 00483 public: 00484 QVSub_sFloatC3Worker(QString name = QString()); 00485 void iterate(); 00486 }; 00487 00501 class QVSubC_uCharC1Worker: public QVWorker 00502 { 00503 public: 00504 QVSubC_uCharC1Worker(QString name = QString()); 00505 void iterate(); 00506 }; 00507 00520 class QVSubC_sFloatC1Worker: public QVWorker 00521 { 00522 public: 00523 QVSubC_sFloatC1Worker(QString name = QString()); 00524 void iterate(); 00525 }; 00526 00540 class QVDiv_uCharC1Worker: public QVWorker 00541 { 00542 public: 00543 QVDiv_uCharC1Worker(QString name = QString()); 00544 void iterate(); 00545 }; 00546 00560 class QVDiv_uCharC3Worker: public QVWorker 00561 { 00562 public: 00563 QVDiv_uCharC3Worker(QString name = QString()); 00564 void iterate(); 00565 }; 00566 00579 class QVDiv_sFloatC3Worker: public QVWorker 00580 { 00581 public: 00582 QVDiv_sFloatC3Worker(QString name = QString()); 00583 void iterate(); 00584 }; 00585 00598 class QVDiv_sFloatC1Worker: public QVWorker 00599 { 00600 public: 00601 QVDiv_sFloatC1Worker(QString name = QString()); 00602 void iterate(); 00603 }; 00604 00618 class QVDivC_uCharC1Worker: public QVWorker 00619 { 00620 public: 00621 QVDivC_uCharC1Worker(QString name = QString()); 00622 void iterate(); 00623 }; 00624 00637 class QVDivC_sFloatC1Worker: public QVWorker 00638 { 00639 public: 00640 QVDivC_sFloatC1Worker(QString name = QString()); 00641 void iterate(); 00642 }; 00643 00655 class QVAbs_sShortC1Worker: public QVWorker 00656 { 00657 public: 00658 QVAbs_sShortC1Worker(QString name = QString()); 00659 void iterate(); 00660 }; 00661 00673 class QVAbs_sFloatC1Worker: public QVWorker 00674 { 00675 public: 00676 QVAbs_sFloatC1Worker(QString name = QString()); 00677 void iterate(); 00678 }; 00679 00692 class QVAbsDiff_uCharC1Worker: public QVWorker 00693 { 00694 public: 00695 QVAbsDiff_uCharC1Worker(QString name = QString()); 00696 void iterate(); 00697 }; 00698 00711 class QVAbsDiff_sFloatC1Worker: public QVWorker 00712 { 00713 public: 00714 QVAbsDiff_sFloatC1Worker(QString name = QString()); 00715 void iterate(); 00716 }; 00717 00729 class QVSqr_sFloatC1Worker: public QVWorker 00730 { 00731 public: 00732 QVSqr_sFloatC1Worker(QString name = QString()); 00733 void iterate(); 00734 }; 00735 00747 class QVLn_sFloatC1Worker: public QVWorker 00748 { 00749 public: 00750 QVLn_sFloatC1Worker(QString name = QString()); 00751 void iterate(); 00752 }; 00753 00765 class QVLn_sFloatC3Worker: public QVWorker 00766 { 00767 public: 00768 QVLn_sFloatC3Worker(QString name = QString()); 00769 void iterate(); 00770 }; 00771 00784 class QVAndC_uCharC1Worker: public QVWorker 00785 { 00786 public: 00787 QVAndC_uCharC1Worker(QString name = QString()); 00788 void iterate(); 00789 }; 00790 00802 class QVNot_uCharC1Worker: public QVWorker 00803 { 00804 public: 00805 QVNot_uCharC1Worker(QString name = QString()); 00806 void iterate(); 00807 }; 00808 00820 class QVNot_uCharC3Worker: public QVWorker 00821 { 00822 public: 00823 QVNot_uCharC3Worker(QString name = QString()); 00824 void iterate(); 00825 }; 00826 00839 class QVOrC_uCharC1Worker: public QVWorker 00840 { 00841 public: 00842 QVOrC_uCharC1Worker(QString name = QString()); 00843 void iterate(); 00844 }; 00845 00858 class QVXorC_uCharC1Worker: public QVWorker 00859 { 00860 public: 00861 QVXorC_uCharC1Worker(QString name = QString()); 00862 void iterate(); 00863 }; 00864 00877 class QVLShiftC_uCharC1Worker: public QVWorker 00878 { 00879 public: 00880 QVLShiftC_uCharC1Worker(QString name = QString()); 00881 void iterate(); 00882 }; 00883 00896 class QVRShiftC_uCharC1Worker: public QVWorker 00897 { 00898 public: 00899 QVRShiftC_uCharC1Worker(QString name = QString()); 00900 void iterate(); 00901 }; 00902 00914 class QVRGBToGray_uCharC3C1Worker: public QVWorker 00915 { 00916 public: 00917 QVRGBToGray_uCharC3C1Worker(QString name = QString()); 00918 void iterate(); 00919 }; 00920 00932 class QVRGBToGray_sFloatC3C1Worker: public QVWorker 00933 { 00934 public: 00935 QVRGBToGray_sFloatC3C1Worker(QString name = QString()); 00936 void iterate(); 00937 }; 00938 00952 class QVThreshold_uCharC1Worker: public QVWorker 00953 { 00954 public: 00955 QVThreshold_uCharC1Worker(QString name = QString()); 00956 void iterate(); 00957 }; 00958 00972 class QVThreshold_sFloatC1Worker: public QVWorker 00973 { 00974 public: 00975 QVThreshold_sFloatC1Worker(QString name = QString()); 00976 void iterate(); 00977 }; 00978 00990 class QVComputeThreshold_Otsu_uCharC1Worker: public QVWorker 00991 { 00992 public: 00993 QVComputeThreshold_Otsu_uCharC1Worker(QString name = QString()); 00994 void iterate(); 00995 }; 00996 01010 class QVCompare_uCharC1Worker: public QVWorker 01011 { 01012 public: 01013 QVCompare_uCharC1Worker(QString name = QString()); 01014 void iterate(); 01015 }; 01016 01030 class QVCompare_sFloatC1Worker: public QVWorker 01031 { 01032 public: 01033 QVCompare_sFloatC1Worker(QString name = QString()); 01034 void iterate(); 01035 }; 01036 01050 class QVCompareC_uCharC1Worker: public QVWorker 01051 { 01052 public: 01053 QVCompareC_uCharC1Worker(QString name = QString()); 01054 void iterate(); 01055 }; 01056 01070 class QVCompareC_sFloatC1Worker: public QVWorker 01071 { 01072 public: 01073 QVCompareC_sFloatC1Worker(QString name = QString()); 01074 void iterate(); 01075 }; 01076 01090 class QVFilterBox_uCharC1Worker: public QVWorker 01091 { 01092 public: 01093 QVFilterBox_uCharC1Worker(QString name = QString()); 01094 void iterate(); 01095 }; 01096 01110 class QVFilterBox_uCharC3Worker: public QVWorker 01111 { 01112 public: 01113 QVFilterBox_uCharC3Worker(QString name = QString()); 01114 void iterate(); 01115 }; 01116 01130 class QVFilterBox_sFloatC1Worker: public QVWorker 01131 { 01132 public: 01133 QVFilterBox_sFloatC1Worker(QString name = QString()); 01134 void iterate(); 01135 }; 01136 01150 class QVFilterMin_uCharC1Worker: public QVWorker 01151 { 01152 public: 01153 QVFilterMin_uCharC1Worker(QString name = QString()); 01154 void iterate(); 01155 }; 01156 01170 class QVFilterMin_uCharC3Worker: public QVWorker 01171 { 01172 public: 01173 QVFilterMin_uCharC3Worker(QString name = QString()); 01174 void iterate(); 01175 }; 01176 01190 class QVFilterMin_sFloatC1Worker: public QVWorker 01191 { 01192 public: 01193 QVFilterMin_sFloatC1Worker(QString name = QString()); 01194 void iterate(); 01195 }; 01196 01210 class QVFilterMax_uCharC1Worker: public QVWorker 01211 { 01212 public: 01213 QVFilterMax_uCharC1Worker(QString name = QString()); 01214 void iterate(); 01215 }; 01216 01230 class QVFilterMax_uCharC3Worker: public QVWorker 01231 { 01232 public: 01233 QVFilterMax_uCharC3Worker(QString name = QString()); 01234 void iterate(); 01235 }; 01236 01250 class QVFilterMax_sFloatC1Worker: public QVWorker 01251 { 01252 public: 01253 QVFilterMax_sFloatC1Worker(QString name = QString()); 01254 void iterate(); 01255 }; 01256 01270 class QVFilterMedian_uCharC1Worker: public QVWorker 01271 { 01272 public: 01273 QVFilterMedian_uCharC1Worker(QString name = QString()); 01274 void iterate(); 01275 }; 01276 01290 class QVFilterMedian_uCharC3Worker: public QVWorker 01291 { 01292 public: 01293 QVFilterMedian_uCharC3Worker(QString name = QString()); 01294 void iterate(); 01295 }; 01296 01309 class QVFilterMedianHoriz_uCharC1Worker: public QVWorker 01310 { 01311 public: 01312 QVFilterMedianHoriz_uCharC1Worker(QString name = QString()); 01313 void iterate(); 01314 }; 01315 01328 class QVFilterSobelHorizMask_sFloatC1Worker: public QVWorker 01329 { 01330 public: 01331 QVFilterSobelHorizMask_sFloatC1Worker(QString name = QString()); 01332 void iterate(); 01333 }; 01334 01347 class QVFilterSobelVertMask_sFloatC1Worker: public QVWorker 01348 { 01349 public: 01350 QVFilterSobelVertMask_sFloatC1Worker(QString name = QString()); 01351 void iterate(); 01352 }; 01353 01366 class QVFilterLaplace_uCharC1Worker: public QVWorker 01367 { 01368 public: 01369 QVFilterLaplace_uCharC1Worker(QString name = QString()); 01370 void iterate(); 01371 }; 01372 01385 class QVFilterLaplace_sFloatC1Worker: public QVWorker 01386 { 01387 public: 01388 QVFilterLaplace_sFloatC1Worker(QString name = QString()); 01389 void iterate(); 01390 }; 01391 01404 class QVFilterGauss_uCharC1Worker: public QVWorker 01405 { 01406 public: 01407 QVFilterGauss_uCharC1Worker(QString name = QString()); 01408 void iterate(); 01409 }; 01410 01423 class QVFilterGauss_sFloatC1Worker: public QVWorker 01424 { 01425 public: 01426 QVFilterGauss_sFloatC1Worker(QString name = QString()); 01427 void iterate(); 01428 }; 01429 01442 class QVFilterGauss_uCharC3Worker: public QVWorker 01443 { 01444 public: 01445 QVFilterGauss_uCharC3Worker(QString name = QString()); 01446 void iterate(); 01447 }; 01448 01461 class QVFilterGauss_sFloatC3Worker: public QVWorker 01462 { 01463 public: 01464 QVFilterGauss_sFloatC3Worker(QString name = QString()); 01465 void iterate(); 01466 }; 01467 01480 class QVFilterHipass_uCharC1Worker: public QVWorker 01481 { 01482 public: 01483 QVFilterHipass_uCharC1Worker(QString name = QString()); 01484 void iterate(); 01485 }; 01486 01499 class QVFilterHipass_uCharC3Worker: public QVWorker 01500 { 01501 public: 01502 QVFilterHipass_uCharC3Worker(QString name = QString()); 01503 void iterate(); 01504 }; 01505 01518 class QVFilterHipass_sFloatC1Worker: public QVWorker 01519 { 01520 public: 01521 QVFilterHipass_sFloatC1Worker(QString name = QString()); 01522 void iterate(); 01523 }; 01524 01537 class QVFilterHipass_sFloatC3Worker: public QVWorker 01538 { 01539 public: 01540 QVFilterHipass_sFloatC3Worker(QString name = QString()); 01541 void iterate(); 01542 }; 01543 01556 class QVFilterLowpass_uCharC1Worker: public QVWorker 01557 { 01558 public: 01559 QVFilterLowpass_uCharC1Worker(QString name = QString()); 01560 void iterate(); 01561 }; 01562 01575 class QVFilterLowpass_sFloatC1Worker: public QVWorker 01576 { 01577 public: 01578 QVFilterLowpass_sFloatC1Worker(QString name = QString()); 01579 void iterate(); 01580 }; 01581 01593 class QVSum_uCharC1Worker: public QVWorker 01594 { 01595 public: 01596 QVSum_uCharC1Worker(QString name = QString()); 01597 void iterate(); 01598 }; 01599 01611 class QVMean_uCharC1Worker: public QVWorker 01612 { 01613 public: 01614 QVMean_uCharC1Worker(QString name = QString()); 01615 void iterate(); 01616 }; 01617 01629 class QVMin_uCharC1Worker: public QVWorker 01630 { 01631 public: 01632 QVMin_uCharC1Worker(QString name = QString()); 01633 void iterate(); 01634 }; 01635 01647 class QVMin_sFloatC1Worker: public QVWorker 01648 { 01649 public: 01650 QVMin_sFloatC1Worker(QString name = QString()); 01651 void iterate(); 01652 }; 01653 01665 class QVMax_uCharC1Worker: public QVWorker 01666 { 01667 public: 01668 QVMax_uCharC1Worker(QString name = QString()); 01669 void iterate(); 01670 }; 01671 01683 class QVMax_sFloatC1Worker: public QVWorker 01684 { 01685 public: 01686 QVMax_sFloatC1Worker(QString name = QString()); 01687 void iterate(); 01688 }; 01689 01690 #endif |