File indexing completed on 2024-05-05 04:44:41

0001 /*  This file is part of the KDE project
0002     Copyright © 2008 Matthias Kretz <kretz@kde.org>
0003     Copyright © 2010 Harald Sitter <apachelogger@ubuntu.com>
0004 
0005     This library is free software; you can redistribute it and/or
0006     modify it under the terms of the GNU Lesser General Public
0007     License as published by the Free Software Foundation; either
0008     version 2.1 of the License, or (at your option) version 3, or any
0009     later version accepted by the membership of KDE e.V. (or its
0010     successor approved by the membership of KDE e.V.), Nokia Corporation 
0011     (or its successors, if any) and the KDE Free Qt Foundation, which shall
0012     act as a proxy defined in Section 6 of version 3 of the license.
0013 
0014     This library is distributed in the hope that it will be useful,
0015     but WITHOUT ANY WARRANTY; without even the implied warranty of
0016     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0017     Lesser General Public License for more details.
0018 
0019     You should have received a copy of the GNU Lesser General Public 
0020     License along with this library.  If not, see <http://www.gnu.org/licenses/>.
0021 
0022 */
0023 #ifndef PHONON_EXPERIMENTAL_OBJECTDESCRIPTION_H
0024 #define PHONON_EXPERIMENTAL_OBJECTDESCRIPTION_H
0025 
0026 #include "../objectdescription.h"
0027 
0028 namespace Phonon
0029 {
0030 namespace Experimental
0031 {
0032 
0033 #ifndef PHONON_NO_VIDEOCAPTURE
0034 
0035 enum ObjectDescriptionType
0036 {
0037     VideoCaptureDeviceType = 0x10000
0038 };
0039 
0040 typedef Phonon::ObjectDescription<static_cast<Phonon::ObjectDescriptionType>(Phonon::Experimental::VideoCaptureDeviceType)> VideoCaptureDevice;
0041 
0042 VideoCaptureDevice phononVcdToExperimentalVcd(const Phonon::VideoCaptureDevice &vcd);
0043 
0044 /**
0045  * Generates a Phonon::VideoCaptureDevice from an equal object of
0046  * the Phonon::Experimental namespace.
0047  * 
0048  * @arg vcd the VideoCaptureDevice to take as reference
0049  * @return a Phonon::VideoCaptureDevice instance with the same properties as the incoming vcd
0050  */
0051 Phonon::VideoCaptureDevice phononExperimentalVcdToVcd(const Phonon::Experimental::VideoCaptureDevice &vcd);
0052 
0053 #endif // PHONON_NO_VIDEOCAPTURE
0054 
0055 } // namespace Experimental
0056 } // namespace Phonon
0057 
0058 #endif // PHONON_EXPERIMENTAL_OBJECTDESCRIPTION_H