#ifndef MENU_H
#define MENU_H
#include "diseqc.h"
#include <vdr/plugin.h>

class config {
public:
  int ActualSource;
  int fd_frontend;
  int DvbCard;
  int AByte;
  int repeat;
  int Lat;
  int Long;
  int SN;
  int EW;
  int SLOF;
  int FrequLo;
  int FrequHi;
  int UseGotoX;
  int ShowInfo;
  config() {ActualSource=0; DvbCard=0; AByte=49; repeat=false; Lat=0; Long=0; SN=false; EW=true; SLOF=11700; FrequLo=9750; FrequHi=10600; UseGotoX=false; ShowInfo=false;};
};

class cMenuSetupRotor : public cMenuSetupPage {
private:
  int newDvbCard,/*newAByte,*/newrepeat,newLat,newLong,newSN,newEW,newSLOF,newFrequLo,newFrequHi,newUseGotoX,newShowInfo;
protected:
  virtual void Store(void);
public:
  cMenuSetupRotor(void);
};

class cMainMenuRotor : public cOsdMenu, public cThread {
private:
  int oldupdate,Position,Nr,Frequenz,Symbolrate,edw;
  char Pol;
  cChannel *OldChannel;
  bool m_Active,HasSwitched;
  char SS[700];
  char SNR[700];
  bool Signal(int Frequenz, char Pol, int Symbolrate);
  cFont::tPixelData CharData[256*35];
protected:
  virtual void Action(void);
public:
  cMainMenuRotor(void);
  ~cMainMenuRotor();
  virtual eOSState ProcessKey(eKeys Key);
};

extern config data;

#endif
