summaryrefslogtreecommitdiff
path: root/dxr3interface.h
diff options
context:
space:
mode:
Diffstat (limited to 'dxr3interface.h')
-rw-r--r--dxr3interface.h63
1 files changed, 26 insertions, 37 deletions
diff --git a/dxr3interface.h b/dxr3interface.h
index 492c1e3..763ee44 100644
--- a/dxr3interface.h
+++ b/dxr3interface.h
@@ -33,17 +33,13 @@
#include "dxr3log.h"
#include "dxr3configdata.h"
#include "dxr3sysclock.h"
+#include "dxr3osd.h"
// ==================================
class cFixedLengthFrame;
// ==================================
-//! interafce to dxr3-card
-/*!
- cDxr3Interface is the interface to the dxr3
- driver and so to the card,
- so this is the layer between plugin and driver.
-*/
+// interafce to dxr3-card
class cDxr3Interface : public Singleton<cDxr3Interface>
{
public:
@@ -127,48 +123,41 @@ public:
private:
// file handles
- int m_fdControl; ///< filehandle for contol fifo of dxr3 card
- int m_fdVideo; ///< filehandle for video fifo of dxr3 card
- int m_fdAudio; ///< filehandle for audio fifo of dxr3 card
- int m_fdSpu; ///< filehandle for spu fifo of dxr3 card
+ int m_fdControl;
+ int m_fdVideo;
+ int m_fdSpu;
+ int m_fdAudio;
// dxr3 clock
- cDxr3SysClock* m_pClock; ///< clock used for sync
-
- uint32_t m_audioMode; ///< current used audiomode like analog or digital-PCM
- uint32_t m_audioChannelCount; ///< how many channles has the current audiostream
- uint32_t m_audioDataRate; ///< which rate is used for the current audiostream
- uint32_t m_audioSampleSize; ///< how big is the sample size for the current audiostream
- //int m_aspectDelayCounter;
- uint32_t m_aspectRatio; ///< current used aspect ratio
- uint32_t m_horizontal; ///< horizontal size of current videostream
- bool m_ExternalReleased; ///< is dxr3 used by e.g. mplayer?
- int m_volume; ///< volumevalue (0...255)
- uint32_t m_spuMode; ///< is spu enabled or disabled?
- bool m_AudioActive; ///< is audio active?
- bool m_VideoActive; ///< is video active?
- bool m_OverlayActive; ///< is overlay active?
+ cDxr3SysClock* m_pClock;
+
+ uint32_t m_audioChannelCount;
+ uint32_t m_audioDataRate;
+ int m_aspectDelayCounter;
+ uint32_t m_aspectRatio;
+ uint32_t m_horizontal;
+ uint32_t m_audioSampleSize;
+ uint32_t m_audioMode;
+ uint32_t m_spuMode;
+ bool m_ExternalReleased; // is dxr3 used by e.g. mplayer?
+ int m_volume;
+ bool m_AudioActive;
+ bool m_VideoActive;
+ bool m_OverlayActive;
// bcs
- em8300_bcs_t m_bcs; ///< BrightnessContrastSaturation values
+ em8300_bcs_t m_bcs;
+
+ // spu
+// cDxr3InterfaceSpu m_SpuInterface;
void UploadMicroCode();
void ConfigureDevice();
void ResampleVolume(short* pcmbuf, int size);
void Resuscitation();
- // access registers
- long ReadRegister(int registernum);
- void WriteRegister(int registernum, int val);
-
- // grab screen
- void GrabScreen(int w, int h, char** buf);
-
- // maybe we should copy this routine into em8300 driver
- char Dxr3CopyYUVData(int pos, int *dst, int length);
-
protected:
- static cMutex* m_pMutex; ///< mutex for dxr3interface
+ static cMutex* m_pMutex;
static void Lock() { cDxr3Interface::m_pMutex->Lock(); }
static void Unlock() { cDxr3Interface::m_pMutex->Unlock(); }