#ifndef receptivite_h #define receptivite_h // receptivite.h // buzz - Programme du robot Efrei Robotique I1-I2 2003 // Copyright (C) 2003 Nicolas Schodet #include "expression.h" namespace Automate { class Receptivite { public: // Destructeur. virtual ~Receptivite (); // Retourne la valeur de la receptivité. virtual bool test (void) = 0; }; class ReceptiviteBool : public Receptivite { bool m_bool; public: // Constructeur. ReceptiviteBool (bool _bool) { m_bool = _bool; } // Destructeur. ~ReceptiviteBool (); // Retourne la valeur de la receptivité. bool test (void); }; class ReceptiviteBoolOp : public Receptivite { char m_op; Receptivite *m_left, *m_right; public: // Constructeurs. ReceptiviteBoolOp (Receptivite *left, char op, Receptivite *right) { m_left = left; m_op = op; m_right = right; } ReceptiviteBoolOp (char op, Receptivite *right) { m_left = 0; m_op = op; m_right = right; } // Destructeur. ~ReceptiviteBoolOp (); // Retourne la valeur de la receptivité. bool test (void); }; class ReceptiviteCmpOp : public Receptivite { char m_op; Expression *m_left, *m_right; public: // Constructeurs. ReceptiviteCmpOp (Expression *left, char op, Expression *right) { m_left = left; m_op = op; m_right = right; } ReceptiviteCmpOp (char op, Expression *right) { m_left = 0; m_op = op; m_right = right; } // Destructeur. ~ReceptiviteCmpOp (); // Retourne la valeur de la receptivité. bool test (void); }; /*Ajout des conditions du grafcet, un objet par condition*/ class ReceptInit : public Receptivite { public: // Constructeur. ReceptInit (); // Destructeur. ~ReceptInit (); // Retourne la valeur de la receptivité. bool test (void); }; class ReceptPaletsTrouves : public Receptivite { public: // Constructeur. ReceptPaletsTrouves (); // Destructeur. ~ReceptPaletsTrouves (); // Retourne la valeur de la receptivité. bool test (void); }; class ReceptPalets : public Receptivite { int m_nbpalets; public: // Constructeur. ReceptPalets (int _nbpalets) { m_nbpalets = _nbpalets; } // Destructeur. ~ReceptPalets (); // Retourne la valeur de la receptivité. bool test (void); }; class ReceptStocke : public Receptivite { int m_nbstocke; public: // Constructeur. ReceptStocke (int _nbstocke) { m_nbstocke = _nbstocke; } // Destructeur. ~ReceptStocke (); // Retourne la valeur de la receptivité. bool test (void); }; class ReceptCouleurAdverse : public Receptivite { int m_capteur; public: // Constructeur. ReceptCouleurAdverse (int _capteur) { m_capteur = _capteur; } // Destructeur. ~ReceptCouleurAdverse (); // Retourne la valeur de la receptivité. bool test (void); }; class ReceptPinceAngle : public Receptivite { int m_angle; public: // Constructeur. ReceptPinceAngle (int _angle) { m_angle = _angle;} // Destructeur. ~ReceptPinceAngle (); // Retourne la valeur de la receptivité. bool test (void); }; class ReceptPincePos : public Receptivite { int m_position; public: // Constructeur. ReceptPincePos (int _position) { m_position = _position; } // Destructeur. ~ReceptPincePos (); // Retourne la valeur de la receptivité. bool test (void); }; class ReceptRobotRecule : public Receptivite { public: // Constructeur ReceptRobotRecule (); // Destructeur. ~ReceptRobotRecule (); // Retourne la valeur de la receptivité. bool test (void); }; class ReceptRobotAvance : public Receptivite { public: // Constructeur. ReceptRobotAvance (); // Destructeur. ~ReceptRobotAvance (); // Retourne la valeur de la receptivité. bool test (void); }; } #endif // receptivite_h