1
/***************************************************************************
2
ADM_vidConvolution.hxx - description
4
begin : Wed Apr 10 2002
5
copyright : (C) 2002 by mean
6
email : fixounet@free.fr
7
***************************************************************************/
9
/***************************************************************************
11
* This program is free software; you can redistribute it and/or modify *
12
* it under the terms of the GNU General Public License as published by *
13
* the Free Software Foundation; either version 2 of the License, or *
14
* (at your option) any later version. *
16
***************************************************************************/
19
typedef struct CONV_PARAM
26
//---------------------------------------------------------
27
class AVDMFastVideoConvolution:public AVDMGenericVideoStream
32
virtual uint8_t doLine(uint8_t *pred, uint8_t *cur, uint8_t *next, uint8_t *out, uint32_t w)
33
{ UNUSED_ARG(pred); UNUSED_ARG(cur); UNUSED_ARG(next); UNUSED_ARG(out); UNUSED_ARG(w); return 0;}
37
#warning FIXME: string constants cannot be used as char
38
virtual char *printConf(void) { return const_cast<char*>("ERROR");};
40
AVDMFastVideoConvolution( AVDMGenericVideoStream *in,CONFcouple *setup);
41
virtual ~AVDMFastVideoConvolution();
42
virtual uint8_t getFrameNumberNoAlloc(uint32_t frame, uint32_t *len,
43
ADMImage *data,uint32_t *flags);
44
virtual uint8_t configure( AVDMGenericVideoStream *instream) ;
46
virtual uint8_t getCoupledConf( CONFcouple **couples);
49
class AVDMFastVideoMean: public AVDMFastVideoConvolution
52
virtual uint8_t doLine(uint8_t *pred,
60
AVDMFastVideoMean( AVDMGenericVideoStream *in,CONFcouple *setup) :
61
AVDMFastVideoConvolution( in,setup) {};
62
virtual char *printConf(void);
67
class AVDMFastVideoGauss: public AVDMFastVideoConvolution
70
virtual uint8_t doLine(uint8_t *pred,
78
AVDMFastVideoGauss( AVDMGenericVideoStream *in,CONFcouple *setup) :
79
AVDMFastVideoConvolution( in,setup) {};
80
virtual char *printConf(void);
83
class AVDMFastVideoSharpen: public AVDMFastVideoConvolution
86
virtual uint8_t doLine(uint8_t *pred,
94
AVDMFastVideoSharpen( AVDMGenericVideoStream *in,CONFcouple *setup) :
95
AVDMFastVideoConvolution( in,setup) {};
96
virtual char *printConf(void);
100
class AVDMFastVideoMedian: public AVDMFastVideoConvolution
103
virtual uint8_t doLine(uint8_t *pred,
111
AVDMFastVideoMedian( AVDMGenericVideoStream *in,CONFcouple *setup) :
112
AVDMFastVideoConvolution( in,setup) {};
113
virtual char *printConf(void);