/* LICENSE:
  =========================================================================
    CMPack'04 Source Code Release for OPEN-R SDK 1.1.5-r2 for ERS7
    Copyright (C) 2004 Multirobot Lab [Project Head: Manuela Veloso]
    School of Computer Science, Carnegie Mellon University
    All rights reserved.
  ========================================================================= */

#ifndef _TrackerPacketDecoder_h
#define _TrackerPacketDecoder_h

class Gaussian2;
class RobotDataPacket;

#include "PacketDecoder.h"

/*------------------------------------------------------------------
CLASS
  TrackerPacketDecoder

DESCRIPTION
  Decodes world model data into the original data form.
------------------------------------------------------------------*/
class TrackerPacketDecoder : public PacketDecoder {
public:
  static const int BallPosition          = 0;
  static const int Scratch0              = 1;
  static const int Scratch1              = 2;
  static const int Scratch2              = 3;
  static const int Scratch3              = 4;
  static const int Scratch4              = 5;
  static const int Scratch5              = 6;
  static const int Scratch6              = 7;
  static const int Scratch7              = 8;
  static const int Scratch8              = 9;

  static const int NumGaussians=10;

  void decode(Gaussian2 *g,uchar **data);
  void decode(uchar *v,uchar **data);
  bool decode(Gaussian2 *objects,uchar * valid,RobotDataPacket *packet);
private:
};

#endif
