SciDAVis
1.D4
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
scidavis
src
Convolution.h
Go to the documentation of this file.
1
/***************************************************************************
2
File : Convolution.h
3
Project : SciDAVis
4
--------------------------------------------------------------------
5
Copyright : (C) 2007 by Ion Vasilief
6
Email (use @ for *) : ion_vasilief*yahoo.fr
7
Description : Numerical convolution/deconvolution of data sets
8
9
***************************************************************************/
10
11
/***************************************************************************
12
* *
13
* This program is free software; you can redistribute it and/or modify *
14
* it under the terms of the GNU General Public License as published by *
15
* the Free Software Foundation; either version 2 of the License, or *
16
* (at your option) any later version. *
17
* *
18
* This program is distributed in the hope that it will be useful, *
19
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
20
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
21
* GNU General Public License for more details. *
22
* *
23
* You should have received a copy of the GNU General Public License *
24
* along with this program; if not, write to the Free Software *
25
* Foundation, Inc., 51 Franklin Street, Fifth Floor, *
26
* Boston, MA 02110-1301 USA *
27
* *
28
***************************************************************************/
29
#ifndef CONVOLUTION_H
30
#define CONVOLUTION_H
31
32
#include "
Filter.h
"
33
34
class
Convolution
:
public
Filter
35
{
36
Q_OBJECT
37
38
public
:
39
Convolution
(
ApplicationWindow
*parent,
Table
*t,
const
QString& signalColName,
const
QString& responseColName);
40
41
void
setDataFromTable
(
Table
*t,
const
QString& signalColName,
const
QString& responseColName);
43
int
signalDataSize
(){
return
d_n_signal
;};
45
int
responseDataSize
(){
return
d_n_response
;};
46
47
protected
:
49
void
addResultCurve
();
51
void
convlv
(
double
*sig,
int
n,
double
*dres,
int
m,
int
sign);
52
53
private
:
54
virtual
void
output
();
56
int
d_n_signal
;
58
int
d_n_response
;
59
};
60
61
class
Deconvolution
:
public
Convolution
62
{
63
Q_OBJECT
64
65
public
:
66
Deconvolution
(
ApplicationWindow
*parent,
Table
*t,
const
QString& realColName,
const
QString& imagColName = QString());
67
68
private
:
69
void
output
();
70
};
71
72
#endif
Generated by
1.8.1