#ifndef _PVR_SETUP_H_
#define _PVR_SETUP_H_

#include <sys/time.h>
#include <linux/types.h>
#include <linux/videodev.h>
#include <linux/videodev2.h>

struct valSet {
  v4l2_queryctrl queryctrl;
  int value;
  __u32 ctrl_class;
};

class cPvrSetup {
public:
  int HideMainMenuEntry;
  int LogLevel;
  int SliceVBI;
  valSet Brightness;
  valSet Contrast;
  valSet Saturation;
  valSet Hue;
  valSet AudioVolumeTV;
  valSet AudioVolumeFM;
  valSet AudioMute;
  valSet AudioSampling;
  valSet AudioEncoding;
  valSet StreamType;
  valSet VideoBitrateTV;
  valSet VideoBitrateFM;
  valSet VideoBitratePeak;
  valSet AudioBitrate;
  valSet BitrateMode;
  valSet AspectRatio;
  valSet BFrames;
  valSet GopSize;
  valSet GopClosure;
  valSet FilterSpatialMode;
  valSet FilterSpatial;
  valSet FilterLumaSpatialType;
  valSet FilterChromaSpatialType;
  valSet FilterTemporalMode;
  valSet FilterTemporal;
  valSet FilterMedianType;
  valSet FilterLumaMedianBottom;
  valSet FilterLumaMedianTop;
  valSet FilterChromaMedianBottom;
  valSet FilterChromaMedianTop;
  valSet VBIformat;
public:
  cPvrSetup(void);
  bool repeat_ReInitAll_after_next_encoderstop;
};

extern cPvrSetup PvrSetup;

#endif
