1 /****************************************************************************** 2 / 3 / File: Theater.h 4 / 5 / Description: ATI Rage Theater Video Decoder interface. 6 / 7 / Copyright 2001, Carlos Hasan 8 / 9 *******************************************************************************/ 10 11 #ifndef __THEATER100_H__ 12 #define __THEATER100_H__ 13 14 #include "Theater.h" 15 #include "Radeon.h" 16 #include "VIPPort.h" 17 18 class CTheater100 : public CTheater 19 { 20 public: 21 CTheater100(CRadeon & radeon, int device); 22 23 ~CTheater100(); 24 25 status_t InitCheck() const; 26 27 void Reset(); 28 29 void SetEnable(bool enable, bool vbi); 30 31 void SetStandard(theater_standard standard, theater_source source); 32 33 void SetSize(int hactive, int vactive); 34 35 void SetDeinterlace(bool deinterlace); 36 37 void SetSharpness(int sharpness); 38 39 void SetBrightness(int brightness); 40 41 void SetContrast(int contrast); 42 43 void SetSaturation(int saturation); 44 45 void SetHue(int hue); 46 47 int CurrentLine(); 48 49 void getActiveRange( theater_standard standard, CRadeonRect &rect ); 50 51 void getVBIRange( theater_standard standard, CRadeonRect &rect ); 52 53 void PrintToStream(); 54 55 private: 56 void SetClock(theater_standard standard, radeon_video_clock clock); 57 58 void SetADC(theater_standard standard, theater_source source); 59 60 void SetHSYNC(theater_standard standard); 61 62 void WaitHSYNC(); 63 64 void SetVSYNC(theater_standard standard); 65 66 void WaitVSYNC(); 67 68 void SetSyncGenerator(theater_standard standard); 69 70 void SetCombFilter(theater_standard standard, theater_source source); 71 72 void SetLuminanceProcessor(theater_standard standard); 73 74 void SetLuminanceLevels(theater_standard standard, int brightness, int contrast); 75 76 void SetChromaProcessor(theater_standard standard); 77 78 void SetChromaLevels(theater_standard standard, int saturation, int hue); 79 80 void SetClipWindow(theater_standard standard, bool vbi); 81 82 void SetScaler(theater_standard standard, int hactive, int vactive, bool deinterlace); 83 84 }; 85 86 #endif 87