11 #ifndef ROOT_TSpectrumTransform
12 #define ROOT_TSpectrumTransform
18 class TSpectrumTransform :
public TNamed {
27 Double_t fFilterCoeff;
28 Double_t fEnhanceCoeff;
38 kTransformFourierWalsh =6,
39 kTransformFourierHaar =7,
40 kTransformWalshHaar =8,
41 kTransformCosWalsh =9,
42 kTransformCosHaar =10,
43 kTransformSinWalsh =11,
44 kTransformSinHaar =12,
49 TSpectrumTransform(Int_t size);
50 virtual ~TSpectrumTransform();
53 void BitReverse(Double_t *working_space,Int_t num);
54 void BitReverseHaar(Double_t *working_space,Int_t shift,Int_t num,Int_t start);
55 void Fourier(Double_t *working_space,Int_t num,Int_t hartley,Int_t direction,Int_t zt_clear);
56 Int_t GeneralExe(Double_t *working_space,Int_t zt_clear,Int_t num,Int_t degree,Int_t type);
57 Int_t GeneralInv(Double_t *working_space,Int_t num,Int_t degree,Int_t type);
58 void Haar(Double_t *working_space,Int_t num,Int_t direction);
59 void Walsh(Double_t *working_space,Int_t num);
62 void Enhance(
const Double_t *source, Double_t *destVector);
63 void FilterZonal(
const Double_t *source, Double_t *destVector);
64 void SetDirection(Int_t direction);
65 void SetEnhanceCoeff(Double_t enhanceCoeff);
66 void SetFilterCoeff(Double_t filterCoeff);
67 void SetRegion(Int_t xmin, Int_t xmax);
68 void SetTransformType(Int_t transType, Int_t degree);
69 void Transform(
const Double_t *source, Double_t *destVector);
71 ClassDef(TSpectrumTransform,1)