VAT  3.0
Video Analysis Tool
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
VideoAnalysis Class Reference

The VideoAnalysis class is in charge to manage each module to actual video processing. More...

#include <VideoAnalysis.h>

Inheritance diagram for VideoAnalysis:

Public Member Functions

 VideoAnalysis (char *i_config_file, Datapool *d)
 Constructor. More...
 
void resetModules ()
 reinitialize modules variables.
 
void resetModules (std::deque< std::string > &sequence)
 
bool setParameters ()
 Calls to specific method of parameters lecture of each module. More...
 
bool setApplicationParameters ()
 Calls to the specific method of parameters lecture of application. More...
 
bool setAppParametersOverride ()
 Opens configuration file and searches for <GeneralApplicationParameters> tag and overrides the default application parameters defined in config/app_config.xml. More...
 
bool init ()
 Calls to the specific method of initialization of each module. More...
 
bool execute ()
 Calls to the specific method of processing of each module. This method is executed once per each received image frame from images sequence. More...
 
void copyBytes (QImage *im1, QImage *im2)
 Realize a memory copy from image im2 to image im1. Both images must have the same size. More...
 
void setAvailableModules ()
 setAvailableModules is in charge of registration of each available module for later usage.
 
void setInitialModuleSequence ()
 sets initial module sequence according to specified in configuration xml (default_config.xml)
 
void deleteModuleFromSequence (std::deque< ModuleInterface * >::iterator *)
 deleteModuleFromSequence More...
 
void insertModuleInSequence (std::deque< ModuleInterface * >::iterator *, std::string name)
 insertModuleInSequence More...
 
void clearSequence ()
 clearSequence More...
 
void setAvailableModels ()
 setAvailableModels is in charge of registration of each available model for later usage.
 
void updateTimeStats (int index, int elapsed_ms)
 
void initTimeStats ()
 
void initTimeStatsForModule (int index, QString name)
 
void printTimeStats ()
 
void setFakeSegmentationFlag (bool option)
 
void setFakeTrackingFlag (bool option)
 

Static Public Member Functions

static void appendToLog (const QString &toLog)
 This method is used to concatenate useful information in graphical interface about different events. More...
 
static bool isValidModelName (QString name)
 Ensure that model name is registered as an instance. More...
 
static void saveImageToDir (QImage *im, int frame, QString &dir)
 Saves given image to a given directory. More...
 

Public Attributes

char * m_config_file
 configuration file path.
 
char * m_app_config_file
 application configuration file path.
 
char * m_display_config_file
 display configuration file path.
 
char * m_default_module_seq
 default Modules sequence file path.
 
bool m_timeStatsActive
 
bool m_timeOutputToFile
 
QString m_timeOutputFile
 
long m_timeAtFrame
 
int m_timeAtStep
 
bool m_firstTime
 
QFile m_timeFile
 
std::deque< ModuleInterface * >::iterator seq_it
 
std::deque< ModuleInterface * >::iterator seq_it_end
 
bool fakeSegmentationFlag
 
bool fakeTrackingFlag
 
QDomDocument * xmlAppConfig
 
QDomElement rootAppConfig
 
QDomDocument * xmlDisplayConfig
 
QDomElement rootDisplayConfig
 
QDomDocument * xmlConfig
 
QDomElement rootConfig
 
QString m_viewFile
 

Static Public Attributes

static Datapoolm_data = NULL
 Pool of data that contains all the information of the system that is used and updated for different modules.
 
static std::deque< paintView * > paintDeque
 
static std::set< std::string > availableModules
 
static std::map< std::string, ModuleType > moduleType
 
static std::map< std::string, ModuleInterface *(*)(Datapool *)> moduleConstructor
 
static std::deque< ModuleInterface * > moduleSequence
 
static std::multimap< ModuleType, std::string, std::less< ModuleType > > modulesByType
 
static std::set< QString > availableModels
 
static std::map< QString, ReliabilitySingleModelInterface *(*)(int)> modelConstructor
 

Detailed Description

The VideoAnalysis class is in charge to manage each module to actual video processing.

Constructor & Destructor Documentation

VideoAnalysis::VideoAnalysis ( char *  i_config_file,
Datapool d 
)

Constructor.

Parameters
i_config_filePath to configuration file.
dreference to shared data structure.

Member Function Documentation

static void VideoAnalysis::appendToLog ( const QString &  toLog)
static

This method is used to concatenate useful information in graphical interface about different events.

Parameters
toLogString of text to add.
void VideoAnalysis::clearSequence ( )

clearSequence

void VideoAnalysis::copyBytes ( QImage *  im1,
QImage *  im2 
)

Realize a memory copy from image im2 to image im1. Both images must have the same size.

Parameters
im1Destination image.
im2Origin image.
void VideoAnalysis::deleteModuleFromSequence ( std::deque< ModuleInterface * >::iterator *  )

deleteModuleFromSequence

bool VideoAnalysis::execute ( )

Calls to the specific method of processing of each module. This method is executed once per each received image frame from images sequence.

Returns
True if success.
bool VideoAnalysis::init ( )

Calls to the specific method of initialization of each module.

Returns
True if success.
void VideoAnalysis::insertModuleInSequence ( std::deque< ModuleInterface * >::iterator *  ,
std::string  name 
)

insertModuleInSequence

Parameters
name
static bool VideoAnalysis::isValidModelName ( QString  name)
static

Ensure that model name is registered as an instance.

Parameters
nameModel name.
Returns
True if model name exists.
void VideoAnalysis::resetModules ( std::deque< std::string > &  sequence)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Parameters
sequencereference to modules sequence to be reinitialized.
static void VideoAnalysis::saveImageToDir ( QImage *  im,
int  frame,
QString &  dir 
)
static

Saves given image to a given directory.

Parameters
imImage to be saved.
frameindex of frame.
dirdirectory where image is going to be stored. This directory is relative to application execution path.
bool VideoAnalysis::setApplicationParameters ( )

Calls to the specific method of parameters lecture of application.

Returns
True is success.
bool VideoAnalysis::setAppParametersOverride ( )

Opens configuration file and searches for <GeneralApplicationParameters> tag and overrides the default application parameters defined in config/app_config.xml.

Returns
True if success.
bool VideoAnalysis::setParameters ( )

Calls to specific method of parameters lecture of each module.

Returns
True if success.

The documentation for this class was generated from the following files: