summaryrefslogtreecommitdiff
path: root/2003/i/buzz/src/automate/action.h
blob: 1ee7bd51e9b4221043f9490a3c7d31d35d063346 (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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
#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);
    };

    class ActionInitialisation : public Action
    {
    	public:
	  // Constructeur
	  ActionInitialisation (void);
	  // Destructeur
	  ~ActionInitialisation () ;
	  void start (void);
    }

    class ActionRechercher : public Action
    {
	 public:
	    // Constructeur
            ActionRechercher (void);
            // Destructeur
            ~ActionRechercher () ;
            void start (void);
    }

    class ActionRotation : public Action
    {
    	public:
	    // Constructeur
	    ActionRotation (void);
            // Destructeur
	    ~ActionRotation () ;
	    void start (void);					      
    }

    class ActionAtteindre : public Action
    {
    	public:
	    // Constructeur
	    ActionAtteindre (void);
	    // Destructeur
	    ~ActionAtteindre () ;
	    void start (void);
    }

    class ActionNbPaletPile : public Action
    {
    	public:
	    // Constructeur
	    ActionNbPaletPile (void);
	    // Destructeur
	    ~ActionNbPaletPile () ;
	    void start (void);
    }

    class ActionNbPaletStocke : public Action
    {
    	public:
	    // Constructeur
	    ActionNbPaletStocke (void);
	    // Destructeur
	    ~ActionNbPaletStocke () ;
	    void start (void);
    }

    class ActionMiseEnPlace : public Action
    {
     	public:
	    // Constructeur
	    ActionMiseEnPlace (void);
	    // Destructeur
	    ~ActionMiseEnPlace () ;
	    void start (void);
    }

    class ActionRepererCouleur : public Action
    {
    	int m_capteur;
    	public:
	    // Constructeur
	    ActionRepererCouleur (int);
	    // Destructeur
	    ~ActionRepererCouleur () ;
	    void start (void);
    }

    class ActionRetourner : public Action
    {
    	public:
	    // Constructeur
	    ActionRetourner (void);
	    // Destructeur
	    ~ActionRetourner () ;
	    void start (void);
    }
			
    class ActionAvancer : public Action
    {
    	int m_distance;
    	public:
	    // Constructeur
	    ActionAvancer (int);
	    // Destructeur
	    ~ActionAvancer () ;
	    void start (void);
    }

    class ActionReculer : public Action
    {
    	int m_distance;
    	public:
	    // Constructeur
	    ActionReculer (int);
	    // Destructeur
	    ~ActionReculer () ;
	    void start (void);
    }

    class ActionPlacerPince : public Action
    {
    	int m_position;
    	public:
	    // Constructeur
	    ActionPlacerPince (int);
	    // Destructeur
	    ~ActionPlacerPince () ;
	    void start (void);
    }
}

#endif // action_h