Logo Search packages:      
Sourcecode: camstream version File versions  Download package

CDCTPanel Class Reference

Inheritance diagram for CDCTPanel:


List of all members.

Detailed Description

This class will compress or decompress a YUV panel using the DCT.

This class does both forward and inverse DCT conversion of a YUV panel; the direction is specified at creation time in the constructor. In theory InverseDCT(ForwardDCT(yuv)) = yuv, that is, an image can be converted to DCT and back to its original.

Definition at line 7 of file DCTPanel.h.

Public Types

enum  PanelTypes { None, RGB, YUV420, Graph }

Public Slots

void DecrementUse ()
 Decrement usage counter.
void IncrementUse ()
 Increment usage counter.
virtual void RightClick (const QPoint &pos)
void SetSize (const QSize &ns)
 [overloaded] Set size, create tiles
void UpdatePanel ()
 Called when the base panel image is updated. Starts DCT calculation.


void ChangedImageSize (const QSize &new_size)
 Emitted when the principle image-size has been changed.
void ChangedToHidden ()
 Only emitted when the panel is turned off.
void ChangedToUnused ()
 Emitted when the usage counter drops to 0 (not used any more).
void ChangedToUsed ()
 Emitted when the usage counter increases to 1 (first use).
void ChangedToVisible ()
 Only emitted when the panel is turned on.
void ChangedUsage (int new_usage)
 Emitted whenever the usage counter changes.
void ChangedVisibility (bool new_visibility)
 The visibility has changed.
void ChangedVisibleSize (const QSize &new_size)
 Emitted when the visible size has been changed.
void Updated ()
 Emitted after the panel's data has been updated.

Public Member Functions

 CDCTPanel (CCamPanel *base_panel, bool inv, const char *name="dct.yuv", const char *desc="DCT conversion")
const CCamPanelcopy (const CCamPanel &src)
 Make deep copies of images, by overwriting buffers.
QString GetDescription () const
 Returns a short description of the panel.
virtual const QImage & GetImage (int n=0)
 Return image representing step.
QSize GetImageSize () const
 Return size of principle image. May be (0, 0).
QString GetName () const
 Returns unique name of panel.
int GetPanelType () const
 Returns the panel type.
const QPixmap & GetPixmap () const
 Return pixmap object.
virtual QDialog * GetPropertiesDialog () const
QSize GetVisibleSize () const
 Return size of drawable portion; may be (0, 0) when there's nothing to draw.
bool IsDrawable ()
int IsUsed ()
 Returns usage counter.
const CCamPaneloperator+= (const CCamPanel &add)
 Operator overload that will add the values of the buffers of plus to this panel.
CCamPaneloperator-= (const CCamPanel &minus)
virtual void paintEvent (QPaintEvent *)
 Paint visible representation of step.
void SetTiles (CCamTile *tilesy, CCamTile *tilesuv)
 Set tiles coordinates.
virtual QSize sizeHint () const
virtual QSizePolicy sizePolicy () const
 ~CDCTPanel ()

Protected Member Functions

void ConnectResizes (CCamPanel *parent)
 Make SIGNAL/SLOT connections to propagate updates.
void ConnectUsage (CCamPanel *parent)
 Make SIGNAL/SLOT connections for usage counting.
void CreateImages ()
 Create image buffers in ImgRGB, ImgY/U/V or Graph resp.
void SetImageSize (const QSize &new_size)
 Sets principle image size.
void SetVisibleSize (const QSize &new_size)
 Sets visible image size.

Protected Attributes

int half_h
 Half image height; set by SetImageSize();.
int half_w
 Half image width; set by SetImageSize();.
int image_h
 Image height; set by SetImageSize();.
int image_w
 Image width; set by SetImageSize();.
QImage ImgRGB
 Ready-to-use QImage object for RGB image.
QImage ImgU
 Ready-to-use QImage object for U data.
QImage ImgV
 Ready-to-use QImage object for V data.
QImage ImgY
 Ready-to-use QImage object for Y data.
bool MenuVisible
QPixmap PixGraph
 Ready-to-use QPixmap for graphs.
QPopupMenu * pMenu

Private Member Functions

void CreateTiles ()
 Initialize CCamTile structures depending on image size.

Private Attributes

int coeff [32]
bool Inverse
CCamTile * pTilesUV
CCamTile * pTilesY
int tiles_uv
int tiles_y
bool TilesDefault

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

Generated by  Doxygen 1.6.0   Back to index