Fawkes API  Fawkes Development Version
robot_memory_test_thread.h
1 
2 /***************************************************************************
3  * robot_memory_test_thread.h - robot_memory_test
4  *
5  * Plugin created: Wed Aug 24 13:37:27 2016
6 
7  * Copyright 2016 Frederik Zwilling
8  *
9  ****************************************************************************/
10 
11 /* This program is free software; you can redistribute it and/or modify
12  * it under the terms of the GNU General Public License as published by
13  * the Free Software Foundation; either version 2 of the License, or
14  * (at your option) any later version.
15  *
16  * This program is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * GNU Library General Public License for more details.
20  *
21  * Read the full text in the LICENSE.GPL file in the doc directory.
22  */
23 
24 #ifndef _PLUGINS_ROBOT_MEMORY_TESTTHREAD_H_
25 #define _PLUGINS_ROBOT_MEMORY_TESTTHREAD_H_
26 
27 #include "plugins/robot-memory/aspect/robot_memory_aspect.h"
28 #include "robot_memory_test.h"
29 
30 #include <aspect/blackboard.h>
31 #include <aspect/blocked_timing.h>
32 #include <aspect/configurable.h>
33 #include <aspect/logging.h>
34 #include <core/threading/thread.h>
35 
36 #include <string>
37 
40  public fawkes::LoggingAspect,
44 {
45 public:
47 
48  virtual void init();
49  virtual void finalize();
50  virtual void loop();
51 
52  /** Stub to see name in backtrace for easier debugging. @see Thread::run() */
53 protected:
54  virtual void
55  run()
56  {
57  Thread::run();
58  }
59 
60 private:
61  int test_result_;
62 
63  //environment to make objects available for testing
64  RobotMemoryTestEnvironment *test_env_;
65 };
66 
67 #endif
Environment for running Tests of the RobotMemory Necessary for making object such as the robot memory...
gtests for the RobotMemory
virtual void run()
Stub to see name in backtrace for easier debugging.
virtual void finalize()
Finalize the thread.
virtual void init()
Initialize the thread.
virtual void loop()
Code to execute in the thread.
Thread aspect to access to BlackBoard.
Definition: blackboard.h:34
Thread aspect to use blocked timing.
Thread aspect to access configuration data.
Definition: configurable.h:33
Thread aspect to log output.
Definition: logging.h:33
Thread aspect to get access to a the RobotMemory.
Thread class encapsulation of pthreads.
Definition: thread.h:46