#ifndef DUMMYLEDPKG_H_DEF
#define DUMMYLEDPKG_H_DEF

#include "TelepatiPkg.h"

using namespace std;

/**implementa un messaggio Dummy per l'accesione dei Led.  E' un
   messaggio Dummy, creato sostanzialmente per scopi di debug e
   testing, ha il compito di far accendere un Led con un dato colore
   all'Aibo di destinazione.@n Struttura: e' composto dall'header
   standard piu' un byte rappresentante il colore da dare al o ai Led
   da accendere.
*/
class DummyLedPkg : public TelepatiPkg{
 public:
  /** Costruttore ordinario. @param a aibo di destinazione @param
      colore colore da dare al Led da accendere. @param ack true se richiesto l'Ack, false altrimenti.*/
  DummyLedPkg(int a, byte colore, bool ack=false);
  /**Costruisce l'oggetto a partire dall'array restituito da
     getMsg(). @param ptr puntatore all'array di byte. @see getMsg()*/
  DummyLedPkg(byte* ptr);
  
  /** Distruttore di Default.*/
  virtual ~DummyLedPkg();

  /** Clonatore. Restituisce un clone dell'oggetto su cui e'
      chiamato.*/  
  virtual TelepatiPkg* clone();
  /** Ritorna un array che rappresenta l'oggetto. Costruisce un array
      che rappresenta l'oggetto, l'array corrisponde ai dati spediti
      via rete. @return array di byte. @see DummyLedPkg(byte* ptr)*/
  byte* getMsg();  

  /** Colore del Led @return color colore del Led*/
  inline byte getColor() {return color;}; 
 protected:
  byte color; /**< Il colore da dare al Led*/
};

#endif
