source: Sophya/trunk/SophyaPI/PIext/pimgadapter.h@ 4041

Last change on this file since 4041 was 3572, checked in by cmv, 17 years ago

char* -> const char* pour regler les problemes de deprecated string const... + comparaison unsigned signed + suppression EVOL_PLANCK rz+cmv 07/02/2009

File size: 972 bytes
RevLine 
[165]1#ifndef PIMGADAPTER_SEEN
2#define PIMGADAPTER_SEEN
3
4#include "cimage.h"
5#include "parradapter.h"
6
7
8template <class T>
9class ImageAdapter : public P2DArrayAdapter {
10public:
11 ImageAdapter(Image<T>* img, bool ad=false) :
12 P2DArrayAdapter(img->XSize(), img->YSize())
[338]13 { aDel = ad; mImg = img;
14 DefineXYCoordinates(img->XOrg(), img->YOrg(), 1., 1. ); }
[165]15
16 virtual ~ImageAdapter() { if (aDel) delete mImg; }
[205]17 virtual double Value(int ix, int iy) { return((*mImg)(ix, iy)); }
[3520]18 virtual double MeanVal(int ix1, int ix2, int jy1, int jy2)
19 {
20 int ec;
21 if (ix1>ix2) { ec=ix1; ix1=ix2; ix2=ec; }
22 if (jy1>jy2) { ec=jy1; jy1=jy2; jy2=ec; }
23 double ss = 0.;
24 for(int j=jy1; j<=jy2; j++)
25 for(int i=ix1; i<=ix2; i++) ss += (double)((*mImg)(i, j));
26 ss /= (double)((jy2-jy1+1)*(ix2-ix1+1));
27 return ss;
28 }
[165]29
30protected :
31 bool aDel;
32 Image<T>* mImg;
33};
34
35#endif
Note: See TracBrowser for help on using the repository browser.