LoMainWindow.C File Reference

The Lobot/Robolocust main window. More...

#include "Robots/LoBot/ui/LoMainWindow.H"
#include "Robots/LoBot/ui/LoRenderBuffer.H"
#include "Robots/LoBot/LoApp.H"
#include "Robots/LoBot/config/LoConfigHelpers.H"
#include "Robots/LoBot/thread/LoShutdown.H"
#include "Robots/LoBot/thread/LoPause.H"
#include "Robots/LoBot/util/LoFile.H"
#include "Robots/LoBot/util/LoString.H"
#include "Robots/LoBot/util/LoMath.H"
#include "Robots/LoBot/util/LoTime.H"
#include "Robots/LoBot/misc/LoExcept.H"
#include "Robots/LoBot/misc/singleton.hh"
#include "Util/log.H"
#include <GL/glut.h>
#include <boost/bind.hpp>
#include <iomanip>
#include <sstream>
#include <string>
#include <algorithm>
#include <functional>
#include <sys/stat.h>
Include dependency graph for LoMainWindow.C:

Go to the source code of this file.

Functions

static void lobot::fix_alpha_values (unsigned char *start, unsigned char *end)

Detailed Description

The Lobot/Robolocust main window.

Definition in file LoMainWindow.C.


Variable Documentation

This setting specifies the initial zoom level for drawables that support zoom/pan operations. Its value should be a floating point number. Here's how it works: a value of 1 (the default) will result in things being shown as-is. Fractional values zoom out the drawables, i.e., make it smaller; for example, a value of 0.5 would show the drawable in half-size. Values greater than unity zoom into the drawable, e.g., 2 would double the drawable's size.

Definition at line 177 of file LoMainWindow.C.

When screen capturing is turned on, Robolocust will write each frame to the directory specified by this setting. A time-stamp corresponding to when the Robolocust application was launched will be automatically to appended to this setting's value. The format of the time-stamp is "YYYYmmdd-HHMMSS". Thus, if the value of this setting is "/tmp/foo-" and the application was launched at midnight on January 1st, 2000, all frames will be written to "/tmp/foo-20000101-000000".

Definition at line 146 of file LoMainWindow.C.

Robolocust uses the OpenIL library (aka libdevil) to save frames to disk. Thus, it can write the individual frames in any of the file formats supported by OpenIL. This setting specifies the format to use for the individual screen capture frames. It should be a 3-letter string such "png", "jpg", "pnm", "tif", etc.

NOTE: Depending on how OpenIL is compiled and installed, some image file formats may not be supported. Generally, it is best to stick to the "png" or "jpg" formats. By default, Robolocust saves its frames as PNG files.

Definition at line 165 of file LoMainWindow.C.

int m_sc_len

Each frame saved by the screen capturing process will be named frame000.png, frame001.png, frame002.png, and so on. This setting specifies the number of digits in the numeric part of the frame name. The default is six digits. Thus, by default, frames will be named frame000000.png, frame000001.png, and so on.

Definition at line 153 of file LoMainWindow.C.

The Robolocust UI supports taking screenshots of itself after each iteration of the render cycle and then saving these screenshots as JPEG or PNG files. By default, the screen capture functionality is off. This flag turns it on.

Definition at line 136 of file LoMainWindow.C.

Users can specify whatever window title they want for the Robolocust UI.

Definition at line 130 of file LoMainWindow.C.

This setting specifies the frequency with which the Robolocust UI is updated. It is expected to be a time expressed in milliseconds. Thus, for some value N, the update will be performed once every N milliseconds.

Definition at line 190 of file LoMainWindow.C.

We can speed up or slow down the zoom by adjusting this factor. Higher values will result in amplifying mouse motion so that even a small movement results in a large zoom in or out; lower values will damp the mouse motion so that more dragging is required to achieve the desired zoom level.

Definition at line 184 of file LoMainWindow.C.

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