EasyLocalpp  3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
componenttester.hh
Go to the documentation of this file.
1 #if !defined(_COMPONENT_TESTER_HH_)
2 #define _COMPONENT_TESTER_HH_
3 
4 namespace EasyLocal {
5 
6  namespace Debug {
7 
12  template <class Input, class Output, class State, typename CFtype = int>
14  {
15  public:
18  virtual void RunMainMenu(State& st) = 0;
20  virtual void ShowMenu() = 0;
24  virtual bool ExecuteChoice(State& st) = 0;
25  const std::string name;
26  virtual size_t Modality() const = 0;
27  protected:
28  ComponentTester(std::string name);
30  virtual ~ComponentTester() {}
31  };
32 
33  /*************************************************************************
34  * Implementation
35  *************************************************************************/
36 
45  template <class Input, class Output, class State, typename CFtype>
47  : name(e_name) {}
48  }
49 }
50 
51 
52 #endif // _COMPONENT_TESTER_HH_
virtual void RunMainMenu(State &st)=0
virtual bool ExecuteChoice(State &st)=0
virtual size_t Modality() const =0