DisplayFourierTransformation example for C++ 5.0 and later

int MaxXHarmonic,MaxYHarmonic;

ILEADRasterProcess* m_pRasterProc= NULL;
CoCreateInstance(CLSID_LEADRasterProcess, NULL, CLSCTX_ALL, IID_ILEADRasterProcess, (void**)&m_pRasterProc);

ILEADRaster* m_pDisplayRaster= NULL;
CoCreateInstance(CLSID_LEADRaster, NULL, CLSCTX_ALL, IID_ILEADRaster, (void**)&m_pDisplayRaster);

m_pDisplayRaster->PutBitmap(m_LeadRasterView.GetRaster().GetBitmap());

MaxXHarmonic = m_LeadRasterView.GetRaster().GetBitmapWidth() / 4;
MaxYHarmonic = m_LeadRasterView.GetRaster().GetBitmapHeight() / 2;

m_pRasterProc->InitFourierTransformation(m_LeadRasterView.GetRaster());
m_pRasterProc->DiscreteFourierTransformation(m_LeadRasterView.GetRaster(),
                                          0,
                                          MaxXHarmonic,
                                          0,
                                          MaxYHarmonic,
                                          DFT_DFT |
                                          DFT_GRAY |
                                          DFT_RANGE |
                                          DFT_INSIDE_X |
                                          DFT_OUTSIDE_Y);

m_pRasterProc->DisplayFourierTransformation(m_pDisplayRaster, DSP_FT_MAG | DSP_FT_LOG);
m_LeadRasterView.GetRaster().SetBitmap(m_pDisplayRaster->GetBitmap());

m_pRasterProc->FreeFourierTransformation();
m_pDisplayRaster->Release();
m_pRasterProc->Release();