1 #include <iostream>
2 
3 #include "imagesource_histogram.h"
4 
5 using namespace std;
6 
ImageSource_Histogram(ImageSource * source,ISHistogram & histogram)7 ImageSource_Histogram::ImageSource_Histogram(ImageSource *source,ISHistogram &histogram)
8 	: ImageSource(source), source(source), histogram(histogram)
9 {
10 	currentrow=-1;
11 	histogram.SetHistogramType(source->samplesperpixel,source->type);
12 }
13 
14 
~ImageSource_Histogram()15 ImageSource_Histogram::~ImageSource_Histogram()
16 {
17 	if(source)
18 		delete(source);
19 }
20 
21 
GetRow(int row)22 ISDataType *ImageSource_Histogram::GetRow(int row)
23 {
24 	ISDataType *srcdata=source->GetRow(row);
25 	if(row!=currentrow)
26 	{
27 		histogram.Record(srcdata,source->width);
28 		// Build histogram
29 	}
30 	currentrow=row;
31 	return(srcdata);
32 }
33 
34 
35