#ifndef _ECHOSOUNDERCOMMAND_H
#define _ECHOSOUNDERCOMMAND_H

#include "MessageQueue.h"
#include <string.h>

class EchoSounderCommand : public MessageQueue {
  public:
  EchoSounderCommand( MessageQueue::Access access = NoAccess );
  ~EchoSounderCommand();

    enum EchoSounderCommands {
      None = 0,
      Start,
      MoveHead,
      ScanSector,
      Stop
    };

    struct Command 
    {
	  EchoSounderCommands _cmd;
	  double _cmdArg;

	  Command() {
	     _cmd = EchoSounderCommand::None;
	  };

	  Command( EchoSounderCommands cmd )
	  {
	     _cmd = cmd;
	  }

	  Command( EchoSounderCommands cmd, double cmdArg )
	  {
	     _cmd = cmd;
	     _cmdArg = cmdArg;
	  }
    };
    
  int read( Command *cmd );
  int write( Command *cmd );

  protected:

  private:

};

#endif
