summaryrefslogtreecommitdiff
path: root/2003/i/buzz/src/automate/action.h
blob: fcd0b2c3114e3b62c7c2565a12f5e08cf1c8f7b8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#ifndef action_h
#define action_h
// action.h
// buzz - Programme du robot Efrei Robotique I1-I2 2003
// Copyright (C) 2003 Nicolas Schodet

#include <string>

namespace Automate
{
    class Action
    {
      public:
	// Destructeur.
	virtual ~Action ();
	// Utilis�e une fois, lors de l'activation de l'action.
	virtual void start (void);
	// Execute l'action. Renvoie true si termin�e.
	virtual bool run (void);
	// Utilis�e une fois, lors de la d�sactivation de l'action.
	virtual void stop (void);
    };

    class ActionPrint : public Action
    {
	string m_s;
      public:
	// Constructeur.
	ActionPrint (string &s) : m_s (s) { }
	// Destructeur.
	~ActionPrint ();
	// Utilis�e une fois, lors de l'activation de l'action.
	void start (void);
    };
}

#endif // action_h