From: 020535 <020535@07accd87-1e0b-0410-939d-c05d8a058e03> Date: Thu, 11 Jun 2009 21:55:04 +0000 (+0000) Subject: Removing the docs from svn. These are generatet using doxygen anyways. X-Git-Url: https://git.defcon.no/?a=commitdiff_plain;h=a65d4d45c78706c49bd443a392b4c378efbdc3b9;p=qopencamwidget Removing the docs from svn. These are generatet using doxygen anyways. git-svn-id: https://dilbert.hig.no/svn/student/020535/qopencamwidget/trunk@176 07accd87-1e0b-0410-939d-c05d8a058e03 --- diff --git a/doc/html/annotated.html b/doc/html/annotated.html deleted file mode 100644 index 259c2b6..0000000 --- a/doc/html/annotated.html +++ /dev/null @@ -1,33 +0,0 @@ - - -QOpenCamWidget: Class List - - - - - -
-

Class List

Here are the classes, structs, unions and interfaces with brief descriptions: - - -
QOpenCamWidget
View
-
-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/classQOpenCamWidget-members.html b/doc/html/classQOpenCamWidget-members.html deleted file mode 100644 index 69534bb..0000000 --- a/doc/html/classQOpenCamWidget-members.html +++ /dev/null @@ -1,47 +0,0 @@ - - -QOpenCamWidget: Member List - - - - - -
-

QOpenCamWidget Member List

This is the complete list of members for QOpenCamWidget, including all inherited members.

- - - - - - - - - - - - - - - - - -
canvasQOpenCamWidget [private]
captureQOpenCamWidget [private]
frametimerQOpenCamWidget [private]
grabCapture(int source)QOpenCamWidget
grabFrame(void)QOpenCamWidget [slot]
imageReady(QImage snapshot)QOpenCamWidget [signal]
Ipl2QImage(const IplImage *img)QOpenCamWidget
layoutQOpenCamWidget [private]
nextFrameQOpenCamWidget [private]
paintEvent(QPaintEvent *event)QOpenCamWidget
QOpenCamWidget(QWidget *parent=0)QOpenCamWidget
setSnapshotVisible(bool visible)QOpenCamWidget
startCapture(void)QOpenCamWidget
startSnap()QOpenCamWidget [slot]
triggerQOpenCamWidget [private]
trigger_activeQOpenCamWidget [private]
~QOpenCamWidget(void)QOpenCamWidget

-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/classQOpenCamWidget.html b/doc/html/classQOpenCamWidget.html deleted file mode 100644 index a9aecff..0000000 --- a/doc/html/classQOpenCamWidget.html +++ /dev/null @@ -1,530 +0,0 @@ - - -QOpenCamWidget: QOpenCamWidget Class Reference - - - - - -
-

QOpenCamWidget Class Reference

#include <qopencamwidget.h> -

- -

-List of all members. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Public Slots

void grabFrame (void)
 Grabs a frame and causes an update() when triggered.
void startSnap ()
 Trigger this slot to save a frame from the widget.

Signals

void imageReady (QImage snapshot)

Public Member Functions

 QOpenCamWidget (QWidget *parent=0)
 Consctructs a QWidget based widget for displaying video coming from an OpenCV capture source.
 ~QOpenCamWidget (void)
void paintEvent (QPaintEvent *event)
 A paint event is a request to repaint all or part of a widget.
void setSnapshotVisible (bool visible)
 Changes the visibility of the optional built-in "Take snapshot" button.
bool grabCapture (int source)
 Grabs an OpenCV video capture source.
void startCapture (void)
 Starts up grabbing of video frames.
QImage * Ipl2QImage (const IplImage *img)
 Converts from the OpenCV IplImage data structure to a QImage.

Private Attributes

CvCapture * capture
QTimer * frametimer
QImage * nextFrame
QLabel * canvas
QVBoxLayout * layout
QPushButton * trigger
bool trigger_active
-


Detailed Description

- -

Definition at line 29 of file qopencamwidget.h.

-

Constructor & Destructor Documentation

- -
-
- - - - - - - - - -
QOpenCamWidget::QOpenCamWidget (QWidget *  parent = 0  ) 
-
-
- -

-Consctructs a QWidget based widget for displaying video coming from an OpenCV capture source. -

-Including webcam data in a Qt application can be problematic, at least as long as Phonon does not support webcams, and the Phonon GStreamer backend only supports simple pipelines.

-This class solves the complexity of adding a webcam view, by using the cross-platform available OpenCV library.

