LoRenderResults.C File Reference

This file defines the non-inline member functions of the lobot::RenderResults class. More...

#include "Robots/LoBot/control/LoRenderResults.H"
#include "Robots/LoBot/ui/LoMainWindow.H"
#include "Robots/LoBot/LoApp.H"
#include "Robots/LoBot/slam/LoMap.H"
#include "Robots/LoBot/slam/LoOccGrid.H"
#include "Robots/LoBot/slam/LoSlamParams.H"
#include "Robots/LoBot/config/LoConfigHelpers.H"
#include "Robots/LoBot/metlog/LoExperiment.H"
#include "Robots/LoBot/metlog/LoMetlogParser.H"
#include "Robots/LoBot/thread/LoPause.H"
#include "Robots/LoBot/misc/LoExcept.H"
#include "Robots/LoBot/misc/LoRegistry.H"
#include "Robots/LoBot/misc/LoTypes.H"
#include "Robots/LoBot/misc/singleton.hh"
#include "Robots/LoBot/util/LoGL.H"
#include "Robots/LoBot/util/LoFile.H"
#include "Robots/LoBot/util/LoMath.H"
#include "Robots/LoBot/util/triple.hh"
#include "Util/log.H"
#include <GL/glu.h>
#include <GL/gl.h>
#include <boost/algorithm/string.hpp>
#include <fstream>
#include <sstream>
#include <string>
#include <stdio.h>
Include dependency graph for LoRenderResults.C:

Go to the source code of this file.

Defines

#define YY_EXTRA_TYPE   lobot::Experiment*

Functions

static void lobot::mpoint_to_vertex (const mPoint &p)
static void lobot::render_points (const PointList &L, const GLColor &color)

Detailed Description

This file defines the non-inline member functions of the lobot::RenderResults class.

Definition in file LoRenderResults.C.


Variable Documentation

bool m_bump

In addition to the robot's trajectory from start to goal, each experiment's metrics log or a dataset's results file records the following lists of points:

  • bump: where the robot bumped into objects
  • stop: where the emergency_stop behaviour was activated
  • extr: where the LRF-based extricate behaviour was activated
  • lgmd: where the LGMD-based extricate behaviour was activated

These flags can be used to turn the rendering of each of the above lists on or off. By default, the render_results behaviour renders all the lists.

Definition at line 194 of file LoRenderResults.C.

Referenced by lobot::Experiment::dump(), lobot::Experiment::point_list(), and lobot::Experiment::save().

GLColor m_bump_color

These settings specify colors to use for the different point lists.

Definition at line 198 of file LoRenderResults.C.

This behaviour can visualize the metrics logs for individual experiments as well as the results file containing the analysis for an entire dataset. In slideshow mode, when we get to a dataset results file after a long string of metlogs, we might want to pause the slideshow in order to be able to study the average-case behaviour in greater detail.

This flag allows us to do that. By default, it is off. When it is turned on and we reach a dataset's results file, the slideshow will pause. To restart the slideshow, press the 'p' key.

Definition at line 216 of file LoRenderResults.C.

This setting specifies the name of the directory under which all of the lobot and lomet programs' metrics logs and results files are stored. By default, this string is empty. If the render_results behaviour is active and this setting is not explicitly provided, the Robolocust application will report an error but continue to function (although it would not fulfill its intended purpose).

Definition at line 137 of file LoRenderResults.C.

This setting specifies a regex pattern for the names of metrics log and dataset analysis results files. We assume that the lobot and lomet programs were used to output metrics logs and results files for different experiments/datasets under different subdirectories of a root data directory. If this assumption is not valid, the render_results behaviour cannot and will not work properly.

When this behaviour starts up, it will search the data directory recursively for all files matching the name specified by this setting. The value of this setting should be a string and it is interpreted as an extended regular expression (try: man 7 regex). Thus, all files under the data directory whose names (relative to the data directory) match the regex specified by this setting will be included in the list of files to be loaded and visualized.

After finding the list of files to be visualized, the render_results behaviour will then proceed to load the first of these files. You may use the 'n' (next), 'f' (forward), '+' or space keys to advance to the next file in the list. To visit the previous file in the list, press 'b' (back) or '-'. When either end of the list is reached, the behaviour will continue by simply wrapping around to the other end.

This behaviour also supports saving the visualizations using the 's' (screenshot) key. When the 's' key is pressed, the behaviour will write an image to the same location as the metlog or results file currently being visualized. In fact, the screenshot's file name is simply the metlog or results file's name plus an extension.

The default extension is ".png". To save the screenshot as a JPEG file, set the "screen_capture_fmt" option in the "[ui]" section of the config file to "jpg". Other image formats are also supported; check the documentation of the screen_capture_fmt option for more information.

Definition at line 175 of file LoRenderResults.C.

The render_results behaviour supports a slideshow mode, wherein it periodically switches to the next metlog or results file in its list. The behaviour's update_frequency setting controls the rate at which the slideshow progresses.

Definition at line 204 of file LoRenderResults.C.

This field holds the screenshot image file name extension to be used. When the user presses the 's' key, a screenshot is saved to the same location as the results file being visualized with the same basename as the results file with this extension added.

Definition at line 181 of file LoRenderResults.C.

The number of milliseconds between successive iterations of this behaviour.

NOTE: Whereas the update_delay setting for most behaviours is a crucial parameter that can disrupt proper robot operation, it is only used to control the slideshow rate for the render_results behaviour, which is just an offline, visualization task.

Definition at line 225 of file LoRenderResults.C.

Generated on Sun May 8 08:16:57 2011 for iLab Neuromorphic Vision Toolkit by  doxygen 1.6.3