File: _web_cam_viewer_8h-source.html

package info (click to toggle)
camstream 0.27%2Bdfsg-3
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 12,320 kB
  • ctags: 5,393
  • sloc: cpp: 17,031; sh: 8,154; asm: 455; ansic: 440; makefile: 343
file content (146 lines) | stat: -rw-r--r-- 9,228 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
<html>
<head>
<title>Camstream: CamStream API documentation</title>
<link rel="stylesheet" href="../../tech.css" type="text/css">
</head>
<body>

<!-- Generated by Doxygen 1.3.7 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>WebCamViewer.h</h1><a href="_web_cam_viewer_8h.html">Go to the documentation of this file.</a><pre class="fragment"><div>00001 <span class="preprocessor">#ifndef WEBCAMVIEWER_HPP</span>
00002 <span class="preprocessor"></span><span class="preprocessor">#define WEBCAMVIEWER_HPP</span>
00003 <span class="preprocessor"></span>
00004 <span class="preprocessor">#ifdef HAVE_CONFIG_H</span>
00005 <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="config_8h.html">config.h</a>"</span>
00006 <span class="preprocessor">#endif</span>
00007 <span class="preprocessor"></span>
00008 <span class="preprocessor">#include &lt;qpixmap.h&gt;</span>
00009 <span class="preprocessor">#include &lt;qbutton.h&gt;</span>
00010 <span class="preprocessor">#include &lt;qdatetime.h&gt;</span>
00011 <span class="preprocessor">#include &lt;qglobal.h&gt;</span>
00012 <span class="preprocessor">#include &lt;qtimer.h&gt;</span>
00013 <span class="preprocessor">#include &lt;qurloperator.h&gt;</span>
00014 <span class="preprocessor">#include &lt;qvaluelist.h&gt;</span>
00015 <span class="preprocessor">#if QT_VERSION &gt;= 0x30000</span>
00016 <span class="preprocessor"></span><span class="preprocessor">#include &lt;qprocess.h&gt;</span>
00017 <span class="preprocessor">#endif</span>
00018 <span class="preprocessor"></span>
00019 <span class="preprocessor">#include "<a class="code" href="_f_t_p_client_8h.html">lib/FTPClient.h</a>"</span>
00020 <span class="preprocessor">#include "<a class="code" href="_audio_device_8h.html">AudioDevice.h</a>"</span>
00021 <span class="preprocessor">#include "<a class="code" href="_audio_display_volume_8h.html">AudioDisplayVolume.h</a>"</span>
00022 <span class="preprocessor">#include "<a class="code" href="_video_device_8h.html">VideoDevice.h</a>"</span>
00023 
00024 <span class="preprocessor">#include "<a class="code" href="_audio_settings_dlg_8h.html">gui/AudioSettingsDlg.h</a>"</span>
00025 <span class="preprocessor">#include "<a class="code" href="_snapshot_settings_dlg_8h.html">gui/SnapshotSettingsDlg.h</a>"</span>
00026 <span class="preprocessor">#include "<a class="code" href="_time_snapshot_8h.html">gui/TimeSnapshot.h</a>"</span>
00027 
00028 <span class="preprocessor">#include "<a class="code" href="_cam_window_8h.html">CamWindow.h</a>"</span>
00029 <span class="preprocessor">#include "<a class="code" href="_basic_panel_8h.html">BasicPanel.h</a>"</span>
00030 <span class="preprocessor">#include "<a class="code" href="_image_panel_r_g_b_8h.html">ImagePanelRGB.h</a>"</span>
00031 <span class="preprocessor">#include "<a class="code" href="_image_panel_y_u_v_8h.html">ImagePanelYUV.h</a>"</span>
00032 
00033 <span class="keyword">class </span><a class="code" href="class_c_web_cam_viewer.html">CWebCamViewer</a>: <span class="keyword">public</span> <a class="code" href="class_c_cam_window.html">CCamWindow</a>
00034 {
00035    Q_OBJECT
00036 <span class="keyword">private</span>:
00037    <span class="keyword">enum</span> {
00038      pbt_ctl_size,
00039      pbt_ctl_video,
00040      pbt_ctl_input,
00041      pbt_ctl_tuner,
00042      pbt_mute,
00043      pbt_config,
00044      pbt_showsnap,
00045      pbt_snapshot,
00046      pbt_timesnap,
00047      pbt_snd_config,
00048      pbt_MAX,
00049    } PushButtons;
00050    QToolButton *pButton[pbt_MAX];
00051 
00052    <a class="code" href="class_c_video_device.html">CVideoDevice</a> *pVideo;        
00053    <a class="code" href="class_c_cam_panel.html">CCamPanel</a> *pViewer;          
00054    <a class="code" href="class_c_basic_panel.html">CBasicPanel</a> *pLastSnapshot;  
00055    QTimer m_SizeTimer;          
00056 
00057    <a class="code" href="struct_c_video_options.html">CVideoOptions</a> *pVOptions;    
00058    <a class="code" href="class_c_snapshot_settings_dlg.html">CSnapshotSettingsDlg</a> *m_pSnapshotSettingsDlg;        
00059 
00060    <span class="keywordtype">int</span> m_SnapInterval, m_SnapCounter;
00061    QTimer *pSnapTimer;
00062    QLabel *pSnapLabel;
00063 
00065    <span class="keyword">struct </span>FTPCommandStruct
00066    {
00067       <span class="keywordtype">int</span> Command;
00068       QString Param[4];
00069    };
00070 
00071    <span class="keyword">struct </span>_Upload {
00072      <a class="code" href="class_c_f_t_p_client.html">CFTPClient</a> *pClient;
00073      QList&lt;FTPCommandStruct&gt; Commands;
00074 
00075      QString LocalFile, RemoteFile;
00076 
00077      QTime StartTime;
00078      <span class="keywordtype">bool</span> ErrorCondition;
00079    } Upload;
00080 
00081 <span class="preprocessor">#if QT_VERSION &gt;= 0x30000</span>
00082 <span class="preprocessor"></span>   <span class="keyword">struct </span>_Command {
00083      QProcess Process;
00084      QString FileName;
00085      <span class="keywordtype">bool</span> Delete;
00086    } m_ExternalCommand;
00087 <span class="preprocessor">#endif</span>
00088 <span class="preprocessor"></span>
00089    <span class="keywordtype">void</span> StartFTPUpload(<span class="keyword">const</span> QString &amp;local, <span class="keyword">const</span> QString &amp;remote, <span class="keywordtype">bool</span>);
00090    <span class="keywordtype">void</span> StopFTP();
00091    <span class="keywordtype">void</span> TriggerNextFTPCommand();
00092 
00093    <span class="keywordtype">void</span> StartSubProcess(<span class="keyword">const</span> QString &amp;command, <span class="keyword">const</span> QString &amp;filename, <span class="keywordtype">bool</span> del_after_use);
00094 
00095 <span class="keyword">private</span> slots:
00096    <span class="keywordtype">void</span> ClickedVideoConfig();
00097    <span class="keywordtype">void</span> ClickedShowLastSnapshot();
00098    <span class="keywordtype">void</span> ClickedTimeSnapDlg();
00099    <span class="keywordtype">void</span> ClickedSoundOnOff();
00100 
00101    <span class="keywordtype">void</span> FTPChangeState(<span class="keywordtype">int</span> command, <span class="keywordtype">int</span> new_state, <span class="keywordtype">int</span> result, <span class="keyword">const</span> QString &amp;server_msg);
00102    <span class="keywordtype">void</span> NextFTPCommand();
00103    <span class="keywordtype">void</span> FTPClosed();
00104 
00105    <span class="keywordtype">void</span> SubProcessDone();
00106 
00107    <span class="keywordtype">void</span> StartTimeSnap(<span class="keywordtype">int</span> interval);
00108    <span class="keywordtype">void</span> StopTimeSnap();
00109    <span class="keywordtype">void</span> TimeSnapTick();
00110    <span class="keywordtype">void</span> TakeSnapshot();
00111 
00112 <span class="comment">//   void UpdateAudioDisplay();</span>
00113    <span class="keywordtype">void</span> CycleNextChannel();
00114    <span class="keywordtype">void</span> CyclePrevChannel();
00115    <span class="keywordtype">void</span> NewChannelSelected();
00116 
00117 <span class="keyword">protected</span>:
00118    <span class="keywordtype">void</span> <a class="code" href="class_c_web_cam_viewer.html#b0">RecalcTotalViewSize</a>();
00119 
00120 <span class="keyword">protected</span> slots:
00121    <span class="keywordtype">void</span> <a class="code" href="class_c_web_cam_viewer.html#j0">DeviceChangedSize</a>(<span class="keyword">const</span> QSize &amp;size);
00122    <span class="keywordtype">void</span> <a class="code" href="class_c_web_cam_viewer.html#j1">DeviceError</a>(<span class="keywordtype">int</span> err_no);
00123 
00124    <span class="keywordtype">void</span> <a class="code" href="class_c_web_cam_viewer.html#j2">CallAdjustSize</a>();
00125 
00126 <span class="keyword">public</span>:
00127    <a class="code" href="class_c_web_cam_viewer.html">CWebCamViewer</a>(<a class="code" href="class_c_video_device.html">CVideoDevice</a> *video, QWidget *parent = 0, <span class="keyword">const</span> <span class="keywordtype">char</span> *name = 0);
00128    <span class="keyword">virtual</span> <a class="code" href="class_c_web_cam_viewer.html#a1">~CWebCamViewer</a>();
00129 
00130 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_c_web_cam_viewer.html#a2">showMaximized</a>();
00131 };
00132 
00133 <span class="preprocessor">#endif</span>
</div></pre><hr size="1"><address style="align: right;"><small>Generated on Wed Dec 13 23:38:46 2006 for CamStream by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 ></a> 1.3.7 </small></address>
</body>
</html>