[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdelibs/solid
From:       Will Stephenson <wstephenson () kde ! org>
Date:       2007-10-28 20:16:28
Message-ID: 1193602588.371601.13863.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 730449 by wstephens:

Add Solid support for Video[4Linux] devices, patch reviewed on k-c-d

 A             examples/tutorial6 (directory)  
 A             examples/tutorial6/CMakeLists.txt  
 A             examples/tutorial6/tutorial6.cpp   [License: GPL (v2) (+Qt exception)]
 A             examples/tutorial6/webcamwatcher.cpp   [License: no copyright]
 A             examples/tutorial6/webcamwatcher.h   [License: GPL (v2) (+Qt \
exception)]  M  +5 -1      solid/CMakeLists.txt  
 A             solid/backends/fakehw/fakevideo.cpp   [License: LGPL (v2)]
 A             solid/backends/fakehw/fakevideo.h   [License: LGPL (v2)]
 M  +6 -0      solid/backends/hal/haldevice.cpp  
 M  +5 -0      solid/backends/hal/haldeviceinterface.h  
 A             solid/backends/hal/halvideo.cpp   [License: LGPL (v2)]
 A             solid/backends/hal/halvideo.h   [License: LGPL (v2)]
 M  +5 -0      solid/device.cpp  
 M  +2 -1      solid/deviceinterface.h  
 A             solid/ifaces/video.cpp   [License: LGPL (v2)]
 A             solid/ifaces/video.h   [License: LGPL (v2)]
 A             solid/video.cpp   [License: LGPL (v2)]
 A             solid/video.h   [License: LGPL (v2)]
 A             solid/video_p.h   [License: LGPL (v2)]


--- trunk/KDE/kdelibs/solid/solid/CMakeLists.txt #730448:730449
@@ -49,6 +49,7 @@
    predicate_parser.c
    powermanagement.cpp
    networking.cpp
+   video.cpp
 
    ifaces/acadapter.cpp
    ifaces/audiointerface.cpp
@@ -69,6 +70,7 @@
    ifaces/storagedrive.cpp
    ifaces/storagevolume.cpp
    ifaces/storageaccess.cpp
+   ifaces/video.cpp
 
    backends/hal/halacadapter.cpp
    backends/hal/halaudiointerface.cpp
@@ -88,6 +90,7 @@
    backends/hal/halprocessor.cpp
    backends/hal/halstorageaccess.cpp
    backends/hal/halstorage.cpp
+   backends/hal/halvideo.cpp
    backends/hal/halvolume.cpp
 
    backends/fakehw/fakeacadapter.cpp
@@ -108,6 +111,7 @@
    backends/fakehw/fakeprocessor.cpp
    backends/fakehw/fakestorage.cpp
    backends/fakehw/fakestorageaccess.cpp
+   backends/fakehw/fakevideo.cpp
    backends/fakehw/fakevolume.cpp
 )
 
@@ -145,7 +149,7 @@
 endif(WIN32)
 ########### install files ###############
 
-install( FILES ${CMAKE_CURRENT_BINARY_DIR}/solid_export.h solidnamespace.h device.h \
devicenotifier.h deviceinterface.h genericinterface.h processor.h block.h \
storageaccess.h storagedrive.h opticaldrive.h storagevolume.h opticaldisc.h camera.h \
portablemediaplayer.h networkinterface.h acadapter.h battery.h button.h \
audiointerface.h dvbinterface.h predicate.h powermanagement.h networking.h \
DESTINATION ${INCLUDE_INSTALL_DIR}/solid) +install( FILES \
${CMAKE_CURRENT_BINARY_DIR}/solid_export.h solidnamespace.h device.h devicenotifier.h \
deviceinterface.h genericinterface.h processor.h block.h storageaccess.h \
storagedrive.h opticaldrive.h storagevolume.h opticaldisc.h camera.h \
portablemediaplayer.h networkinterface.h acadapter.h battery.h button.h \
audiointerface.h dvbinterface.h predicate.h powermanagement.h networking.h video.h \
DESTINATION ${INCLUDE_INSTALL_DIR}/solid)  
 ########### parser build ###############
 
--- trunk/KDE/kdelibs/solid/solid/backends/hal/haldevice.cpp #730448:730449
@@ -44,6 +44,7 @@
 #include "halbutton.h"
 #include "halaudiointerface.h"
 #include "haldvbinterface.h"
+#include "halvideo.h"
 
 using namespace Solid::Backends::Hal;
 
@@ -222,6 +223,8 @@
         return "battery";
     } else if (category=="processor") {
         return "ksim-cpu"; // FIXME: Doesn't follow icon spec
+    } else if (category=="video4linux") {
+        return "camera-web";
     }
 
     return QString();
@@ -391,6 +394,9 @@
     case Solid::DeviceInterface::DvbInterface:
         iface = new DvbInterface(this);
         break;
+    case Solid::DeviceInterface::Video:
+        iface = new Video(this);
+        break;
     case Solid::DeviceInterface::Unknown:
         break;
     }
--- trunk/KDE/kdelibs/solid/solid/backends/hal/haldeviceinterface.h #730448:730449
@@ -99,6 +99,9 @@
         case Solid::DeviceInterface::DvbInterface:
             list << "dvb";
             break;
+        case Solid::DeviceInterface::Video:
+            list << "video4linux";
+            break;
         case Solid::DeviceInterface::Unknown:
             break;
         }
@@ -136,6 +139,8 @@
             return Solid::DeviceInterface::AudioInterface;
         else if (capability == "dvb")
             return Solid::DeviceInterface::DvbInterface;
+        else if (capability == "video4linux")
+            return Solid::DeviceInterface::Video;
         else
             return Solid::DeviceInterface::Unknown;
     }
--- trunk/KDE/kdelibs/solid/solid/device.cpp #730448:730449
@@ -59,6 +59,8 @@
 #include <solid/ifaces/audiointerface.h>
 #include <solid/dvbinterface.h>
 #include <solid/ifaces/dvbinterface.h>
+#include <solid/video.h>
+#include <solid/ifaces/video.h>
 
 
 Solid::Device::Device(const QString &udi)
@@ -207,6 +209,9 @@
             case DeviceInterface::DvbInterface:
                 iface = deviceinterface_cast(Ifaces::DvbInterface, DvbInterface, \
dev_iface);  break;
+            case DeviceInterface::Video:
+                iface = deviceinterface_cast(Ifaces::Video, Video, dev_iface);
+                break;
             case DeviceInterface::Unknown:
                 break;
             }
--- trunk/KDE/kdelibs/solid/solid/deviceinterface.h #730448:730449
@@ -64,7 +64,8 @@
                     OpticalDrive = 6, StorageVolume = 7, OpticalDisc = 8,
                     Camera = 9, PortableMediaPlayer = 10,
                     NetworkInterface = 11, AcAdapter = 12, Battery = 13,
-                    Button = 14, AudioInterface = 15, DvbInterface = 16 };
+                    Button = 14, AudioInterface = 15, DvbInterface = 16, Video = 17,
+                    Last = 0xffff  };
 
         /**
          * Destroys a DeviceInterface object.


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic