Files
zoneminder/src/zm_image_analyser.cpp
Aaron Kling c4683d90a9 Format code using astyle google format
Commands used:
astyle --style=google --indent=spaces=2 --keep-one-line-blocks src/*.cpp
astyle --style=google --indent=spaces=2 --keep-one-line-blocks src/*.h
2024-03-26 13:43:58 -05:00

59 lines
1.6 KiB
C++

#include "zm_image_analyser.h"
/*!\fn ImageAnalyser::ImageAnalyser(const ImageAnalyser& source)
* \param source is the object to copy
*/
ImageAnalyser::ImageAnalyser(const ImageAnalyser& source) {
m_Detectors = source.m_Detectors;
}
/*!\fn ImageAnalyser::operator=(const ImageAnalyser& source)
* \param source is the object to copy
*/
ImageAnalyser& ImageAnalyser::operator=(const ImageAnalyser& source) {
m_Detectors = source.m_Detectors;
return *this;
}
ImageAnalyser::~ImageAnalyser() {
for(DetectorsList::reverse_iterator It = m_Detectors.rbegin();
It != m_Detectors.rend();
++It)
delete *It;
}
/*!\fn ImageAnalyser::DoDetection(const Image &comp_image, Zone** zones, int n_numZones, Event::StringSetMap noteSetMap, std::string& det_cause)
* \param comp_image is the image to analyse
* \param zones is the zones array to analyse
* \param n_numZones is the number of zones
* \param noteSetMap is the map of events descriptions
* \param det_cause is a string describing detection cause
*/
int ImageAnalyser::DoDetection(const Image &comp_image, Zone** zones, int n_numZones, Event::StringSetMap noteSetMap, std::string& det_cause) {
Event::StringSet zoneSet;
int score = 0;
for(DetectorsList::iterator It = m_Detectors.begin();
It != m_Detectors.end();
++It) {
int detect_score = (*It)->Detect(comp_image, zones, n_numZones, zoneSet);
if (detect_score) {
score += detect_score;
noteSetMap[(*It)->getDetectionCause()] = zoneSet;
if (det_cause.length())
det_cause += ", ";
det_cause += (*It)->getDetectionCause();
}
}
return score;
}