VideoOutputQuartzView Class Reference

Inheritance diagram for VideoOutputQuartzView:

VoqvDesktop VoqvDock VoqvEmbedded VoqvFloater VoqvFullscreen VoqvMainWindow

List of all members.


Detailed Description

An abstract class for implementing QuickTime output viewports.

This class is further sub-classed for different Mac OS X UI output types. e.g. Main Window, Full Screen, Dock Icon, Finder/Desktop background

Definition at line 76 of file videoout_quartz.cpp.


Public Member Functions

 VideoOutputQuartzView (QuartzData *pData)
virtual ~VideoOutputQuartzView ()
virtual bool Init (void)
virtual void SetFrameSkip (int numskip)
virtual void Show (void)
virtual void InputChanged (int width, int height, float aspect, MythCodecID av_codec_id)
virtual void MoveResize (QRect newRect)
virtual void EmbedChanged (bool embedded)
 Subclasses that block the main window should suspend playback, hide windows, etc by overriding this method.

Protected Member Functions

virtual bool Begin (void)
 Set up the port and the QuickTime decompressor.
virtual void End (void)
 Clean up the codec.
virtual void Transform (QRect newRect)
 Build the transformation matrix to scale the video appropriately.
virtual void BlankScreen (bool deferred)
virtual bool BeginPort (void)=0
virtual void EndPort (void)=0

Protected Attributes

char * name
QuartzDataparentData
CGrafPtr thePort
QRect m_desired
ImageSequence theCodec
RgnHandle theMask
int frameSkip
int frameCounter
bool drawBlank
bool applyMoveResize
 Set if this view can use the aspect/fill/zoom calculations from the base class (which are passed in by MoveResize()), to rescale in the output rectangle via Transform().
QMutex viewLock

Constructor & Destructor Documentation

VideoOutputQuartzView::VideoOutputQuartzView ( QuartzData pData  ) 

Definition at line 198 of file videoout_quartz.cpp.

VideoOutputQuartzView::~VideoOutputQuartzView (  )  [virtual]

Definition at line 205 of file videoout_quartz.cpp.


Member Function Documentation

bool VideoOutputQuartzView::Init ( void   )  [virtual]

Definition at line 416 of file videoout_quartz.cpp.

Referenced by VideoOutputQuartz::EmbedInWidget().

void VideoOutputQuartzView::SetFrameSkip ( int  numskip  )  [virtual]

Definition at line 421 of file videoout_quartz.cpp.

Referenced by VideoOutputQuartz::Init().

void VideoOutputQuartzView::Show ( void   )  [virtual]

Reimplemented in VoqvFloater.

Definition at line 426 of file videoout_quartz.cpp.

Referenced by VoqvFloater::Show().

void VideoOutputQuartzView::InputChanged ( int  width,
int  height,
float  aspect,
MythCodecID  av_codec_id 
) [virtual]

Definition at line 459 of file videoout_quartz.cpp.

void VideoOutputQuartzView::MoveResize ( QRect  newRect  )  [virtual]

Definition at line 472 of file videoout_quartz.cpp.

void VideoOutputQuartzView::EmbedChanged ( bool  embedded  )  [virtual]

Subclasses that block the main window should suspend playback, hide windows, etc by overriding this method.

Reimplemented in VoqvMainWindow, VoqvFullscreen, and VoqvFloater.

Definition at line 480 of file videoout_quartz.cpp.

bool VideoOutputQuartzView::Begin ( void   )  [protected, virtual]

Set up the port and the QuickTime decompressor.

We assume that the parent has set up the pixel storage.

Reimplemented in VoqvMainWindow, and VoqvFloater.

Definition at line 212 of file videoout_quartz.cpp.

Referenced by VoqvFloater::Begin(), VoqvMainWindow::Begin(), VoqvFloater::EmbedChanged(), VoqvFullscreen::EmbedChanged(), VoqvMainWindow::EmbedChanged(), Init(), and InputChanged().

void VideoOutputQuartzView::End ( void   )  [protected, virtual]

void VideoOutputQuartzView::Transform ( QRect  newRect  )  [protected, virtual]

Build the transformation matrix to scale the video appropriately.

Definition at line 294 of file videoout_quartz.cpp.

Referenced by Begin(), MoveResize(), and VoqvFloater::ResizeChanged().

void VideoOutputQuartzView::BlankScreen ( bool  deferred  )  [protected, virtual]

Definition at line 376 of file videoout_quartz.cpp.

Referenced by Show(), and Transform().

virtual bool VideoOutputQuartzView::BeginPort ( void   )  [protected, pure virtual]

virtual void VideoOutputQuartzView::EndPort ( void   )  [protected, pure virtual]


Member Data Documentation

char* VideoOutputQuartzView::name [protected]

CGrafPtr VideoOutputQuartzView::thePort [protected]

ImageSequence VideoOutputQuartzView::theCodec [protected]

RgnHandle VideoOutputQuartzView::theMask [protected]

Definition at line 110 of file videoout_quartz.cpp.

Referenced by Begin(), End(), and VoqvFloater::ResizeChanged().

Definition at line 112 of file videoout_quartz.cpp.

Referenced by SetFrameSkip(), and Show().

Definition at line 113 of file videoout_quartz.cpp.

Referenced by Show().

Definition at line 114 of file videoout_quartz.cpp.

Referenced by BlankScreen(), and Show().

Set if this view can use the aspect/fill/zoom calculations from the base class (which are passed in by MoveResize()), to rescale in the output rectangle via Transform().

Definition at line 119 of file videoout_quartz.cpp.

Referenced by MoveResize(), VoqvFullscreen::VoqvFullscreen(), and VoqvMainWindow::VoqvMainWindow().

QMutex VideoOutputQuartzView::viewLock [protected]


The documentation for this class was generated from the following file:

Generated on Sat Dec 18 05:16:14 2010 for MythTV by  doxygen 1.5.5