-Limitations, i.e. reasons to read this code and reimplement, are: saving or streaming video is not really available (unless you do repeated timer-triggered connections to the startSnap slot), the widget size is identical to the video source dimensions (it resizes the wodget using setMinimuSize to the video dimensions, and does not handle resizing to sizes above this dimension.

-A brief summary of how to use this class:

 QOpenCamWidget *cw = new QOpenCamWidget(this);
- if ( cw->grabCapture(-1) ) {
-   cw->setSnapshotVisible(true);
-   cw->startCapture();
- }
- connect( cw, SIGNAL(imageReady(QImage)), this, SLOT(saveImage(QImage)));
-

-

Parameters:
- - -
*parent The parent widget containing this widget, defaults to NULL.
-
- -

Definition at line 60 of file qopencamwidget.cpp.

- -

References canvas, frametimer, layout, nextFrame, trigger, and trigger_active.

- -
-

- -

-
- - - - - - - - - -
QOpenCamWidget::~QOpenCamWidget (void   ) 
-
-
- -

- -

Definition at line 88 of file qopencamwidget.cpp.

- -

References canvas, capture, and trigger.

- -
-

-


Member Function Documentation

- -
-
- - - - - - - - - -
void QOpenCamWidget::paintEvent (QPaintEvent *  event  ) 
-
-
- -

-A paint event is a request to repaint all or part of a widget. -

-It can happen for one of the following reasons:

-

    -
  • repaint() or update() was invoked,
  • -
  • the widget was obscured and has now been uncovered, or
  • -
  • many other reasons.
  • -
-QOpenCamWidget uses the paintEvent to draw each frame onto the screen. The paintEvent itself is regularily triggered by explicit update() calls in QOpenCamWidget::grabFrame(). -

Definition at line 144 of file qopencamwidget.cpp.

- -

References canvas, and nextFrame.

- -
-

- -

-
- - - - - - - - - -
void QOpenCamWidget::setSnapshotVisible (bool  visible  ) 
-
-
- -

-Changes the visibility of the optional built-in "Take snapshot" button. -

-The widget contains a push-button that optionally can be displayed. When visible, this button is located at the bottom of the widget, and causes the SLOT QOpenCamWidget::startSnap to be triggered when clicked.

-

Parameters:
- - -
visible True makes the button display, and trigger, false turns the feature off. False, i.e. no button, is default.
-
- -

Definition at line 110 of file qopencamwidget.cpp.

- -

References layout, startSnap(), trigger, and trigger_active.

- -

Referenced by View::View().

- -
-

- -

-
- - - - - - - - - -
bool QOpenCamWidget::grabCapture (int  source  ) 
-
-
- -

-Grabs an OpenCV video capture source. -

-By grabbing a source, it is meant to open the capture source, and have it ready to start streaming/capturing frames. Returns true on success, false on error. The grabCapture is separated from the constructor and/or frame-grabbing, so that you may do the error-checking you really should do before proceeding.

-

Parameters:
- - -
source The OpenCV capture source enumeration index to open
-
- -

Definition at line 183 of file qopencamwidget.cpp.

- -

References canvas, and capture.

- -

Referenced by View::View().

- -
-

- -

-
- - - - - - - - - -
void QOpenCamWidget::startCapture (void   ) 
-
-
- -

-Starts up grabbing of video frames. -

-The actual grabbing and displaying of video frames is performed by a QTimer triggering the SLOT QOpenCamWidget::grabFrame(). startCapture() sets up the timer running this captureFrame loop.

-The SLOT QOpenCamWidget::startSnap() is used to get image frames out from the widget for other uses, like saving or processing. This function relies on the timer created and configured by startCapture(), and as such, this function is the only permitted way to start the actual capture/streaming of video from the source. -

Definition at line 217 of file qopencamwidget.cpp.

- -

References frametimer, grabFrame(), and trigger.

- -

Referenced by View::View().

- -
-

- -

-
- - - - - - - - - -
QImage * QOpenCamWidget::Ipl2QImage (const IplImage *  img  ) 
-
-
- -

-Converts from the OpenCV IplImage data structure to a QImage. -

-OpenCV uses a data strcuture calles IplImage, optimized for computer vision image processing tasks. This code was adapted from kcamwidget.cpp, part of the KDE SVN at playground/multimedia/kcam/kcamwidget.cpp

-In regard that the IplImage can be forced into a format that aligns well with a RBG888-format, the conversion becomes one of the shortes, simples IplImage->QImage I've seen.

-

Parameters:
- - -
*img The IplImage to be converted to a QImage.
-
- -

Definition at line 241 of file qopencamwidget.cpp.

- -

Referenced by grabFrame().

- -
-

- -

-
- - - - - - - - - -
void QOpenCamWidget::grabFrame (void   )  [slot]
-
-
- -

-Grabs a frame and causes an update() when triggered. -

-This is the SLOT that actually reads the video source and causes the widget to display live video. Preferably this slot will never be called my any other signal that a timeout() on the frametimer, which is controlled by QOpenCamWidget::startCapture() -

Definition at line 266 of file qopencamwidget.cpp.

- -

References capture, Ipl2QImage(), and nextFrame.

- -

Referenced by startCapture().

- -
-

- -

-
- - - - - - - - - -
void QOpenCamWidget::startSnap (void   )  [slot]
-
-
- -

-Trigger this slot to save a frame from the widget. -

-When this slot is triggered, the widgets capture loop is temporarily stopped, and the last displayed frame is "captured", and made available through the emitting of the class imageReady SIGNAL.

-With the "Take snapshot" button visible (setSnapshotVisible(true)), this SLOT is triggered when the user clicks on the trigger button. If you do not wish to use the internal trigger button, you will have to add a different mechanism to trigger this SLOT.

-It is possible, though I would not recommend, to use repeated triggering of this slot to do repeated frame-capture, and thus make a form of "Animation" or "Video" capture. -

Definition at line 306 of file qopencamwidget.cpp.

- -

References frametimer, imageReady(), and nextFrame.

- -

Referenced by setSnapshotVisible().

- -
-

- -

-
- - - - - - - - - -
void QOpenCamWidget::imageReady (QImage  snapshot  )  [signal]
-
-
- -

- -

Referenced by startSnap().

- -
-

-


Member Data Documentation

- -
-
- - - - -
CvCapture* QOpenCamWidget::capture [private]
-
-
- -

- -

Definition at line 35 of file qopencamwidget.h.

- -

Referenced by grabCapture(), grabFrame(), and ~QOpenCamWidget().

- -
-

- -

-
- - - - -
QTimer* QOpenCamWidget::frametimer [private]
-
-
- -

- -

Definition at line 36 of file qopencamwidget.h.

- -

Referenced by QOpenCamWidget(), startCapture(), and startSnap().

- -
-

- -

-
- - - - -
QImage* QOpenCamWidget::nextFrame [private]
-
-
- -

- -

Definition at line 37 of file qopencamwidget.h.

- -

Referenced by grabFrame(), paintEvent(), QOpenCamWidget(), and startSnap().

- -
-

- -

-
- - - - -
QLabel* QOpenCamWidget::canvas [private]
-
-
- -

- -

Definition at line 39 of file qopencamwidget.h.

- -

Referenced by grabCapture(), paintEvent(), QOpenCamWidget(), and ~QOpenCamWidget().

- -
-

- -

-
- - - - -
QVBoxLayout* QOpenCamWidget::layout [private]
-
-
- -

- -

Definition at line 40 of file qopencamwidget.h.

- -

Referenced by QOpenCamWidget(), and setSnapshotVisible().

- -
-

- -

-
- - - - -
QPushButton* QOpenCamWidget::trigger [private]
-
-
- -

- -

Definition at line 41 of file qopencamwidget.h.

- -

Referenced by QOpenCamWidget(), setSnapshotVisible(), startCapture(), and ~QOpenCamWidget().

- -
-

- -

-
- - - - -
bool QOpenCamWidget::trigger_active [private]
-
-
- -

- -

Definition at line 42 of file qopencamwidget.h.

- -

Referenced by QOpenCamWidget(), and setSnapshotVisible().

- -
-

-


The documentation for this class was generated from the following files: -
-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/classView-members.html b/doc/html/classView-members.html deleted file mode 100644 index ad6d22b..0000000 --- a/doc/html/classView-members.html +++ /dev/null @@ -1,33 +0,0 @@ - - -QOpenCamWidget: Member List - - - - - -
-

View Member List

This is the complete list of members for View, including all inherited members.

- - - -
saveImage(QImage image)View [slot]
View(QWidget *parent=0)View
~View(void)View

-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/classView.html b/doc/html/classView.html deleted file mode 100644 index cd6ff9e..0000000 --- a/doc/html/classView.html +++ /dev/null @@ -1,121 +0,0 @@ - - -QOpenCamWidget: View Class Reference - - - - - -
-

View Class Reference

#include <view.h> -

- -

-List of all members. - - - - - - - - - -

Public Slots

void saveImage (QImage image)

Public Member Functions

 View (QWidget *parent=0)
 ~View (void)
-


Detailed Description

- -

Definition at line 5 of file view.h.

-

Constructor & Destructor Documentation

- -
-
- - - - - - - - - -
View::View (QWidget *  parent = 0  ) 
-
- -

- -

-
- - - - - - - - - -
View::~View (void   ) 
-
-
- -

- -

Definition at line 74 of file view.cpp.

- -
-

-


Member Function Documentation

- -
-
- - - - - - - - - -
void View::saveImage (QImage  image  )  [slot]
-
-
- -

- -

Definition at line 78 of file view.cpp.

- -

Referenced by View().

- -
-

-


The documentation for this class was generated from the following files: -
-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/doxygen.css b/doc/html/doxygen.css deleted file mode 100644 index 22c4843..0000000 --- a/doc/html/doxygen.css +++ /dev/null @@ -1,473 +0,0 @@ -BODY,H1,H2,H3,H4,H5,H6,P,CENTER,TD,TH,UL,DL,DIV { - font-family: Geneva, Arial, Helvetica, sans-serif; -} -BODY,TD { - font-size: 90%; -} -H1 { - text-align: center; - font-size: 160%; -} -H2 { - font-size: 120%; -} -H3 { - font-size: 100%; -} -CAPTION { - font-weight: bold -} -DIV.qindex { - width: 100%; - background-color: #e8eef2; - border: 1px solid #84b0c7; - text-align: center; - margin: 2px; - padding: 2px; - line-height: 140%; -} -DIV.navpath { - width: 100%; - background-color: #e8eef2; - border: 1px solid #84b0c7; - text-align: center; - margin: 2px; - padding: 2px; - line-height: 140%; -} -DIV.navtab { - background-color: #e8eef2; - border: 1px solid #84b0c7; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} -TD.navtab { - font-size: 70%; -} -A.qindex { - text-decoration: none; - font-weight: bold; - color: #1A419D; -} -A.qindex:visited { - text-decoration: none; - font-weight: bold; - color: #1A419D -} -A.qindex:hover { - text-decoration: none; - background-color: #ddddff; -} -A.qindexHL { - text-decoration: none; - font-weight: bold; - background-color: #6666cc; - color: #ffffff; - border: 1px double #9295C2; -} -A.qindexHL:hover { - text-decoration: none; - background-color: #6666cc; - color: #ffffff; -} -A.qindexHL:visited { - text-decoration: none; - background-color: #6666cc; - color: #ffffff -} -A.el { - text-decoration: none; - font-weight: bold -} -A.elRef { - font-weight: bold -} -A.code:link { - text-decoration: none; - font-weight: normal; - color: #0000FF -} -A.code:visited { - text-decoration: none; - font-weight: normal; - color: #0000FF -} -A.codeRef:link { - font-weight: normal; - color: #0000FF -} -A.codeRef:visited { - font-weight: normal; - color: #0000FF -} -A:hover { - text-decoration: none; - background-color: #f2f2ff -} -DL.el { - margin-left: -1cm -} -.fragment { - font-family: monospace, fixed; - font-size: 95%; -} -PRE.fragment { - border: 1px solid #CCCCCC; - background-color: #f5f5f5; - margin-top: 4px; - margin-bottom: 4px; - margin-left: 2px; - margin-right: 8px; - padding-left: 6px; - padding-right: 6px; - padding-top: 4px; - padding-bottom: 4px; -} -DIV.ah { - background-color: black; - font-weight: bold; - color: #ffffff; - margin-bottom: 3px; - margin-top: 3px -} - -DIV.groupHeader { - margin-left: 16px; - margin-top: 12px; - margin-bottom: 6px; - font-weight: bold; -} -DIV.groupText { - margin-left: 16px; - font-style: italic; - font-size: 90% -} -BODY { - background: white; - color: black; - margin-right: 20px; - margin-left: 20px; -} -TD.indexkey { - background-color: #e8eef2; - font-weight: bold; - padding-right : 10px; - padding-top : 2px; - padding-left : 10px; - padding-bottom : 2px; - margin-left : 0px; - margin-right : 0px; - margin-top : 2px; - margin-bottom : 2px; - border: 1px solid #CCCCCC; -} -TD.indexvalue { - background-color: #e8eef2; - font-style: italic; - padding-right : 10px; - padding-top : 2px; - padding-left : 10px; - padding-bottom : 2px; - margin-left : 0px; - margin-right : 0px; - margin-top : 2px; - margin-bottom : 2px; - border: 1px solid #CCCCCC; -} -TR.memlist { - background-color: #f0f0f0; -} -P.formulaDsp { - text-align: center; -} -IMG.formulaDsp { -} -IMG.formulaInl { - vertical-align: middle; -} -SPAN.keyword { color: #008000 } -SPAN.keywordtype { color: #604020 } -SPAN.keywordflow { color: #e08000 } -SPAN.comment { color: #800000 } -SPAN.preprocessor { color: #806020 } -SPAN.stringliteral { color: #002080 } -SPAN.charliteral { color: #008080 } -SPAN.vhdldigit { color: #ff00ff } -SPAN.vhdlchar { color: #000000 } -SPAN.vhdlkeyword { color: #700070 } -SPAN.vhdllogic { color: #ff0000 } - -.mdescLeft { - padding: 0px 8px 4px 8px; - font-size: 80%; - font-style: italic; - background-color: #FAFAFA; - border-top: 1px none #E0E0E0; - border-right: 1px none #E0E0E0; - border-bottom: 1px none #E0E0E0; - border-left: 1px none #E0E0E0; - margin: 0px; -} -.mdescRight { - padding: 0px 8px 4px 8px; - font-size: 80%; - font-style: italic; - background-color: #FAFAFA; - border-top: 1px none #E0E0E0; - border-right: 1px none #E0E0E0; - border-bottom: 1px none #E0E0E0; - border-left: 1px none #E0E0E0; - margin: 0px; -} -.memItemLeft { - padding: 1px 0px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-top-style: solid; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - background-color: #FAFAFA; - font-size: 80%; -} -.memItemRight { - padding: 1px 8px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-top-style: solid; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - background-color: #FAFAFA; - font-size: 80%; -} -.memTemplItemLeft { - padding: 1px 0px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-top-style: none; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - background-color: #FAFAFA; - font-size: 80%; -} -.memTemplItemRight { - padding: 1px 8px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-top-style: none; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - background-color: #FAFAFA; - font-size: 80%; -} -.memTemplParams { - padding: 1px 0px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-top-style: solid; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - color: #606060; - background-color: #FAFAFA; - font-size: 80%; -} -.search { - color: #003399; - font-weight: bold; -} -FORM.search { - margin-bottom: 0px; - margin-top: 0px; -} -INPUT.search { - font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} -TD.tiny { - font-size: 75%; -} -a { - color: #1A41A8; -} -a:visited { - color: #2A3798; -} -.dirtab { - padding: 4px; - border-collapse: collapse; - border: 1px solid #84b0c7; -} -TH.dirtab { - background: #e8eef2; - font-weight: bold; -} -HR { - height: 1px; - border: none; - border-top: 1px solid black; -} - -/* Style for detailed member documentation */ -.memtemplate { - font-size: 80%; - color: #606060; - font-weight: normal; - margin-left: 3px; -} -.memnav { - background-color: #e8eef2; - border: 1px solid #84b0c7; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} -.memitem { - padding: 4px; - background-color: #eef3f5; - border-width: 1px; - border-style: solid; - border-color: #dedeee; - -moz-border-radius: 8px 8px 8px 8px; -} -.memname { - white-space: nowrap; - font-weight: bold; -} -.memdoc{ - padding-left: 10px; -} -.memproto { - background-color: #d5e1e8; - width: 100%; - border-width: 1px; - border-style: solid; - border-color: #84b0c7; - font-weight: bold; - -moz-border-radius: 8px 8px 8px 8px; -} -.paramkey { - text-align: right; -} -.paramtype { - white-space: nowrap; -} -.paramname { - color: #602020; - font-style: italic; - white-space: nowrap; -} -/* End Styling for detailed member documentation */ - -/* for the tree view */ -.ftvtree { - font-family: sans-serif; - margin:0.5em; -} -/* these are for tree view when used as main index */ -.directory { - font-size: 9pt; - font-weight: bold; -} -.directory h3 { - margin: 0px; - margin-top: 1em; - font-size: 11pt; -} - -/* The following two styles can be used to replace the root node title */ -/* with an image of your choice. Simply uncomment the next two styles, */ -/* specify the name of your image and be sure to set 'height' to the */ -/* proper pixel height of your image. */ - -/* .directory h3.swap { */ -/* height: 61px; */ -/* background-repeat: no-repeat; */ -/* background-image: url("yourimage.gif"); */ -/* } */ -/* .directory h3.swap span { */ -/* display: none; */ -/* } */ - -.directory > h3 { - margin-top: 0; -} -.directory p { - margin: 0px; - white-space: nowrap; -} -.directory div { - display: none; - margin: 0px; -} -.directory img { - vertical-align: -30%; -} -/* these are for tree view when not used as main index */ -.directory-alt { - font-size: 100%; - font-weight: bold; -} -.directory-alt h3 { - margin: 0px; - margin-top: 1em; - font-size: 11pt; -} -.directory-alt > h3 { - margin-top: 0; -} -.directory-alt p { - margin: 0px; - white-space: nowrap; -} -.directory-alt div { - display: none; - margin: 0px; -} -.directory-alt img { - vertical-align: -30%; -} - diff --git a/doc/html/doxygen.png b/doc/html/doxygen.png deleted file mode 100644 index f0a274b..0000000 Binary files a/doc/html/doxygen.png and /dev/null differ diff --git a/doc/html/files.html b/doc/html/files.html deleted file mode 100644 index 33f0314..0000000 --- a/doc/html/files.html +++ /dev/null @@ -1,36 +0,0 @@ - - -QOpenCamWidget: File Index - - - - - -
-

File List

Here is a list of all files with brief descriptions: - - - - - -
main.cpp [code]
qopencamwidget.cpp [code]
qopencamwidget.h [code]
view.cpp [code]
view.h [code]
-
-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/ftv2blank.png b/doc/html/ftv2blank.png deleted file mode 100644 index 493c3c0..0000000 Binary files a/doc/html/ftv2blank.png and /dev/null differ diff --git a/doc/html/ftv2doc.png b/doc/html/ftv2doc.png deleted file mode 100644 index f72999f..0000000 Binary files a/doc/html/ftv2doc.png and /dev/null differ diff --git a/doc/html/ftv2folderclosed.png b/doc/html/ftv2folderclosed.png deleted file mode 100644 index d6d0634..0000000 Binary files a/doc/html/ftv2folderclosed.png and /dev/null differ diff --git a/doc/html/ftv2folderopen.png b/doc/html/ftv2folderopen.png deleted file mode 100644 index bbe2c91..0000000 Binary files a/doc/html/ftv2folderopen.png and /dev/null differ diff --git a/doc/html/ftv2lastnode.png b/doc/html/ftv2lastnode.png deleted file mode 100644 index e7b9ba9..0000000 Binary files a/doc/html/ftv2lastnode.png and /dev/null differ diff --git a/doc/html/ftv2link.png b/doc/html/ftv2link.png deleted file mode 100644 index 14f3fed..0000000 Binary files a/doc/html/ftv2link.png and /dev/null differ diff --git a/doc/html/ftv2mlastnode.png b/doc/html/ftv2mlastnode.png deleted file mode 100644 index 09ceb6a..0000000 Binary files a/doc/html/ftv2mlastnode.png and /dev/null differ diff --git a/doc/html/ftv2mnode.png b/doc/html/ftv2mnode.png deleted file mode 100644 index 3254c05..0000000 Binary files a/doc/html/ftv2mnode.png and /dev/null differ diff --git a/doc/html/ftv2node.png b/doc/html/ftv2node.png deleted file mode 100644 index c9f06a5..0000000 Binary files a/doc/html/ftv2node.png and /dev/null differ diff --git a/doc/html/ftv2plastnode.png b/doc/html/ftv2plastnode.png deleted file mode 100644 index 0b07e00..0000000 Binary files a/doc/html/ftv2plastnode.png and /dev/null differ diff --git a/doc/html/ftv2pnode.png b/doc/html/ftv2pnode.png deleted file mode 100644 index 2001b79..0000000 Binary files a/doc/html/ftv2pnode.png and /dev/null differ diff --git a/doc/html/ftv2vertline.png b/doc/html/ftv2vertline.png deleted file mode 100644 index b330f3a..0000000 Binary files a/doc/html/ftv2vertline.png and /dev/null differ diff --git a/doc/html/functions.html b/doc/html/functions.html deleted file mode 100644 index 12325d4..0000000 --- a/doc/html/functions.html +++ /dev/null @@ -1,80 +0,0 @@ - - -QOpenCamWidget: Class Members - - - - - -
-Here is a list of all class members with links to the classes they belong to: -

-

-
-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/functions_func.html b/doc/html/functions_func.html deleted file mode 100644 index bb21470..0000000 --- a/doc/html/functions_func.html +++ /dev/null @@ -1,66 +0,0 @@ - - -QOpenCamWidget: Class Members - Functions - - - - - -
-  -

-

-
-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/functions_vars.html b/doc/html/functions_vars.html deleted file mode 100644 index 1964345..0000000 --- a/doc/html/functions_vars.html +++ /dev/null @@ -1,54 +0,0 @@ - - -QOpenCamWidget: Class Members - Variables - - - - - -
-  -

-

-
-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/globals.html b/doc/html/globals.html deleted file mode 100644 index c8020b5..0000000 --- a/doc/html/globals.html +++ /dev/null @@ -1,41 +0,0 @@ - - -QOpenCamWidget: Class Members - - - - - -
-Here is a list of all file members with links to the files they belong to: -

-

-
-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/globals_func.html b/doc/html/globals_func.html deleted file mode 100644 index 899a60d..0000000 --- a/doc/html/globals_func.html +++ /dev/null @@ -1,41 +0,0 @@ - - -QOpenCamWidget: Class Members - - - - - -
-  -

-

-
-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/index.html b/doc/html/index.html deleted file mode 100644 index 325a8bd..0000000 --- a/doc/html/index.html +++ /dev/null @@ -1,11 +0,0 @@ - - -QOpenCamWidget - - - - - <a href="main.html">Frames are disabled. Click here to go to the main page.</a> - - - diff --git a/doc/html/main.html b/doc/html/main.html deleted file mode 100644 index 5f03c44..0000000 --- a/doc/html/main.html +++ /dev/null @@ -1,25 +0,0 @@ - - -QOpenCamWidget: Main Page - - - - - -
-

QOpenCamWidget Documentation

-

-

-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/main_8cpp-source.html b/doc/html/main_8cpp-source.html deleted file mode 100644 index dbf4f5f..0000000 --- a/doc/html/main_8cpp-source.html +++ /dev/null @@ -1,57 +0,0 @@ - - -QOpenCamWidget: main.cpp Source File - - - - - -
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/main_8cpp.html b/doc/html/main_8cpp.html deleted file mode 100644 index 180ec03..0000000 --- a/doc/html/main_8cpp.html +++ /dev/null @@ -1,65 +0,0 @@ - - -QOpenCamWidget: main.cpp File Reference - - - - - -
-

main.cpp File Reference

#include <QtGui/QApplication>
-#include "view.h"
- -

-Go to the source code of this file. - - - - -

Functions

int main (int argc, char *argv[])
-


Function Documentation

- -
-
- - - - - - - - - - - - - - - - - - -
int main (int  argc,
char *  argv[] 
)
-
-
- -

- -

Definition at line 28 of file main.cpp.

- -
-

-

-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/qopencamwidget_8cpp-source.html b/doc/html/qopencamwidget_8cpp-source.html deleted file mode 100644 index 6086746..0000000 --- a/doc/html/qopencamwidget_8cpp-source.html +++ /dev/null @@ -1,217 +0,0 @@ - - -QOpenCamWidget: qopencamwidget.cpp Source File - - - - - -
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/qopencamwidget_8cpp.html b/doc/html/qopencamwidget_8cpp.html deleted file mode 100644 index 58696cc..0000000 --- a/doc/html/qopencamwidget_8cpp.html +++ /dev/null @@ -1,29 +0,0 @@ - - -QOpenCamWidget: qopencamwidget.cpp File Reference - - - - - -
-

qopencamwidget.cpp File Reference

#include "qopencamwidget.h"
- -

-Go to the source code of this file. - -
-

-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/qopencamwidget_8h-source.html b/doc/html/qopencamwidget_8h-source.html deleted file mode 100644 index 2380488..0000000 --- a/doc/html/qopencamwidget_8h-source.html +++ /dev/null @@ -1,87 +0,0 @@ - - -QOpenCamWidget: qopencamwidget.h Source File - - - - - -
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/qopencamwidget_8h.html b/doc/html/qopencamwidget_8h.html deleted file mode 100644 index 07f0115..0000000 --- a/doc/html/qopencamwidget_8h.html +++ /dev/null @@ -1,34 +0,0 @@ - - -QOpenCamWidget: qopencamwidget.h File Reference - - - - - -
-

qopencamwidget.h File Reference

#include <QtGui>
-#include <opencv/cv.h>
-#include <opencv/highgui.h>
- -

-Go to the source code of this file. - - - - -

Classes

class  QOpenCamWidget
-

-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/tab_b.gif b/doc/html/tab_b.gif deleted file mode 100644 index 0d62348..0000000 Binary files a/doc/html/tab_b.gif and /dev/null differ diff --git a/doc/html/tab_l.gif b/doc/html/tab_l.gif deleted file mode 100644 index 9b1e633..0000000 Binary files a/doc/html/tab_l.gif and /dev/null differ diff --git a/doc/html/tab_r.gif b/doc/html/tab_r.gif deleted file mode 100644 index ce9dd9f..0000000 Binary files a/doc/html/tab_r.gif and /dev/null differ diff --git a/doc/html/tabs.css b/doc/html/tabs.css deleted file mode 100644 index 95f00a9..0000000 --- a/doc/html/tabs.css +++ /dev/null @@ -1,102 +0,0 @@ -/* tabs styles, based on http://www.alistapart.com/articles/slidingdoors */ - -DIV.tabs -{ - float : left; - width : 100%; - background : url("tab_b.gif") repeat-x bottom; - margin-bottom : 4px; -} - -DIV.tabs UL -{ - margin : 0px; - padding-left : 10px; - list-style : none; -} - -DIV.tabs LI, DIV.tabs FORM -{ - display : inline; - margin : 0px; - padding : 0px; -} - -DIV.tabs FORM -{ - float : right; -} - -DIV.tabs A -{ - float : left; - background : url("tab_r.gif") no-repeat right top; - border-bottom : 1px solid #84B0C7; - font-size : x-small; - font-weight : bold; - text-decoration : none; -} - -DIV.tabs A:hover -{ - background-position: 100% -150px; -} - -DIV.tabs A:link, DIV.tabs A:visited, -DIV.tabs A:active, DIV.tabs A:hover -{ - color: #1A419D; -} - -DIV.tabs SPAN -{ - float : left; - display : block; - background : url("tab_l.gif") no-repeat left top; - padding : 5px 9px; - white-space : nowrap; -} - -DIV.tabs INPUT -{ - float : right; - display : inline; - font-size : 1em; -} - -DIV.tabs TD -{ - font-size : x-small; - font-weight : bold; - text-decoration : none; -} - - - -/* Commented Backslash Hack hides rule from IE5-Mac \*/ -DIV.tabs SPAN {float : none;} -/* End IE5-Mac hack */ - -DIV.tabs A:hover SPAN -{ - background-position: 0% -150px; -} - -DIV.tabs LI.current A -{ - background-position: 100% -150px; - border-width : 0px; -} - -DIV.tabs LI.current SPAN -{ - background-position: 0% -150px; - padding-bottom : 6px; -} - -DIV.navpath -{ - background : none; - border : none; - border-bottom : 1px solid #84B0C7; -} diff --git a/doc/html/tree.html b/doc/html/tree.html deleted file mode 100644 index a36c826..0000000 --- a/doc/html/tree.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - TreeView - - - - -
-

QOpenCamWidget

-
-

o+Class List

- -

o*Class Members

-

o+File List

- -

\*File Members

-
-
- diff --git a/doc/html/view_8cpp-source.html b/doc/html/view_8cpp-source.html deleted file mode 100644 index e11a248..0000000 --- a/doc/html/view_8cpp-source.html +++ /dev/null @@ -1,108 +0,0 @@ - - -QOpenCamWidget: view.cpp Source File - - - - - -
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/view_8cpp.html b/doc/html/view_8cpp.html deleted file mode 100644 index c3958a2..0000000 --- a/doc/html/view_8cpp.html +++ /dev/null @@ -1,30 +0,0 @@ - - -QOpenCamWidget: view.cpp File Reference - - - - - -
-

view.cpp File Reference

#include "view.h"
-#include "qopencamwidget.h"
- -

-Go to the source code of this file. - -
-

-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/view_8h-source.html b/doc/html/view_8h-source.html deleted file mode 100644 index 2f22f0d..0000000 --- a/doc/html/view_8h-source.html +++ /dev/null @@ -1,39 +0,0 @@ - - -QOpenCamWidget: view.h Source File - - - - - -
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/html/view_8h.html b/doc/html/view_8h.html deleted file mode 100644 index 49666b2..0000000 --- a/doc/html/view_8h.html +++ /dev/null @@ -1,32 +0,0 @@ - - -QOpenCamWidget: view.h File Reference - - - - - -
-

view.h File Reference

#include <QtGui>
- -

-Go to the source code of this file. - - - - -

Classes

class  View
-

-
Generated on Thu Jun 11 01:49:57 2009 for QOpenCamWidget by  - -doxygen 1.5.6
- - diff --git a/doc/man/man3/QOpenCamWidget.3 b/doc/man/man3/QOpenCamWidget.3 deleted file mode 100644 index 3758b7e..0000000 --- a/doc/man/man3/QOpenCamWidget.3 +++ /dev/null @@ -1,286 +0,0 @@ -.TH "QOpenCamWidget" 3 "11 Jun 2009" "QOpenCamWidget" \" -*- nroff -*- -.ad l -.nh -.SH NAME -QOpenCamWidget \- -.SH SYNOPSIS -.br -.PP -\fC#include \fP -.PP -.SS "Public Slots" - -.in +1c -.ti -1c -.RI "void \fBgrabFrame\fP (void)" -.br -.RI "\fIGrabs a frame and causes an update() when triggered. \fP" -.ti -1c -.RI "void \fBstartSnap\fP ()" -.br -.RI "\fITrigger this slot to save a frame from the widget. \fP" -.in -1c -.SS "Signals" - -.in +1c -.ti -1c -.RI "void \fBimageReady\fP (QImage snapshot)" -.br -.in -1c -.SS "Public Member Functions" - -.in +1c -.ti -1c -.RI "\fBQOpenCamWidget\fP (QWidget *parent=0)" -.br -.RI "\fIConsctructs a QWidget based widget for displaying video coming from an OpenCV capture source. \fP" -.ti -1c -.RI "\fB~QOpenCamWidget\fP (void)" -.br -.ti -1c -.RI "void \fBpaintEvent\fP (QPaintEvent *event)" -.br -.RI "\fIA paint event is a request to repaint all or part of a widget. \fP" -.ti -1c -.RI "void \fBsetSnapshotVisible\fP (bool visible)" -.br -.RI "\fIChanges the visibility of the optional built-in 'Take snapshot' button. \fP" -.ti -1c -.RI "bool \fBgrabCapture\fP (int source)" -.br -.RI "\fIGrabs an OpenCV video capture source. \fP" -.ti -1c -.RI "void \fBstartCapture\fP (void)" -.br -.RI "\fIStarts up grabbing of video frames. \fP" -.ti -1c -.RI "QImage * \fBIpl2QImage\fP (const IplImage *img)" -.br -.RI "\fIConverts from the OpenCV IplImage data structure to a QImage. \fP" -.in -1c -.SS "Private Attributes" - -.in +1c -.ti -1c -.RI "CvCapture * \fBcapture\fP" -.br -.ti -1c -.RI "QTimer * \fBframetimer\fP" -.br -.ti -1c -.RI "QImage * \fBnextFrame\fP" -.br -.ti -1c -.RI "QLabel * \fBcanvas\fP" -.br -.ti -1c -.RI "QVBoxLayout * \fBlayout\fP" -.br -.ti -1c -.RI "QPushButton * \fBtrigger\fP" -.br -.ti -1c -.RI "bool \fBtrigger_active\fP" -.br -.in -1c -.SH "Detailed Description" -.PP -Definition at line 29 of file qopencamwidget.h. -.SH "Constructor & Destructor Documentation" -.PP -.SS "QOpenCamWidget::QOpenCamWidget (QWidget * parent = \fC0\fP)" -.PP -Consctructs a QWidget based widget for displaying video coming from an OpenCV capture source. -.PP -Including webcam data in a Qt application can be problematic, at least as long as Phonon does not support webcams, and the Phonon GStreamer backend only supports simple pipelines. -.PP -This class solves the complexity of adding a webcam view, by using the cross-platform available OpenCV library. -.PP -Limitations, i.e. reasons to read this code and reimplement, are: saving or streaming video is not really available (unless you do repeated timer-triggered connections to the startSnap slot), the widget size is identical to the video source dimensions (it resizes the wodget using setMinimuSize to the video dimensions, and does not handle resizing to sizes above this dimension. -.PP -A brief summary of how to use this class: -.PP -.nf - QOpenCamWidget *cw = new QOpenCamWidget(this); - if ( cw->grabCapture(-1) ) { - cw->setSnapshotVisible(true); - cw->startCapture(); - } - connect( cw, SIGNAL(imageReady(QImage)), this, SLOT(saveImage(QImage))); - -.fi -.PP -.PP -\fBParameters:\fP -.RS 4 -\fI*parent\fP The parent widget containing this widget, defaults to NULL. -.RE -.PP - -.PP -Definition at line 60 of file qopencamwidget.cpp. -.PP -References canvas, frametimer, layout, nextFrame, trigger, and trigger_active. -.SS "QOpenCamWidget::~QOpenCamWidget (void)" -.PP -Definition at line 88 of file qopencamwidget.cpp. -.PP -References canvas, capture, and trigger. -.SH "Member Function Documentation" -.PP -.SS "void QOpenCamWidget::paintEvent (QPaintEvent * event)" -.PP -A paint event is a request to repaint all or part of a widget. -.PP -It can happen for one of the following reasons: -.PP -.PD 0 -.IP "\(bu" 2 -repaint() or update() was invoked, -.IP "\(bu" 2 -the widget was obscured and has now been uncovered, or -.IP "\(bu" 2 -many other reasons. -.PP -\fBQOpenCamWidget\fP uses the paintEvent to draw each frame onto the screen. The paintEvent itself is regularily triggered by explicit update() calls in \fBQOpenCamWidget::grabFrame()\fP. -.PP -Definition at line 144 of file qopencamwidget.cpp. -.PP -References canvas, and nextFrame. -.SS "void QOpenCamWidget::setSnapshotVisible (bool visible)" -.PP -Changes the visibility of the optional built-in 'Take snapshot' button. -.PP -The widget contains a push-button that optionally can be displayed. When visible, this button is located at the bottom of the widget, and causes the SLOT \fBQOpenCamWidget::startSnap\fP to be triggered when clicked. -.PP -\fBParameters:\fP -.RS 4 -\fIvisible\fP True makes the button display, and trigger, false turns the feature off. False, i.e. no button, is default. -.RE -.PP - -.PP -Definition at line 110 of file qopencamwidget.cpp. -.PP -References layout, startSnap(), trigger, and trigger_active. -.PP -Referenced by View::View(). -.SS "bool QOpenCamWidget::grabCapture (int source)" -.PP -Grabs an OpenCV video capture source. -.PP -By grabbing a source, it is meant to open the capture source, and have it ready to start streaming/capturing frames. Returns true on success, false on error. The grabCapture is separated from the constructor and/or frame-grabbing, so that you may do the error-checking you really should do before proceeding. -.PP -\fBParameters:\fP -.RS 4 -\fIsource\fP The OpenCV capture source enumeration index to open -.RE -.PP - -.PP -Definition at line 183 of file qopencamwidget.cpp. -.PP -References canvas, and capture. -.PP -Referenced by View::View(). -.SS "void QOpenCamWidget::startCapture (void)" -.PP -Starts up grabbing of video frames. -.PP -The actual grabbing and displaying of video frames is performed by a QTimer triggering the SLOT \fBQOpenCamWidget::grabFrame()\fP. \fBstartCapture()\fP sets up the timer running this captureFrame loop. -.PP -The SLOT \fBQOpenCamWidget::startSnap()\fP is used to get image frames out from the widget for other uses, like saving or processing. This function relies on the timer created and configured by \fBstartCapture()\fP, and as such, this function is the only permitted way to start the actual capture/streaming of video from the source. -.PP -Definition at line 217 of file qopencamwidget.cpp. -.PP -References frametimer, grabFrame(), and trigger. -.PP -Referenced by View::View(). -.SS "QImage * QOpenCamWidget::Ipl2QImage (const IplImage * img)" -.PP -Converts from the OpenCV IplImage data structure to a QImage. -.PP -OpenCV uses a data strcuture calles IplImage, optimized for computer vision image processing tasks. This code was adapted from kcamwidget.cpp, part of the KDE SVN at playground/multimedia/kcam/kcamwidget.cpp -.PP -In regard that the IplImage can be forced into a format that aligns well with a RBG888-format, the conversion becomes one of the shortes, simples IplImage->QImage I've seen. -.PP -\fBParameters:\fP -.RS 4 -\fI*img\fP The IplImage to be converted to a QImage. -.RE -.PP - -.PP -Definition at line 241 of file qopencamwidget.cpp. -.PP -Referenced by grabFrame(). -.SS "void QOpenCamWidget::grabFrame (void)\fC [slot]\fP" -.PP -Grabs a frame and causes an update() when triggered. -.PP -This is the SLOT that actually reads the video source and causes the widget to display live video. Preferably this slot will never be called my any other signal that a timeout() on the frametimer, which is controlled by \fBQOpenCamWidget::startCapture()\fP -.PP -Definition at line 266 of file qopencamwidget.cpp. -.PP -References capture, Ipl2QImage(), and nextFrame. -.PP -Referenced by startCapture(). -.SS "void QOpenCamWidget::startSnap (void)\fC [slot]\fP" -.PP -Trigger this slot to save a frame from the widget. -.PP -When this slot is triggered, the widgets capture loop is temporarily stopped, and the last displayed frame is 'captured', and made available through the emitting of the class imageReady SIGNAL. -.PP -With the 'Take snapshot' button visible (setSnapshotVisible(true)), this SLOT is triggered when the user clicks on the trigger button. If you do not wish to use the internal trigger button, you will have to add a different mechanism to trigger this SLOT. -.PP -It is possible, though I would not recommend, to use repeated triggering of this slot to do repeated frame-capture, and thus make a form of 'Animation' or 'Video' capture. -.PP -Definition at line 306 of file qopencamwidget.cpp. -.PP -References frametimer, imageReady(), and nextFrame. -.PP -Referenced by setSnapshotVisible(). -.SS "void QOpenCamWidget::imageReady (QImage snapshot)\fC [signal]\fP" -.PP -Referenced by startSnap(). -.SH "Member Data Documentation" -.PP -.SS "CvCapture* \fBQOpenCamWidget::capture\fP\fC [private]\fP" -.PP -Definition at line 35 of file qopencamwidget.h. -.PP -Referenced by grabCapture(), grabFrame(), and ~QOpenCamWidget(). -.SS "QTimer* \fBQOpenCamWidget::frametimer\fP\fC [private]\fP" -.PP -Definition at line 36 of file qopencamwidget.h. -.PP -Referenced by QOpenCamWidget(), startCapture(), and startSnap(). -.SS "QImage* \fBQOpenCamWidget::nextFrame\fP\fC [private]\fP" -.PP -Definition at line 37 of file qopencamwidget.h. -.PP -Referenced by grabFrame(), paintEvent(), QOpenCamWidget(), and startSnap(). -.SS "QLabel* \fBQOpenCamWidget::canvas\fP\fC [private]\fP" -.PP -Definition at line 39 of file qopencamwidget.h. -.PP -Referenced by grabCapture(), paintEvent(), QOpenCamWidget(), and ~QOpenCamWidget(). -.SS "QVBoxLayout* \fBQOpenCamWidget::layout\fP\fC [private]\fP" -.PP -Definition at line 40 of file qopencamwidget.h. -.PP -Referenced by QOpenCamWidget(), and setSnapshotVisible(). -.SS "QPushButton* \fBQOpenCamWidget::trigger\fP\fC [private]\fP" -.PP -Definition at line 41 of file qopencamwidget.h. -.PP -Referenced by QOpenCamWidget(), setSnapshotVisible(), startCapture(), and ~QOpenCamWidget(). -.SS "bool \fBQOpenCamWidget::trigger_active\fP\fC [private]\fP" -.PP -Definition at line 42 of file qopencamwidget.h. -.PP -Referenced by QOpenCamWidget(), and setSnapshotVisible(). - -.SH "Author" -.PP -Generated automatically by Doxygen for QOpenCamWidget from the source code. diff --git a/doc/man/man3/View.3 b/doc/man/man3/View.3 deleted file mode 100644 index 192b38a..0000000 --- a/doc/man/man3/View.3 +++ /dev/null @@ -1,51 +0,0 @@ -.TH "View" 3 "11 Jun 2009" "QOpenCamWidget" \" -*- nroff -*- -.ad l -.nh -.SH NAME -View \- -.SH SYNOPSIS -.br -.PP -\fC#include \fP -.PP -.SS "Public Slots" - -.in +1c -.ti -1c -.RI "void \fBsaveImage\fP (QImage image)" -.br -.in -1c -.SS "Public Member Functions" - -.in +1c -.ti -1c -.RI "\fBView\fP (QWidget *parent=0)" -.br -.ti -1c -.RI "\fB~View\fP (void)" -.br -.in -1c -.SH "Detailed Description" -.PP -Definition at line 5 of file view.h. -.SH "Constructor & Destructor Documentation" -.PP -.SS "View::View (QWidget * parent = \fC0\fP)" -.PP -Definition at line 32 of file view.cpp. -.PP -References QOpenCamWidget::grabCapture(), saveImage(), QOpenCamWidget::setSnapshotVisible(), and QOpenCamWidget::startCapture(). -.SS "View::~View (void)" -.PP -Definition at line 74 of file view.cpp. -.SH "Member Function Documentation" -.PP -.SS "void View::saveImage (QImage image)\fC [slot]\fP" -.PP -Definition at line 78 of file view.cpp. -.PP -Referenced by View(). - -.SH "Author" -.PP -Generated automatically by Doxygen for QOpenCamWidget from the source code. diff --git a/doc/man/man3/main.cpp.3 b/doc/man/man3/main.cpp.3 deleted file mode 100644 index d14a23d..0000000 --- a/doc/man/man3/main.cpp.3 +++ /dev/null @@ -1,28 +0,0 @@ -.TH "main.cpp" 3 "11 Jun 2009" "QOpenCamWidget" \" -*- nroff -*- -.ad l -.nh -.SH NAME -main.cpp \- -.SH SYNOPSIS -.br -.PP -\fC#include \fP -.br -\fC#include 'view.h'\fP -.br - -.SS "Functions" - -.in +1c -.ti -1c -.RI "int \fBmain\fP (int argc, char *argv[])" -.br -.in -1c -.SH "Function Documentation" -.PP -.SS "int main (int argc, char * argv[])" -.PP -Definition at line 28 of file main.cpp. -.SH "Author" -.PP -Generated automatically by Doxygen for QOpenCamWidget from the source code. diff --git a/doc/man/man3/qopencamwidget.cpp.3 b/doc/man/man3/qopencamwidget.cpp.3 deleted file mode 100644 index b7cc0c4..0000000 --- a/doc/man/man3/qopencamwidget.cpp.3 +++ /dev/null @@ -1,14 +0,0 @@ -.TH "qopencamwidget.cpp" 3 "11 Jun 2009" "QOpenCamWidget" \" -*- nroff -*- -.ad l -.nh -.SH NAME -qopencamwidget.cpp \- -.SH SYNOPSIS -.br -.PP -\fC#include 'qopencamwidget.h'\fP -.br - -.SH "Author" -.PP -Generated automatically by Doxygen for QOpenCamWidget from the source code. diff --git a/doc/man/man3/qopencamwidget.h.3 b/doc/man/man3/qopencamwidget.h.3 deleted file mode 100644 index c9c487d..0000000 --- a/doc/man/man3/qopencamwidget.h.3 +++ /dev/null @@ -1,25 +0,0 @@ -.TH "qopencamwidget.h" 3 "11 Jun 2009" "QOpenCamWidget" \" -*- nroff -*- -.ad l -.nh -.SH NAME -qopencamwidget.h \- -.SH SYNOPSIS -.br -.PP -\fC#include \fP -.br -\fC#include \fP -.br -\fC#include \fP -.br - -.SS "Classes" - -.in +1c -.ti -1c -.RI "class \fBQOpenCamWidget\fP" -.br -.in -1c -.SH "Author" -.PP -Generated automatically by Doxygen for QOpenCamWidget from the source code. diff --git a/doc/man/man3/view.cpp.3 b/doc/man/man3/view.cpp.3 deleted file mode 100644 index 8a03c21..0000000 --- a/doc/man/man3/view.cpp.3 +++ /dev/null @@ -1,16 +0,0 @@ -.TH "view.cpp" 3 "11 Jun 2009" "QOpenCamWidget" \" -*- nroff -*- -.ad l -.nh -.SH NAME -view.cpp \- -.SH SYNOPSIS -.br -.PP -\fC#include 'view.h'\fP -.br -\fC#include 'qopencamwidget.h'\fP -.br - -.SH "Author" -.PP -Generated automatically by Doxygen for QOpenCamWidget from the source code. diff --git a/doc/man/man3/view.h.3 b/doc/man/man3/view.h.3 deleted file mode 100644 index 2014d1b..0000000 --- a/doc/man/man3/view.h.3 +++ /dev/null @@ -1,21 +0,0 @@ -.TH "view.h" 3 "11 Jun 2009" "QOpenCamWidget" \" -*- nroff -*- -.ad l -.nh -.SH NAME -view.h \- -.SH SYNOPSIS -.br -.PP -\fC#include \fP -.br - -.SS "Classes" - -.in +1c -.ti -1c -.RI "class \fBView\fP" -.br -.in -1c -.SH "Author" -.PP -Generated automatically by Doxygen for QOpenCamWidget from the source code. diff --git a/doc/rtf/refman.rtf b/doc/rtf/refman.rtf deleted file mode 100644 index aff5083..0000000 --- a/doc/rtf/refman.rtf +++ /dev/null @@ -1,1407 +0,0 @@ -{\rtf1\ansi\ansicpg1252\uc1 \deff0\deflang1033\deflangfe1033 -{\comment Begining font list} -{\fonttbl {\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} -{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;} -{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;} -{\f3\froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;} -} -{\comment begin colors} -{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;} -{\comment Beginning style list} -{\stylesheet -{\widctlpar\adjustright \fs20\cgrid \snext0 Normal;} -{\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid \sbasedon0 \snext0 heading 1;} -{\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid \sbasedon0 \snext0 heading 2;} -{\s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid \sbasedon0 \snext0 heading 3;} -{\s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext0 heading 4;}{\*\cs10 \additive Default Paragraph Font;} -{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext0 heading 5;}{\*\cs10 \additive Default Paragraph Font;} -{\s15\qc\sb240\sa60\widctlpar\outlinelevel0\adjustright \b\f1\fs32\kerning28\cgrid \sbasedon0 \snext15 Title;} -{\s16\qc\sa60\widctlpar\outlinelevel1\adjustright \f1\cgrid \sbasedon0 \snext16 Subtitle;} -{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid \sbasedon0 \snext17 BodyText;} -{\s18\widctlpar\fs22\cgrid \sbasedon0 \snext18 DenseText;} -{\s28\widctlpar\tqc\tx4320\tqr\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext28 header;} -{\s29\widctlpar\tqc\tx4320\tqr\tx8640\qr\adjustright \fs20\cgrid \sbasedon0 \snext29 footer;} -{\s30\li360\sa60\sb120\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext30 GroupHeader;} -{\s40\li0\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext41 Code Example 0;} -{\s41\li360\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext42 Code Example 1;} -{\s42\li720\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext43 Code Example 2;} -{\s43\li1080\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext44 Code Example 3;} -{\s44\li1440\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext45 Code Example 4;} -{\s45\li1800\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext46 Code Example 5;} -{\s46\li2160\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext47 Code Example 6;} -{\s47\li2520\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext48 Code Example 7;} -{\s48\li2880\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext49 Code Example 8;} -{\s49\li3240\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext49 Code Example 9;} -{\s50\li0\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext51 List Continue 0;} -{\s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext52 List Continue 1;} -{\s52\li720\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext53 List Continue 2;} -{\s53\li1080\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext54 List Continue 3;} -{\s54\li1440\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext55 List Continue 4;} -{\s55\li1800\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext56 List Continue 5;} -{\s56\li2160\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext57 List Continue 6;} -{\s57\li2520\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext58 List Continue 7;} -{\s58\li2880\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext59 List Continue 8;} -{\s59\li3240\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext59 List Continue 9;} -{\s60\li0\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext61 DescContinue 0;} -{\s61\li360\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext62 DescContinue 1;} -{\s62\li720\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext63 DescContinue 2;} -{\s63\li1080\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext64 DescContinue 3;} -{\s64\li1440\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext65 DescContinue 4;} -{\s65\li1800\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext66 DescContinue 5;} -{\s66\li2160\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext67 DescContinue 6;} -{\s67\li2520\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext68 DescContinue 7;} -{\s68\li2880\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext69 DescContinue 8;} -{\s69\li3240\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext69 DescContinue 9;} -{\s70\li0\sa30\sb30\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext81 LatexTOC 0;} -{\s71\li360\sa27\sb27\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext82 LatexTOC 1;} -{\s72\li720\sa24\sb24\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext83 LatexTOC 2;} -{\s73\li1080\sa21\sb21\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext84 LatexTOC 3;} -{\s74\li1440\sa18\sb18\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext85 LatexTOC 4;} -{\s75\li1800\sa15\sb15\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext86 LatexTOC 5;} -{\s76\li2160\sa12\sb12\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext87 LatexTOC 6;} -{\s77\li2520\sa9\sb9\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext88 LatexTOC 7;} -{\s78\li2880\sa6\sb6\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext89 LatexTOC 8;} -{\s79\li3240\sa3\sb3\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext89 LatexTOC 9;} -{\s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid \sbasedon0 \snext81 \sautoupd List Bullet 0;} -{\s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid \sbasedon0 \snext82 \sautoupd List Bullet 1;} -{\s82\fi-360\li1080\widctlpar\jclisttab\tx1080{\*\pn \pnlvlbody\ilvl0\ls3\pnrnot0\pndec }\ls3\adjustright \fs20\cgrid \sbasedon0 \snext83 \sautoupd List Bullet 2;} -{\s83\fi-360\li1440\widctlpar\jclisttab\tx1440{\*\pn \pnlvlbody\ilvl0\ls4\pnrnot0\pndec }\ls4\adjustright \fs20\cgrid \sbasedon0 \snext84 \sautoupd List Bullet 3;} -{\s84\fi-360\li1800\widctlpar\jclisttab\tx1800{\*\pn \pnlvlbody\ilvl0\ls5\pnrnot0\pndec }\ls5\adjustright \fs20\cgrid \sbasedon0 \snext85 \sautoupd List Bullet 4;} -{\s85\fi-360\li2160\widctlpar\jclisttab\tx2160{\*\pn \pnlvlbody\ilvl0\ls6\pnrnot0\pndec }\ls6\adjustright \fs20\cgrid \sbasedon0 \snext86 \sautoupd List Bullet 5;} -{\s86\fi-360\li2520\widctlpar\jclisttab\tx2520{\*\pn \pnlvlbody\ilvl0\ls7\pnrnot0\pndec }\ls7\adjustright \fs20\cgrid \sbasedon0 \snext87 \sautoupd List Bullet 6;} -{\s87\fi-360\li2880\widctlpar\jclisttab\tx2880{\*\pn \pnlvlbody\ilvl0\ls8\pnrnot0\pndec }\ls8\adjustright \fs20\cgrid \sbasedon0 \snext88 \sautoupd List Bullet 7;} -{\s88\fi-360\li3240\widctlpar\jclisttab\tx3240{\*\pn \pnlvlbody\ilvl0\ls9\pnrnot0\pndec }\ls9\adjustright \fs20\cgrid \sbasedon0 \snext89 \sautoupd List Bullet 8;} -{\s89\fi-360\li3600\widctlpar\jclisttab\tx3600{\*\pn \pnlvlbody\ilvl0\ls10\pnrnot0\pndec }\ls10\adjustright \fs20\cgrid \sbasedon0 \snext89 \sautoupd List Bullet 9;} -{\s90\fi-360\li360\widctlpar\fs20\cgrid \sbasedon0 \snext91 \sautoupd List Enum 0;} -{\s91\fi-360\li720\widctlpar\fs20\cgrid \sbasedon0 \snext92 \sautoupd List Enum 1;} -{\s92\fi-360\li1080\widctlpar\fs20\cgrid \sbasedon0 \snext93 \sautoupd List Enum 2;} -{\s93\fi-360\li1440\widctlpar\fs20\cgrid \sbasedon0 \snext94 \sautoupd List Enum 3;} -{\s94\fi-360\li1800\widctlpar\fs20\cgrid \sbasedon0 \snext95 \sautoupd List Enum 4;} -{\s95\fi-360\li2160\widctlpar\fs20\cgrid \sbasedon0 \snext96 \sautoupd List Enum 5;} -{\s96\fi-360\li2520\widctlpar\fs20\cgrid \sbasedon0 \snext96 \sautoupd List Enum 5;} -{\s97\fi-360\li2880\widctlpar\fs20\cgrid \sbasedon0 \snext98 \sautoupd List Enum 7;} -{\s98\fi-360\li3240\widctlpar\fs20\cgrid \sbasedon0 \snext99 \sautoupd List Enum 8;} -{\s99\fi-360\li3600\widctlpar\fs20\cgrid \sbasedon0 \snext99 \sautoupd List Enum 9;} -} -{\comment begin body} -{\info -{\title {\comment QOpenCamWidget }QOpenCamWidget} -{\comment Generated byDoxgyen. } -{\creatim \yr2009\mo6\dy11\hr1\min49\sec57} -}{\comment end of infoblock} -\pard\plain -\sectd\pgnlcrm -{\footer \s29\widctlpar\tqc\tx4320\tqr\tx8640\qr\adjustright \fs20\cgrid {\chpgn}} -{\comment begin title page} -\pard\plain \s16\qc\sa60\widctlpar\outlinelevel1\adjustright \f1\cgrid -\vertalc\qc\par\par\par\par\par\par\par -\pard\plain \s15\qc\sb240\sa60\widctlpar\outlinelevel0\adjustright \b\f1\fs32\kerning28\cgrid -{\field\fldedit {\*\fldinst TITLE \\*MERGEFORMAT}{\fldrslt TITLE}}\par -\pard\plain \s16\qc\sa60\widctlpar\outlinelevel1\adjustright \f1\cgrid -\par -\par\par\par\par\par\par\par\par\par\par\par\par -\pard\plain \s16\qc\sa60\widctlpar\outlinelevel1\adjustright \f1\cgrid -{\field\fldedit {\*\fldinst AUTHOR \\*MERGEFORMAT}{\fldrslt AUTHOR}}\par -Version \par{\field\fldedit {\*\fldinst CREATEDATE \\*MERGEFORMAT}{\fldrslt CREATEDATE}}\par -\page\page{\comment End title page} -{\comment Table of contents} -\vertalt -\pard\plain -\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid Table of Contents\par -\pard\plain \par -{\field\fldedit {\*\fldinst TOC \\f \\*MERGEFORMAT}{\fldrslt Table of contents}}\par -\pard\plain -{\comment Beginning Body of RTF Document} -\sect \sbkpage \pgndec \pgnrestart -\sect \sectd \sbknone -{\footer \s29\widctlpar\tqc\tx4320\tqr\tx8640\qr\adjustright \fs20\cgrid {\chpgn}} - -{\comment BeginRTFChapter} -\pard\plain \sect\sbkpage -\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid -Class Index\par \pard\plain -{\tc \v Class Index} -{\comment begin include annotated.rtf} -{\comment startTitleHead} -\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -Class List{\comment endTitleHead} -\par \pard\plain -{\comment startTextBlock} -{ -\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid Here are the classes, structs, unions and interfaces with brief descriptions:{\comment endTextBlock} -} -{\comment (startIndexList)} -{ -\par -\pard\plain \s71\li360\sa27\sb27\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid -{\comment (startIndexKey)} -{\b {\b QOpenCamWidget}{\comment (endIndexKey)} -{\comment (startIndexValue)} - {\comment (endIndexValue)} -} \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAG \\*MERGEFORMAT}{\fldrslt pagenum}} -{\comment (newParagraph)} -\par -{\comment (startIndexKey)} -{\b {\b View}{\comment (endIndexKey)} -{\comment (startIndexValue)} - {\comment (endIndexValue)} -} \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAH \\*MERGEFORMAT}{\fldrslt pagenum}} -{\comment (newParagraph)} -\par -{\comment (endIndexList)} -\par}{\comment endFile} -{\comment end include annotated.rtf} - -{\comment BeginRTFChapter} -\pard\plain \sect\sbkpage -\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid -File Index\par \pard\plain -{\tc \v File Index} -{\comment begin include files.rtf} -{\comment startTitleHead} -\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -File List{\comment endTitleHead} -\par \pard\plain -{\comment startTextBlock} -{ -\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid Here is a list of all files with brief descriptions:{\comment endTextBlock} -} -{\comment (startIndexList)} -{ -\par -\pard\plain \s71\li360\sa27\sb27\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid -{\comment (startIndexKey)} -{\b {\b main.cpp}{\comment (endIndexKey)} -{\comment (startIndexValue)} - {\comment (endIndexValue)} -} \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAA \\*MERGEFORMAT}{\fldrslt pagenum}} -{\comment (newParagraph)} -\par -{\comment (startIndexKey)} -{\b {\b qopencamwidget.cpp}{\comment (endIndexKey)} -{\comment (startIndexValue)} - {\comment (endIndexValue)} -} \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAC \\*MERGEFORMAT}{\fldrslt pagenum}} -{\comment (newParagraph)} -\par -{\comment (startIndexKey)} -{\b {\b qopencamwidget.h}{\comment (endIndexKey)} -{\comment (startIndexValue)} - {\comment (endIndexValue)} -} \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAD \\*MERGEFORMAT}{\fldrslt pagenum}} -{\comment (newParagraph)} -\par -{\comment (startIndexKey)} -{\b {\b view.cpp}{\comment (endIndexKey)} -{\comment (startIndexValue)} - {\comment (endIndexValue)} -} \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAE \\*MERGEFORMAT}{\fldrslt pagenum}} -{\comment (newParagraph)} -\par -{\comment (startIndexKey)} -{\b {\b view.h}{\comment (endIndexKey)} -{\comment (startIndexValue)} - {\comment (endIndexValue)} -} \tab {\field\fldedit {\*\fldinst PAGEREF AAAAAAAAAF \\*MERGEFORMAT}{\fldrslt pagenum}} -{\comment (newParagraph)} -\par -{\comment (endIndexList)} -\par}{\comment endFile} -{\comment end include files.rtf} - -{\comment BeginRTFChapter} -\pard\plain \sect\sbkpage -\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid -Class Documentation{\tc \v Class Documentation} -\par \pard\plain -{\comment begin include classQOpenCamWidget.rtf} -{\comment startTitleHead} -\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -QOpenCamWidget Class Reference{\comment endTitleHead} -\par \pard\plain -{\tc\tcl2 \v QOpenCamWidget} -{\xe \v QOpenCamWidget} -{\comment writeAnchor (classQOpenCamWidget)} -{\bkmkstart AAAAAAAAAG} -{\bkmkend AAAAAAAAAG} -{\comment startTextBlock} -{ -\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\f2 #include }{\comment (newParagraph)} -\par -{\comment (newParagraph)} -\par -{\comment endTextBlock} -} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Public Slots{\comment endGroupHeader} -\par -\pard\plain - -{\comment (startMemberList) } -{ -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -void {\b grabFrame} (void){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (startMemberDescription)} -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Grabs a frame and causes an update() when triggered. \par -}{\comment (endMemberDescription)} -}} -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -void {\b startSnap} (){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (startMemberDescription)} -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Trigger this slot to save a frame from the widget. \par -}{\comment (endMemberDescription)} -}} -{\comment (endMemberList) } -} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Signals{\comment endGroupHeader} -\par -\pard\plain - -{\comment (startMemberList) } -{ -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -void {\b imageReady} (QImage snapshot){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (endMemberList) } -} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Public Member Functions{\comment endGroupHeader} -\par -\pard\plain - -{\comment (startMemberList) } -{ -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -{\b QOpenCamWidget} (QWidget *parent=0){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (startMemberDescription)} -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Consctructs a QWidget based widget for displaying video coming from an OpenCV capture source. \par -}{\comment (endMemberDescription)} -}} -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -{\b ~QOpenCamWidget} (void){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -void {\b paintEvent} (QPaintEvent *event){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (startMemberDescription)} -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -A paint event is a request to repaint all or part of a widget. \par -}{\comment (endMemberDescription)} -}} -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -void {\b setSnapshotVisible} (bool visible){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (startMemberDescription)} -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Changes the visibility of the optional built-in "Take snapshot" button. \par -}{\comment (endMemberDescription)} -}} -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -bool {\b grabCapture} (int source){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (startMemberDescription)} -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Grabs an OpenCV video capture source. \par -}{\comment (endMemberDescription)} -}} -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -void {\b startCapture} (void){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (startMemberDescription)} -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Starts up grabbing of video frames. \par -}{\comment (endMemberDescription)} -}} -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -QImage * {\b Ipl2QImage} (const IplImage *img){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (startMemberDescription)} -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid {\i {\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Converts from the OpenCV IplImage data structure to a QImage. \par -}{\comment (endMemberDescription)} -}} -{\comment (endMemberList) } -} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Private Attributes{\comment endGroupHeader} -\par -\pard\plain - -{\comment (startMemberList) } -{ -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -CvCapture * {\b capture}{\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -QTimer * {\b frametimer}{\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -QImage * {\b nextFrame}{\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -QLabel * {\b canvas}{\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -QVBoxLayout * {\b layout}{\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -QPushButton * {\b trigger}{\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -bool {\b trigger_active}{\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (endMemberList) } -} -{\comment (rtfwriteRuler_thin)} -{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Detailed Description{\comment endGroupHeader} -\par -\pard\plain -{\comment startTextBlock} -{ -\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\comment startParagraph} -{ -Definition at line 29 of file qopencamwidget.h.{\comment endParagraph} -}\par -{\comment endTextBlock} -} -{\comment (rtfwriteRuler_thin)} -{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Constructor & Destructor Documentation{\comment endGroupHeader} -\par -\pard\plain -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v QOpenCamWidget\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:QOpenCamWidget} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -QOpenCamWidget::QOpenCamWidget ({\comment (startParameterList)} -QWidget * {\i parent} = {\f2 0}){\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAI} -{\bkmkend AAAAAAAAAI} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Consctructs a QWidget based widget for displaying video coming from an OpenCV capture source. \par -}{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Including webcam data in a Qt application can be problematic, at least as long as Phonon does not support webcams, and the Phonon GStreamer backend only supports simple pipelines.\par -This class solves the complexity of adding a webcam view, by using the cross-platform available OpenCV library.\par -Limitations, i.e. reasons to read this code and reimplement, are: saving or streaming video is not really available (unless you do repeated timer-triggered connections to the startSnap slot), the widget size is identical to the video source dimensions (it resizes the wodget using setMinimuSize to the video dimensions, and does not handle resizing to sizes above this dimension.\par -A brief summary of how to use this class: { -\par -\pard\plain \s41\li360\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid QOpenCamWidget *cw = new QOpenCamWidget(this);{\comment (lineBreak)} -\par - if ( cw->grabCapture(-1) ) \{{\comment (lineBreak)} -\par - cw->setSnapshotVisible(true);{\comment (lineBreak)} -\par - cw->startCapture();{\comment (lineBreak)} -\par - \}{\comment (lineBreak)} -\par - connect( cw, SIGNAL(imageReady(QImage)), this, SLOT(saveImage(QImage)));{\comment (lineBreak)} -\par -} -\par -{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid -Parameters:\par} -\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid {\i *parent} The parent widget containing this widget, defaults to NULL. \par -} -}{\comment startParagraph} -{ -Definition at line 60 of file qopencamwidget.cpp.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -References canvas, frametimer, layout, nextFrame, trigger, and trigger_active.{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v ~QOpenCamWidget\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:~QOpenCamWidget} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -QOpenCamWidget::~QOpenCamWidget ({\comment (startParameterList)} -void){\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAJ} -{\bkmkend AAAAAAAAAJ} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\comment startParagraph} -{\comment (newParagraph)} -\par -{ -Definition at line 88 of file qopencamwidget.cpp.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -References canvas, capture, and trigger.{\comment endParagraph} -}\par -} -{\comment (rtfwriteRuler_thin)} -{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Member Function Documentation{\comment endGroupHeader} -\par -\pard\plain -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v paintEvent\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:paintEvent} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -void QOpenCamWidget::paintEvent ({\comment (startParameterList)} -QPaintEvent * {\i event}){\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAK} -{\bkmkend AAAAAAAAAK} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -A paint event is a request to repaint all or part of a widget. \par -}{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -It can happen for one of the following reasons:\par -{ -\par\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid -repaint() or update() was invoked, \par\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid -the widget was obscured and has now been uncovered, or \par\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid -many other reasons.\par -} -{\b QOpenCamWidget} uses the paintEvent to draw each frame onto the screen. The paintEvent itself is regularily triggered by explicit update() calls in {\b QOpenCamWidget::grabFrame()}. \par -}{\comment startParagraph} -{ -Definition at line 144 of file qopencamwidget.cpp.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -References canvas, and nextFrame.{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v setSnapshotVisible\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:setSnapshotVisible} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -void QOpenCamWidget::setSnapshotVisible ({\comment (startParameterList)} -bool {\i visible}){\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAL} -{\bkmkend AAAAAAAAAL} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Changes the visibility of the optional built-in "Take snapshot" button. \par -}{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -The widget contains a push-button that optionally can be displayed. When visible, this button is located at the bottom of the widget, and causes the SLOT {\b QOpenCamWidget::startSnap} to be triggered when clicked.\par -{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid -Parameters:\par} -\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid {\i visible} True makes the button display, and trigger, false turns the feature off. False, i.e. no button, is default. \par -} -}{\comment startParagraph} -{ -Definition at line 110 of file qopencamwidget.cpp.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -References layout, startSnap(), trigger, and trigger_active.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by View::View().{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v grabCapture\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:grabCapture} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -bool QOpenCamWidget::grabCapture ({\comment (startParameterList)} -int {\i source}){\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAM} -{\bkmkend AAAAAAAAAM} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Grabs an OpenCV video capture source. \par -}{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -By grabbing a source, it is meant to open the capture source, and have it ready to start streaming/capturing frames. Returns true on success, false on error. The grabCapture is separated from the constructor and/or frame-grabbing, so that you may do the error-checking you really should do before proceeding.\par -{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid -Parameters:\par} -\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid {\i source} The OpenCV capture source enumeration index to open \par -} -}{\comment startParagraph} -{ -Definition at line 183 of file qopencamwidget.cpp.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -References canvas, and capture.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by View::View().{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v startCapture\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:startCapture} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -void QOpenCamWidget::startCapture ({\comment (startParameterList)} -void){\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAN} -{\bkmkend AAAAAAAAAN} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Starts up grabbing of video frames. \par -}{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -The actual grabbing and displaying of video frames is performed by a QTimer triggering the SLOT {\b QOpenCamWidget::grabFrame()}. {\b startCapture()} sets up the timer running this captureFrame loop.\par -The SLOT {\b QOpenCamWidget::startSnap()} is used to get image frames out from the widget for other uses, like saving or processing. This function relies on the timer created and configured by {\b startCapture()}, and as such, this function is the only permitted way to start the actual capture/streaming of video from the source. \par -}{\comment startParagraph} -{ -Definition at line 217 of file qopencamwidget.cpp.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -References frametimer, grabFrame(), and trigger.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by View::View().{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v Ipl2QImage\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:Ipl2QImage} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -QImage * QOpenCamWidget::Ipl2QImage ({\comment (startParameterList)} -const IplImage * {\i img}){\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAO} -{\bkmkend AAAAAAAAAO} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Converts from the OpenCV IplImage data structure to a QImage. \par -}{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -OpenCV uses a data strcuture calles IplImage, optimized for computer vision image processing tasks. This code was adapted from kcamwidget.cpp, part of the KDE SVN at playground/multimedia/kcam/kcamwidget.cpp\par -In regard that the IplImage can be forced into a format that aligns well with a RBG888-format, the conversion becomes one of the shortes, simples IplImage->QImage I've seen.\par -{{\s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid -Parameters:\par} -\pard\plain \s62\li720\widctlpar\ql\adjustright \fs20\cgrid {\i *img} The IplImage to be converted to a QImage. \par -} -}{\comment startParagraph} -{ -Definition at line 241 of file qopencamwidget.cpp.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by grabFrame().{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v grabFrame\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:grabFrame} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -void QOpenCamWidget::grabFrame ({\comment (startParameterList)} -void){\f2 [slot]}{\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAP} -{\bkmkend AAAAAAAAAP} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Grabs a frame and causes an update() when triggered. \par -}{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -This is the SLOT that actually reads the video source and causes the widget to display live video. Preferably this slot will never be called my any other signal that a timeout() on the frametimer, which is controlled by {\b QOpenCamWidget::startCapture()} \par -}{\comment startParagraph} -{ -Definition at line 266 of file qopencamwidget.cpp.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -References capture, Ipl2QImage(), and nextFrame.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by startCapture().{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v startSnap\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:startSnap} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -void QOpenCamWidget::startSnap ({\comment (startParameterList)} -void){\f2 [slot]}{\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAQ} -{\bkmkend AAAAAAAAAQ} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -Trigger this slot to save a frame from the widget. \par -}{\s17\sa60\sb30\widctlpar\qj \fs22\cgrid -When this slot is triggered, the widgets capture loop is temporarily stopped, and the last displayed frame is "captured", and made available through the emitting of the class imageReady SIGNAL.\par -With the "Take snapshot" button visible (setSnapshotVisible(true)), this SLOT is triggered when the user clicks on the trigger button. If you do not wish to use the internal trigger button, you will have to add a different mechanism to trigger this SLOT.\par -It is possible, though I would not recommend, to use repeated triggering of this slot to do repeated frame-capture, and thus make a form of "Animation" or "Video" capture. \par -}{\comment startParagraph} -{ -Definition at line 306 of file qopencamwidget.cpp.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -References frametimer, imageReady(), and nextFrame.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by setSnapshotVisible().{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v imageReady\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:imageReady} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -void QOpenCamWidget::imageReady ({\comment (startParameterList)} -QImage {\i snapshot}){\f2 [signal]}{\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAR} -{\bkmkend AAAAAAAAAR} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\comment startParagraph} -{\comment (newParagraph)} -\par -{ -Referenced by startSnap().{\comment endParagraph} -}\par -} -{\comment (rtfwriteRuler_thin)} -{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Member Data Documentation{\comment endGroupHeader} -\par -\pard\plain -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v capture\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:capture} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -CvCapture* {\b QOpenCamWidget::capture}{\f2 [private]}{\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAS} -{\bkmkend AAAAAAAAAS} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\comment startParagraph} -{\comment (newParagraph)} -\par -{ -Definition at line 35 of file qopencamwidget.h.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by grabCapture(), grabFrame(), and ~QOpenCamWidget().{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v frametimer\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:frametimer} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -QTimer* {\b QOpenCamWidget::frametimer}{\f2 [private]}{\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAT} -{\bkmkend AAAAAAAAAT} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\comment startParagraph} -{\comment (newParagraph)} -\par -{ -Definition at line 36 of file qopencamwidget.h.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by QOpenCamWidget(), startCapture(), and startSnap().{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v nextFrame\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:nextFrame} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -QImage* {\b QOpenCamWidget::nextFrame}{\f2 [private]}{\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAU} -{\bkmkend AAAAAAAAAU} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\comment startParagraph} -{\comment (newParagraph)} -\par -{ -Definition at line 37 of file qopencamwidget.h.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by grabFrame(), paintEvent(), QOpenCamWidget(), and startSnap().{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v canvas\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:canvas} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -QLabel* {\b QOpenCamWidget::canvas}{\f2 [private]}{\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAV} -{\bkmkend AAAAAAAAAV} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\comment startParagraph} -{\comment (newParagraph)} -\par -{ -Definition at line 39 of file qopencamwidget.h.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by grabCapture(), paintEvent(), QOpenCamWidget(), and ~QOpenCamWidget().{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v layout\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:layout} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -QVBoxLayout* {\b QOpenCamWidget::layout}{\f2 [private]}{\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAW} -{\bkmkend AAAAAAAAAW} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\comment startParagraph} -{\comment (newParagraph)} -\par -{ -Definition at line 40 of file qopencamwidget.h.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by QOpenCamWidget(), and setSnapshotVisible().{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v trigger\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:trigger} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -QPushButton* {\b QOpenCamWidget::trigger}{\f2 [private]}{\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAX} -{\bkmkend AAAAAAAAAX} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\comment startParagraph} -{\comment (newParagraph)} -\par -{ -Definition at line 41 of file qopencamwidget.h.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by QOpenCamWidget(), setSnapshotVisible(), startCapture(), and ~QOpenCamWidget().{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v trigger_active\:QOpenCamWidget} -{\xe \v QOpenCamWidget\:trigger_active} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -bool {\b QOpenCamWidget::trigger_active}{\f2 [private]}{\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAY} -{\bkmkend AAAAAAAAAY} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\comment startParagraph} -{\comment (newParagraph)} -\par -{ -Definition at line 42 of file qopencamwidget.h.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by QOpenCamWidget(), and setSnapshotVisible().{\comment endParagraph} -}\par -} -{\comment startTextBlock} -{ -\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\comment (rtfwriteRuler_thin)} -{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par} -The documentation for this class was generated from the following files:{\comment (startItemList level=0) } -{{\comment (writeListItem)} -{\comment (newParagraph)} -\par -\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid -{\b qopencamwidget.h}{\comment (writeListItem)} -{\comment (newParagraph)} -\par -\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid -{\b qopencamwidget.cpp}{\comment (newParagraph)} -\par -{\comment (endItemList level=1)} -}{\comment endTextBlock} -} -{\comment endFile} -{\comment end include classQOpenCamWidget.rtf} -\par \pard\plain - -{\comment BeginRTFSection} -\pard\plain \sect\sbkpage -\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -{\comment begin include classView.rtf} -{\comment startTitleHead} -\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -View Class Reference{\comment endTitleHead} -\par \pard\plain -{\tc\tcl2 \v View} -{\xe \v View} -{\comment writeAnchor (classView)} -{\bkmkstart AAAAAAAAAH} -{\bkmkend AAAAAAAAAH} -{\comment startTextBlock} -{ -\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\f2 #include }{\comment (newParagraph)} -\par -{\comment (newParagraph)} -\par -{\comment endTextBlock} -} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Public Slots{\comment endGroupHeader} -\par -\pard\plain - -{\comment (startMemberList) } -{ -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -void {\b saveImage} (QImage image){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (endMemberList) } -} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Public Member Functions{\comment endGroupHeader} -\par -\pard\plain - -{\comment (startMemberList) } -{ -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -{\b View} (QWidget *parent=0){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -{\b ~View} (void){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (endMemberList) } -} -{\comment (rtfwriteRuler_thin)} -{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Detailed Description{\comment endGroupHeader} -\par -\pard\plain -{\comment startTextBlock} -{ -\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\comment startParagraph} -{ -Definition at line 5 of file view.h.{\comment endParagraph} -}\par -{\comment endTextBlock} -} -{\comment (rtfwriteRuler_thin)} -{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Constructor & Destructor Documentation{\comment endGroupHeader} -\par -\pard\plain -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v View\:View} -{\xe \v View\:View} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -View::View ({\comment (startParameterList)} -QWidget * {\i parent} = {\f2 0}){\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAZ} -{\bkmkend AAAAAAAAAZ} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\comment startParagraph} -{\comment (newParagraph)} -\par -{ -Definition at line 32 of file view.cpp.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -References QOpenCamWidget::grabCapture(), saveImage(), QOpenCamWidget::setSnapshotVisible(), and QOpenCamWidget::startCapture().{\comment endParagraph} -}\par -} -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v ~View\:View} -{\xe \v View\:~View} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -View::~View ({\comment (startParameterList)} -void){\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAABA} -{\bkmkend AAAAAAAABA} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\comment startParagraph} -{\comment (newParagraph)} -\par -{ -Definition at line 74 of file view.cpp.{\comment endParagraph} -}\par -} -{\comment (rtfwriteRuler_thin)} -{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Member Function Documentation{\comment endGroupHeader} -\par -\pard\plain -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v saveImage\:View} -{\xe \v View\:saveImage} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -void View::saveImage ({\comment (startParameterList)} -QImage {\i image}){\f2 [slot]}{\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAABB} -{\bkmkend AAAAAAAABB} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\comment startParagraph} -{\comment (newParagraph)} -\par -{ -Definition at line 78 of file view.cpp.{\comment endParagraph} -}\par -{\comment startParagraph} -{ -Referenced by View().{\comment endParagraph} -}\par -} -{\comment startTextBlock} -{ -\pard\plain \s17\sa60\sb30\widctlpar\qj \fs22\cgrid {\comment (rtfwriteRuler_thin)} -{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par} -The documentation for this class was generated from the following files:{\comment (startItemList level=0) } -{{\comment (writeListItem)} -{\comment (newParagraph)} -\par -\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid -{\b view.h}{\comment (writeListItem)} -{\comment (newParagraph)} -\par -\pard\plain \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid -{\b view.cpp}{\comment (newParagraph)} -\par -{\comment (endItemList level=1)} -}{\comment endTextBlock} -} -{\comment endFile} -{\comment end include classView.rtf} - -{\comment BeginRTFChapter} -\pard\plain \sect\sbkpage -\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid -File Documentation{\tc \v File Documentation} -\par \pard\plain -{\comment begin include main_8cpp.rtf} -{\comment startTitleHead} -\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -main.cpp File Reference{\comment endTitleHead} -\par \pard\plain -{\tc\tcl2 \v main.cpp} -{\xe \v main.cpp} -{\comment writeAnchor (main_8cpp)} -{\bkmkstart AAAAAAAAAA} -{\bkmkend AAAAAAAAAA} -{\comment startTextBlock} -{ -\pard\plain \s18\widctlpar\fs22\cgrid {\f2 #include }{\comment (lineBreak)} -\par -{\f2 #include "view.h"}{\comment (lineBreak)} -\par -{\comment endTextBlock} -} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Functions{\comment endGroupHeader} -\par -\pard\plain - -{\comment (startMemberList) } -{ -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -int {\b main} (int argc, char *argv[]){\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (endMemberList) } -} -{\comment (rtfwriteRuler_thin)} -{\pard\widctlpar\brdrb\brdrs\brdrw5\brsp20 \adjustright \par} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Function Documentation{\comment endGroupHeader} -\par -\pard\plain -{\comment startDoxyAnchor} -{\comment startMemberDoc} -{\xe \v main\:main.cpp} -{\xe \v main.cpp\:main} -\pard\plain \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid { -{\b -int main ({\comment (startParameterList)} -int {\i argc}, {\comment (startParameterList)} - char * {\i argv}[]){\comment endMemberDoc} -} -}{\comment (newParagraph)} -\par -{\comment endDoxyAnchor} -{\bkmkstart AAAAAAAAAB} -{\bkmkend AAAAAAAAAB} -{\comment (startIndent) } -{ -\pard\plain \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid -{\comment startParagraph} -{\comment (newParagraph)} -\par -{ -Definition at line 28 of file main.cpp.{\comment endParagraph} -}\par -} -{\comment endFile} -{\comment end include main_8cpp.rtf} -\par \pard\plain - -{\comment BeginRTFSection} -\pard\plain \sect\sbkpage -\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -{\comment begin include qopencamwidget_8cpp.rtf} -{\comment startTitleHead} -\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -qopencamwidget.cpp File Reference{\comment endTitleHead} -\par \pard\plain -{\tc\tcl2 \v qopencamwidget.cpp} -{\xe \v qopencamwidget.cpp} -{\comment writeAnchor (qopencamwidget_8cpp)} -{\bkmkstart AAAAAAAAAC} -{\bkmkend AAAAAAAAAC} -{\comment startTextBlock} -{ -\pard\plain \s18\widctlpar\fs22\cgrid {\f2 #include "qopencamwidget.h"}{\comment (lineBreak)} -\par -{\comment endTextBlock} -} -{\comment endFile} -{\comment end include qopencamwidget_8cpp.rtf} -\par \pard\plain - -{\comment BeginRTFSection} -\pard\plain \sect\sbkpage -\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -{\comment begin include qopencamwidget_8h.rtf} -{\comment startTitleHead} -\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -qopencamwidget.h File Reference{\comment endTitleHead} -\par \pard\plain -{\tc\tcl2 \v qopencamwidget.h} -{\xe \v qopencamwidget.h} -{\comment writeAnchor (qopencamwidget_8h)} -{\bkmkstart AAAAAAAAAD} -{\bkmkend AAAAAAAAAD} -{\comment startTextBlock} -{ -\pard\plain \s18\widctlpar\fs22\cgrid {\f2 #include }{\comment (lineBreak)} -\par -{\f2 #include }{\comment (lineBreak)} -\par -{\f2 #include }{\comment (lineBreak)} -\par -{\comment endTextBlock} -} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Classes{\comment endGroupHeader} -\par -\pard\plain - -{\comment (startMemberList) } -{ -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -class {\b QOpenCamWidget}{\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (endMemberList) } -} -{\comment endFile} -{\comment end include qopencamwidget_8h.rtf} -\par \pard\plain - -{\comment BeginRTFSection} -\pard\plain \sect\sbkpage -\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -{\comment begin include view_8cpp.rtf} -{\comment startTitleHead} -\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -view.cpp File Reference{\comment endTitleHead} -\par \pard\plain -{\tc\tcl2 \v view.cpp} -{\xe \v view.cpp} -{\comment writeAnchor (view_8cpp)} -{\bkmkstart AAAAAAAAAE} -{\bkmkend AAAAAAAAAE} -{\comment startTextBlock} -{ -\pard\plain \s18\widctlpar\fs22\cgrid {\f2 #include "view.h"}{\comment (lineBreak)} -\par -{\f2 #include "qopencamwidget.h"}{\comment (lineBreak)} -\par -{\comment endTextBlock} -} -{\comment endFile} -{\comment end include view_8cpp.rtf} -\par \pard\plain - -{\comment BeginRTFSection} -\pard\plain \sect\sbkpage -\s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -{\comment begin include view_8h.rtf} -{\comment startTitleHead} -\pard\plain \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid -view.h File Reference{\comment endTitleHead} -\par \pard\plain -{\tc\tcl2 \v view.h} -{\xe \v view.h} -{\comment writeAnchor (view_8h)} -{\bkmkstart AAAAAAAAAF} -{\bkmkend AAAAAAAAAF} -{\comment startTextBlock} -{ -\pard\plain \s18\widctlpar\fs22\cgrid {\f2 #include }{\comment (lineBreak)} -\par -{\comment endTextBlock} -} -{\comment startGroupHeader} -\pard\plain \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid -Classes{\comment endGroupHeader} -\par -\pard\plain - -{\comment (startMemberList) } -{ -{\comment startMemberItem } -\pard\plain \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid -class {\b View}{\comment endMemberItem } -{\comment (newParagraph)} -\par -{\comment (endMemberList) } -} -{\comment endFile} -{\comment end include view_8h.rtf} - -{\comment BeginRTFChapter} -\pard\plain \sect\sbkpage -\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid -\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid Index\par -\pard\plain -{\tc \v Index} -{\field\fldedit {\*\fldinst INDEX \\c2 \\*MERGEFORMAT}{\fldrslt INDEX}} -{\comment endFile} -} \ No newline at end of file