#ifndef CANDDEADCHIPHANDLE_H
#define CANDDEADCHIPHANDLE_H

#include "Candidate/CandHandle.h"
#include "Navigation/XxxItr.h"

#include "CandDeadChip.h"
#include "RawChip.h"

class CandDeadChipHandle : public CandHandle
{

public:
  CandDeadChipHandle();
  CandDeadChipHandle(const CandDeadChipHandle& rhs);
  CandDeadChipHandle(CandDeadChip* candidate);
  virtual ~CandDeadChipHandle();
  virtual CandDeadChipHandle* DupHandle() const;

  Int_t GetEntries() const;
  RawChannelId GetChannelId() const;
  Int_t GetAdc() const;
  Int_t GetTdc() const;
  Int_t GetTdc0() const;
  Int_t GetErrorCode() const;
  Int_t GetTriggerRate() const;
  CandDeadChip::ChipStatus_t GetChipStatus() const;

  void SetChannelId(RawChannelId rawch);
  void SetAdc(Int_t adc);
  void SetTdc(Int_t tdc);
  void SetTdc0(Int_t tdc0);
  void SetErrorCode(Int_t errcode);
  void SetTriggerRate(Int_t trigrate);
  void SetChipStatus(CandDeadChip::ChipStatus_t status);

  Bool_t IsSameChip(RawChannelId rawch) const;
  void AddRawChip(RawChip* chip);

 private:
  void AddEntry();

  ClassDef(CandDeadChipHandle,1);
};

XXXITRDEF(CandDeadChipHandle)

#endif 

