1 #ifndef VIDEOANALYSIS_H 2 #define VIDEOANALYSIS_H 5 #include <QtWidgets/QTextEdit> 6 #include <QtWidgets/QCheckBox> 16 #include "MODULES/ModuleInterface.h" 17 #include "DRAW/drawInterface.h" 18 #include "paintView.h" 20 #define AppendToLog(s) VideoAnalysis::m_data->appendToLog(s) 21 #define pauseApp() VideoAnalysis::m_data->pauseApp() 104 void copyBytes(QImage *im1, QImage *im2);
193 bool m_timeStatsActive;
194 bool m_timeOutputToFile;
195 QString m_timeOutputFile;
207 static std::deque<paintView *> paintDeque;
210 static std::set<std::string> availableModules;
211 static std::map<std::string, ModuleType> moduleType;
212 static std::map<std::string, ModuleInterface *(*)(Datapool *)> moduleConstructor;
213 static std::deque<ModuleInterface *> moduleSequence;
214 static std::multimap<ModuleType, std::string, std::less<ModuleType> > modulesByType;
216 std::deque<ModuleInterface *>::iterator seq_it;
217 std::deque<ModuleInterface *>::iterator seq_it_end;
220 static std::set<QString> availableModels;
221 static std::map<QString, ReliabilitySingleModelInterface *(*)(int)> modelConstructor;
224 void updateTimeStats(
int index,
int elapsed_ms);
225 void initTimeStats();
226 void initTimeStatsForModule(
int index, QString name);
227 void printTimeStats();
230 void setFakeSegmentationFlag(
bool option);
231 void setFakeTrackingFlag(
bool option);
232 bool fakeSegmentationFlag;
233 bool fakeTrackingFlag;
249 QDomDocument *xmlAppConfig;
250 QDomElement rootAppConfig;
253 QDomDocument *xmlDisplayConfig;
254 QDomElement rootDisplayConfig;
257 QDomDocument *xmlConfig;
258 QDomElement rootConfig;
264 #endif // VIDEOANALYSIS_H bool setApplicationParameters()
Calls to the specific method of parameters lecture of application.
Definition: VideoAnalysis.cpp:193
bool setParameters()
Calls to specific method of parameters lecture of each module.
Definition: VideoAnalysis.cpp:387
bool init()
Calls to the specific method of initialization of each module.
Definition: VideoAnalysis.cpp:437
void deleteModuleFromSequence(std::deque< ModuleInterface * >::iterator *)
deleteModuleFromSequence
char * m_config_file
configuration file path.
Definition: VideoAnalysis.h:174
VideoAnalysis(char *i_config_file, Datapool *d)
Constructor.
Definition: VideoAnalysis.cpp:47
char * m_app_config_file
application configuration file path.
Definition: VideoAnalysis.h:179
char * m_default_module_seq
default Modules sequence file path.
Definition: VideoAnalysis.h:189
void resetModules()
reinitialize modules variables.
Definition: VideoAnalysis.cpp:172
char * m_display_config_file
display configuration file path.
Definition: VideoAnalysis.h:184
bool setAppParametersOverride()
Opens configuration file and searches for <GeneralApplicationParameters> tag and overrides the defaul...
Definition: VideoAnalysis.cpp:295
static void appendToLog(const QString &toLog)
This method is used to concatenate useful information in graphical interface about different events...
static bool isValidModelName(QString name)
Ensure that model name is registered as an instance.
Definition: VideoAnalysis.cpp:113
void setAvailableModels()
setAvailableModels is in charge of registration of each available model for later usage...
Definition: models.cpp:43
void setAvailableModules()
setAvailableModules is in charge of registration of each available module for later usage...
static void saveImageToDir(QImage *im, int frame, QString &dir)
Saves given image to a given directory.
Definition: VideoAnalysis.cpp:610
An object of this class is instantiated at main code, and this object is used by every class to push ...
Definition: Datapool.h:39
The VideoAnalysis class is in charge to manage each module to actual video processing.
Definition: VideoAnalysis.h:27
void setInitialModuleSequence()
sets initial module sequence according to specified in configuration xml (default_config.xml)
Definition: VideoAnalysis.cpp:118
void copyBytes(QImage *im1, QImage *im2)
Realize a memory copy from image im2 to image im1. Both images must have the same size...
Definition: VideoAnalysis.cpp:597
bool execute()
Calls to the specific method of processing of each module. This method is executed once per each rece...
Definition: VideoAnalysis.cpp:552
static Datapool * m_data
Pool of data that contains all the information of the system that is used and updated for different m...
Definition: VideoAnalysis.h:169
void insertModuleInSequence(std::deque< ModuleInterface * >::iterator *, std::string name)
insertModuleInSequence
void clearSequence()
clearSequence