c++03 does not support delegating constructors, fallback to init pattern

This commit is contained in:
Peter Rekdal Sunde
2015-04-16 18:42:22 +02:00
parent b491f61f01
commit 5f7628c82c
2 changed files with 16 additions and 14 deletions

View File

@@ -8,30 +8,23 @@ namespace alpr
PipelineData::PipelineData(Mat colorImage, Rect regionOfInterest, Config* config) PipelineData::PipelineData(Mat colorImage, Rect regionOfInterest, Config* config)
{ {
Mat grayImg; Mat grayImage;
if (colorImage.channels() > 2) if (colorImage.channels() > 2)
{ {
cvtColor(colorImage, grayImg, CV_BGR2GRAY); cvtColor(colorImage, grayImage, CV_BGR2GRAY);
} }
else else
{ {
grayImg = colorImage; grayImage = colorImage;
} }
PipelineData(colorImage, grayImg, regionOfInterest, config); this->init(colorImage, grayImage, regionOfInterest, config);
} }
PipelineData::PipelineData(Mat colorImage, Mat grayImg, Rect regionOfInterest, Config* config) PipelineData::PipelineData(Mat colorImage, Mat grayImg, Rect regionOfInterest, Config* config)
{ {
this->colorImg = colorImage; this->init(colorImage, grayImg, regionOfInterest, config);
this->grayImg = grayImg;
this->regionOfInterest = regionOfInterest;
this->config = config;
this->region_confidence = 0;
plate_inverted = false;
} }
PipelineData::~PipelineData() PipelineData::~PipelineData()
@@ -48,4 +41,12 @@ namespace alpr
thresholds.clear(); thresholds.clear();
} }
void PipelineData::init(cv::Mat colorImage, cv::Mat grayImage, cv::Rect regionOfInterest, Config *config) {
this->colorImg = colorImage;
this->grayImg = grayImage;
this->regionOfInterest = regionOfInterest;
this->config = config;
this->region_confidence = 0;
this->plate_inverted = false;
}
} }

View File

@@ -18,6 +18,7 @@ namespace alpr
PipelineData(cv::Mat colorImage, cv::Mat grayImage, cv::Rect regionOfInterest, Config* config); PipelineData(cv::Mat colorImage, cv::Mat grayImage, cv::Rect regionOfInterest, Config* config);
virtual ~PipelineData(); virtual ~PipelineData();
void init(cv::Mat colorImage, cv::Mat grayImage, cv::Rect regionOfInterest, Config* config);
void clearThresholds(); void clearThresholds();
// Inputs // Inputs