27 namespace application {
31 number_of_episodes(
"number_of_episodes", 0)
45 while (!APP_STATE->Quit()) {
48 if (!APP_STATE->isPaused()) {
50 if (APP_STATE->isSingleStepModeOn())
51 APP_STATE->pressPause();
54 APP_DATA_SYNCHRONIZATION_SCOPED_LOCK();
59 if (!performSingleStep()) {
67 LOG(LINFO) <<
"Reached last episode (" <<
episode <<
"). Terminating application...";
virtual void startNewEpisode()=0
An abstract class implementing basic functions for two-threaded, OpenGL-based applications. Introduces the execution phases that are typical for all learning/classification applications, imposes fine code granulation.
OpenGLEpisodicApplication(std::string node_name_)
unsigned long episode
Episode counter.
virtual void processingThread(void)
Function realizing the processing thread. Implements basic quit/pause/single step functionality...
mic::configuration::Property< long > number_of_episodes
virtual void finishCurrentEpisode()=0