[an error occurred while processing this directive]
Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

hugin_base/algorithms/nona/NonaImageStitcher.h

Go to the documentation of this file.
00001 // -*- c-basic-offset: 4 -*-
00031 #ifndef _NONAIMAGESTITCHER_H
00032 #define _NONAIMAGESTITCHER_H
00033 
00034 #include <algorithm/StitcherAlgorithm.h>
00035 
00036 #include <nona/Stitcher.h>
00037 #include <nona/ImageRemapper.h>
00038 
00039 
00040 namespace HuginBase {
00041     
00042 
00046     class NonaImageStitcher : public ImageStitcherAlgorithm
00047     {
00048         protected:
00049             typedef Nona::SingleImageRemapper<DestImage,DestAlpha> ImageMapper;
00050         
00051         public:
00053             NonaImageStitcher(PanoramaData& panoramaData,
00054                               AppBase::ProgressDisplay* progressDisplay,
00055                               const PanoramaOptions& options,
00056                               const UIntSet& usedImages,
00057                               DestImage& panoImage, DestAlpha& alpha,
00058                               ImageMapper& remapper)
00059              : ImageStitcherAlgorithm(panoramaData, progressDisplay, options, usedImages, panoImage, alpha),
00060                o_remapper(remapper) 
00061             {};
00062         
00064             ~NonaImageStitcher() {};
00065 
00066                 
00067         protected:
00069             virtual bool runStitcher();
00070             
00071             
00072         protected:
00073             ImageMapper& o_remapper;
00074         
00075     };
00076     
00077     
00081     class NonaDifferenceImageStitcher : public NonaImageStitcher
00082     {
00083         public:
00085             NonaDifferenceImageStitcher(PanoramaData& panoramaData,
00086                                  AppBase::ProgressDisplay* progressDisplay,
00087                                  const PanoramaOptions& options,
00088                                  const UIntSet& usedImages,
00089                                  DestImage& panoImage, DestAlpha& alpha,
00090                                  ImageMapper& remapper)
00091              : NonaImageStitcher(panoramaData, progressDisplay, options, usedImages, panoImage, alpha, remapper)
00092             {};
00093             
00095             ~NonaDifferenceImageStitcher() {};
00096             
00097                 
00098         protected:
00100             virtual bool runStitcher();
00101             
00102     };
00103     
00104     
00108     class NonaHDRImageStitcher : public NonaImageStitcher
00109     {
00110         public:
00112             NonaHDRImageStitcher(PanoramaData& panoramaData,
00113                                  AppBase::ProgressDisplay* progressDisplay,
00114                                  const PanoramaOptions& options,
00115                                  const UIntSet& usedImages,
00116                                  DestImage& panoImage, DestAlpha& alpha, 
00117                                  ImageMapper& remapper)
00118              : NonaImageStitcher(panoramaData, progressDisplay, options, usedImages, panoImage, alpha, remapper)
00119             {};
00120             
00122             ~NonaHDRImageStitcher() {};
00123             
00124                 
00125         protected:
00127             virtual bool runStitcher();
00128         
00129     };
00130     
00131     
00132 } // namespace
00133 #endif // _H

Generated on Mon Sep 20 01:01:27 2010 for Hugintrunk by doxygen 1.3.9.1