ekiga r6291 - in trunk: . lib/engine/audioinput/null lib/engine/audioinput/ptlib lib/engine/audioinput/skel lib/engine/audiooutput/null lib/engine/audiooutput/ptlib lib/engine/audiooutput/skel lib/engine/videoinput/mlogo lib/engine/videoinput/ptlib lib/engine/videoinput/skel lib/engine/videooutput/common lib/engine/videooutput/dx lib/engine/videooutput/skel lib/engine/videooutput/x
- From: mschneid svn gnome org
- To: svn-commits-list gnome org
- Subject: ekiga r6291 - in trunk: . lib/engine/audioinput/null lib/engine/audioinput/ptlib lib/engine/audioinput/skel lib/engine/audiooutput/null lib/engine/audiooutput/ptlib lib/engine/audiooutput/skel lib/engine/videoinput/mlogo lib/engine/videoinput/ptlib lib/engine/videoinput/skel lib/engine/videooutput/common lib/engine/videooutput/dx lib/engine/videooutput/skel lib/engine/videooutput/x
- Date: Tue, 20 May 2008 19:18:12 +0000 (UTC)
Author: mschneid
Date: Tue May 20 19:18:11 2008
New Revision: 6291
URL: http://svn.gnome.org/viewvc/ekiga?rev=6291&view=rev
Log:
More commenting.
Modified:
trunk/ChangeLog
trunk/lib/engine/audioinput/null/audioinput-main-null.cpp
trunk/lib/engine/audioinput/null/audioinput-main-null.h
trunk/lib/engine/audioinput/null/audioinput-manager-null.cpp
trunk/lib/engine/audioinput/null/audioinput-manager-null.h
trunk/lib/engine/audioinput/ptlib/audioinput-main-ptlib.cpp
trunk/lib/engine/audioinput/ptlib/audioinput-manager-ptlib.cpp
trunk/lib/engine/audioinput/ptlib/audioinput-manager-ptlib.h
trunk/lib/engine/audioinput/skel/audioinput-gmconf-bridge.cpp
trunk/lib/engine/audioinput/skel/audioinput-gmconf-bridge.h
trunk/lib/engine/audioinput/skel/audioinput-info.h
trunk/lib/engine/audiooutput/null/audiooutput-main-null.cpp
trunk/lib/engine/audiooutput/null/audiooutput-manager-null.cpp
trunk/lib/engine/audiooutput/null/audiooutput-manager-null.h
trunk/lib/engine/audiooutput/ptlib/audiooutput-manager-ptlib.cpp
trunk/lib/engine/audiooutput/ptlib/audiooutput-manager-ptlib.h
trunk/lib/engine/audiooutput/skel/audiooutput-gmconf-bridge.cpp
trunk/lib/engine/audiooutput/skel/audiooutput-gmconf-bridge.h
trunk/lib/engine/audiooutput/skel/audiooutput-info.h
trunk/lib/engine/audiooutput/skel/audiooutput-manager.h
trunk/lib/engine/videoinput/mlogo/videoinput-main-mlogo.cpp
trunk/lib/engine/videoinput/mlogo/videoinput-main-mlogo.h
trunk/lib/engine/videoinput/mlogo/videoinput-manager-mlogo.cpp
trunk/lib/engine/videoinput/mlogo/videoinput-manager-mlogo.h
trunk/lib/engine/videoinput/ptlib/videoinput-main-ptlib.cpp
trunk/lib/engine/videoinput/ptlib/videoinput-manager-ptlib.cpp
trunk/lib/engine/videoinput/ptlib/videoinput-manager-ptlib.h
trunk/lib/engine/videoinput/skel/videoinput-core.cpp
trunk/lib/engine/videoinput/skel/videoinput-gmconf-bridge.cpp
trunk/lib/engine/videoinput/skel/videoinput-gmconf-bridge.h
trunk/lib/engine/videoinput/skel/videoinput-info.h
trunk/lib/engine/videooutput/common/videooutput-manager-common.cpp
trunk/lib/engine/videooutput/common/videooutput-manager-common.h
trunk/lib/engine/videooutput/dx/videooutput-main-dx.h
trunk/lib/engine/videooutput/dx/videooutput-manager-dx.cpp
trunk/lib/engine/videooutput/dx/videooutput-manager-dx.h
trunk/lib/engine/videooutput/skel/videooutput-core.cpp
trunk/lib/engine/videooutput/skel/videooutput-core.h
trunk/lib/engine/videooutput/skel/videooutput-gmconf-bridge.cpp
trunk/lib/engine/videooutput/skel/videooutput-gmconf-bridge.h
trunk/lib/engine/videooutput/skel/videooutput-info.h
trunk/lib/engine/videooutput/skel/videooutput-manager.h
trunk/lib/engine/videooutput/x/videooutput-main-x.cpp
trunk/lib/engine/videooutput/x/videooutput-main-x.h
trunk/lib/engine/videooutput/x/videooutput-manager-x.cpp
trunk/lib/engine/videooutput/x/videooutput-manager-x.h
Modified: trunk/lib/engine/audioinput/null/audioinput-main-null.cpp
==============================================================================
--- trunk/lib/engine/audioinput/null/audioinput-main-null.cpp (original)
+++ trunk/lib/engine/audioinput/null/audioinput-main-null.cpp Tue May 20 19:18:11 2008
@@ -31,7 +31,7 @@
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : code to hook the NULLaudioinput manager
+ * description : code to hook the NULL audioinput manager
* into the main program
*
*/
Modified: trunk/lib/engine/audioinput/null/audioinput-main-null.h
==============================================================================
--- trunk/lib/engine/audioinput/null/audioinput-main-null.h (original)
+++ trunk/lib/engine/audioinput/null/audioinput-main-null.h Tue May 20 19:18:11 2008
@@ -27,7 +27,7 @@
/*
- * audioinput-main-ptlib.h - description
+ * audioinput-main-null.h - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
Modified: trunk/lib/engine/audioinput/null/audioinput-manager-null.cpp
==============================================================================
--- trunk/lib/engine/audioinput/null/audioinput-manager-null.cpp (original)
+++ trunk/lib/engine/audioinput/null/audioinput-manager-null.cpp Tue May 20 19:18:11 2008
@@ -28,8 +28,7 @@
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : declaration of the interface of a audioinput core.
- * A audioinput core manages AudioInputManagers.
+ * description : declaration of a NULL audio input manager
*
*/
@@ -69,8 +68,6 @@
bool GMAudioInputManager_null::open (unsigned channels, unsigned samplerate, unsigned bits_per_sample)
{
- Ekiga::AudioInputConfig audioinput_config;
-
PTRACE(4, "GMAudioInputManager_null\tOpening Device " << current_state.device);
PTRACE(4, "GMAudioInputManager_null\tOpening Device with " << channels << "-" << samplerate << "/" << bits_per_sample);
@@ -81,10 +78,10 @@
adaptive_delay.Restart();
- audioinput_config.volume = 0;
- audioinput_config.modifyable = false;
-
- runtime.run_in_main (sigc::bind (device_opened.make_slot (), current_state.device, audioinput_config));
+ Ekiga::AudioInputConfig config;
+ config.volume = 0;
+ config.modifyable = false;
+ runtime.run_in_main (sigc::bind (device_opened.make_slot (), current_state.device, config));
return true;
}
Modified: trunk/lib/engine/audioinput/null/audioinput-manager-null.h
==============================================================================
--- trunk/lib/engine/audioinput/null/audioinput-manager-null.h (original)
+++ trunk/lib/engine/audioinput/null/audioinput-manager-null.h Tue May 20 19:18:11 2008
@@ -29,8 +29,7 @@
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : declaration of the interface of a audioinput core.
- * A audioinput core manages AudioInputManagers.
+ * description : declaration of a NULL audio input manager
*
*/
@@ -55,24 +54,13 @@
{
public:
- /* The constructor
- */
GMAudioInputManager_null (Ekiga::ServiceCore & core);
- /* The destructor
- */
+
~GMAudioInputManager_null () {}
- /*
- * DISPLAY MANAGEMENT
- */
-
- /** Create a call based on the remote uri given as parameter
- * @param uri an uri
- * @return true if a Ekiga::Call could be created
- */
virtual bool set_device (const Ekiga::AudioInputDevice & device);
-
+
virtual void get_devices(std::vector <Ekiga::AudioInputDevice> & devices);
virtual bool open (unsigned channels, unsigned samplerate, unsigned bits_per_sample);
@@ -85,7 +73,7 @@
virtual bool has_device (const std::string & source, const std::string & device_name, Ekiga::AudioInputDevice & device);
-
+
protected:
Ekiga::ServiceCore & core;
Ekiga::Runtime & runtime;
@@ -96,5 +84,4 @@
* @}
*/
-
#endif
Modified: trunk/lib/engine/audioinput/ptlib/audioinput-main-ptlib.cpp
==============================================================================
--- trunk/lib/engine/audioinput/ptlib/audioinput-main-ptlib.cpp (original)
+++ trunk/lib/engine/audioinput/ptlib/audioinput-main-ptlib.cpp Tue May 20 19:18:11 2008
@@ -27,7 +27,7 @@
/*
- * audionput-main-ptlib.cpp - description
+ * audioinput-main-ptlib.cpp - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
Modified: trunk/lib/engine/audioinput/ptlib/audioinput-manager-ptlib.cpp
==============================================================================
--- trunk/lib/engine/audioinput/ptlib/audioinput-manager-ptlib.cpp (original)
+++ trunk/lib/engine/audioinput/ptlib/audioinput-manager-ptlib.cpp Tue May 20 19:18:11 2008
@@ -29,8 +29,8 @@
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : declaration of the interface of a audioinput core.
- * A audioinput core manages AudioInputManagers.
+ * description : declaration of a PTLIB audio input manager
+
*
*/
@@ -41,7 +41,8 @@
#define DEVICE_TYPE "PTLIB"
GMAudioInputManager_ptlib::GMAudioInputManager_ptlib (Ekiga::ServiceCore & _core)
-: core (_core), runtime (*(dynamic_cast<Ekiga::Runtime *> (_core.get ("runtime"))))
+: core (_core),
+ runtime (*(dynamic_cast<Ekiga::Runtime *> (_core.get ("runtime"))))
{
current_state.opened = false;
input_device = NULL;
@@ -93,9 +94,6 @@
bool GMAudioInputManager_ptlib::open (unsigned channels, unsigned samplerate, unsigned bits_per_sample)
{
- unsigned volume;
- Ekiga::AudioInputConfig audioinput_config;
-
PTRACE(4, "GMAudioInputManager_ptlib\tOpening Device " << current_state.device);
PTRACE(4, "GMAudioInputManager_ptlib\tOpening Device with " << channels << "-" << samplerate << "/" << bits_per_sample);
@@ -120,13 +118,14 @@
return false;
}
+ unsigned volume;
input_device->GetVolume (volume);
current_state.opened = true;
- audioinput_config.volume = volume;
- audioinput_config.modifyable = true;
-
- runtime.run_in_main (sigc::bind (device_opened.make_slot (), current_state.device, audioinput_config));
+ Ekiga::AudioInputConfig config;
+ config.volume = volume;
+ config.modifyable = true;
+ runtime.run_in_main (sigc::bind (device_opened.make_slot (), current_state.device, config));
return true;
}
Modified: trunk/lib/engine/audioinput/ptlib/audioinput-manager-ptlib.h
==============================================================================
--- trunk/lib/engine/audioinput/ptlib/audioinput-manager-ptlib.h (original)
+++ trunk/lib/engine/audioinput/ptlib/audioinput-manager-ptlib.h Tue May 20 19:18:11 2008
@@ -29,8 +29,8 @@
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : declaration of the interface of a audioinput core.
- * A audioinput core manages AudioInputManagers.
+ * description : declaration of a PTLIB audio input manager
+
*
*/
@@ -43,6 +43,7 @@
#include "ptbuildopts.h"
#include <ptlib/sound.h>
+
/**
* @addtogroup audioinput
* @{
@@ -53,24 +54,13 @@
{
public:
- /* The constructor
- */
GMAudioInputManager_ptlib (Ekiga::ServiceCore & core);
- /* The destructor
- */
+
~GMAudioInputManager_ptlib () {}
- /*
- * DISPLAY MANAGEMENT
- */
-
- /** Create a call based on the remote uri given as parameter
- * @param uri an uri
- * @return true if a Ekiga::Call could be created
- */
virtual bool set_device (const Ekiga::AudioInputDevice & device);
-
+
virtual void get_devices(std::vector <Ekiga::AudioInputDevice> & devices);
virtual bool open (unsigned channels, unsigned samplerate, unsigned bits_per_sample);
@@ -81,12 +71,12 @@
virtual bool get_frame_data (char *data,
unsigned size,
- unsigned & bytes_read);
+ unsigned & bytes_read);
- virtual void set_volume (unsigned /* volume */ );
+ virtual void set_volume (unsigned volume );
virtual bool has_device (const std::string & source, const std::string & device_name, Ekiga::AudioInputDevice & device);
-
+
protected:
Ekiga::ServiceCore & core;
Ekiga::Runtime & runtime;
@@ -97,6 +87,4 @@
/**
* @}
*/
-
-
#endif
Modified: trunk/lib/engine/audioinput/skel/audioinput-gmconf-bridge.cpp
==============================================================================
--- trunk/lib/engine/audioinput/skel/audioinput-gmconf-bridge.cpp (original)
+++ trunk/lib/engine/audioinput/skel/audioinput-gmconf-bridge.cpp Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * audioinput-core.cpp - description
+ * audioinput-gmconf-bridge.cpp - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : declaration of the interface of a audioinput core.
- * A audioinput core manages AudioInputManagers.
+ * description : Declaration of the bridge between the gmconf
+ * and the audioinput-core..
*
*/
Modified: trunk/lib/engine/audioinput/skel/audioinput-gmconf-bridge.h
==============================================================================
--- trunk/lib/engine/audioinput/skel/audioinput-gmconf-bridge.h (original)
+++ trunk/lib/engine/audioinput/skel/audioinput-gmconf-bridge.h Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * audioinput-core.h - description
+ * audioinput-gmconf-bridge.h - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : Declaration of the interface of a audioinput core.
- * A audioinput core manages AudioInputManagers.
+ * description : Declaration of the bridge between the gmconf
+ * and the audioinput-core..
*
*/
Modified: trunk/lib/engine/audioinput/skel/audioinput-info.h
==============================================================================
--- trunk/lib/engine/audioinput/skel/audioinput-info.h (original)
+++ trunk/lib/engine/audioinput/skel/audioinput-info.h Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * audioinput-core.h - description
+ * audioinput-info.h - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : Declaration of the interface of a audioinput core.
- * A audioinput core manages AudioInputManagers.
+ * description : declaration of structs and classes used for communication
+ * with the AudioOutputManagers
*
*/
Modified: trunk/lib/engine/audiooutput/null/audiooutput-main-null.cpp
==============================================================================
--- trunk/lib/engine/audiooutput/null/audiooutput-main-null.cpp (original)
+++ trunk/lib/engine/audiooutput/null/audiooutput-main-null.cpp Tue May 20 19:18:11 2008
@@ -27,11 +27,11 @@
/*
- * audionput-main-null.cpp - description
+ * audiooutput-main-null.cpp - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : code to hook the PTLIB audiooutput manager
+ * description : code to hook the NULL audiooutput manager
* into the main program
*
*/
Modified: trunk/lib/engine/audiooutput/null/audiooutput-manager-null.cpp
==============================================================================
--- trunk/lib/engine/audiooutput/null/audiooutput-manager-null.cpp (original)
+++ trunk/lib/engine/audiooutput/null/audiooutput-manager-null.cpp Tue May 20 19:18:11 2008
@@ -28,8 +28,7 @@
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : declaration of the interface of a audiooutput core.
- * A audiooutput core manages AudioOutputManagers.
+ * description : declaration of a NULL audio output manager
*
*/
@@ -40,7 +39,8 @@
#define DEVICE_NAME "NULL"
GMAudioOutputManager_null::GMAudioOutputManager_null (Ekiga::ServiceCore & _core)
-: core (_core), runtime (*(dynamic_cast<Ekiga::Runtime *> (_core.get ("runtime"))))
+: core (_core),
+ runtime (*(dynamic_cast<Ekiga::Runtime *> (_core.get ("runtime"))))
{
current_state[Ekiga::primary].opened = false;
current_state[Ekiga::secondary].opened = false;
@@ -71,22 +71,20 @@
bool GMAudioOutputManager_null::open (Ekiga::AudioOutputPrimarySecondary primarySecondary, unsigned channels, unsigned samplerate, unsigned bits_per_sample)
{
- Ekiga::AudioOutputConfig audiooutput_config;
-
- PTRACE(4, "GMAudioOutputManager_null\tOpening Device[" << primarySecondary << "] " << current_state[primarySecondary].device);
- PTRACE(4, "GMAudioOutputManager_null\tOpening Device with " << channels << "-" << samplerate << "/" << bits_per_sample);
-
current_state[primarySecondary].channels = channels;
current_state[primarySecondary].samplerate = samplerate;
current_state[primarySecondary].bits_per_sample = bits_per_sample;
current_state[primarySecondary].opened = true;
- adaptive_delay[primarySecondary].Restart();
+ PTRACE(4, "GMAudioOutputManager_null\tOpening Device[" << primarySecondary << "] " << current_state[primarySecondary].device);
+ PTRACE(4, "GMAudioOutputManager_null\tOpening Device with " << channels << "-" << samplerate << "/" << bits_per_sample);
- audiooutput_config.volume = 0;
- audiooutput_config.modifyable = false;
+ adaptive_delay[primarySecondary].Restart();
- runtime.run_in_main (sigc::bind (device_opened.make_slot (), primarySecondary, current_state[primarySecondary].device, audiooutput_config));
+ Ekiga::AudioOutputConfig config;
+ config.volume = 0;
+ config.modifyable = false;
+ runtime.run_in_main (sigc::bind (device_opened.make_slot (), primarySecondary, current_state[primarySecondary].device, config));
return true;
}
Modified: trunk/lib/engine/audiooutput/null/audiooutput-manager-null.h
==============================================================================
--- trunk/lib/engine/audiooutput/null/audiooutput-manager-null.h (original)
+++ trunk/lib/engine/audiooutput/null/audiooutput-manager-null.h Tue May 20 19:18:11 2008
@@ -29,8 +29,7 @@
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : declaration of the interface of a audioinput core.
- * A audioinput core manages AudioInputManagers.
+ * description : declaration of a PTLIB audio input manager
*
*/
@@ -54,22 +53,9 @@
{
public:
- /* The constructor
- */
GMAudioOutputManager_null (Ekiga::ServiceCore & core);
- /* The destructor
- */
- ~GMAudioOutputManager_null () {}
-
- /*
- * DISPLAY MANAGEMENT
- */
-
- /** Create a call based on the remote uri given as parameter
- * @param uri an uri
- * @return true if a Ekiga::Call could be created
- */
+ ~GMAudioOutputManager_null () {}
virtual void get_devices (std::vector <Ekiga::AudioOutputDevice> & devices);
@@ -82,7 +68,8 @@
virtual bool set_frame_data (Ekiga::AudioOutputPrimarySecondary primarySecondary,
const char *data,
unsigned size,
- unsigned & bytes_written);
+ unsigned & bytes_written);
+
virtual bool has_device (const std::string & sink, const std::string & device_name, Ekiga::AudioOutputDevice & device);
protected:
@@ -90,11 +77,10 @@
Ekiga::Runtime & runtime;
PAdaptiveDelay adaptive_delay[2];
-
};
+
/**
* @}
*/
-
#endif
Modified: trunk/lib/engine/audiooutput/ptlib/audiooutput-manager-ptlib.cpp
==============================================================================
--- trunk/lib/engine/audiooutput/ptlib/audiooutput-manager-ptlib.cpp (original)
+++ trunk/lib/engine/audiooutput/ptlib/audiooutput-manager-ptlib.cpp Tue May 20 19:18:11 2008
@@ -41,7 +41,8 @@
#define DEVICE_TYPE "PTLIB"
GMAudioOutputManager_ptlib::GMAudioOutputManager_ptlib (Ekiga::ServiceCore & _core)
-: core (_core), runtime (*(dynamic_cast<Ekiga::Runtime *> (_core.get ("runtime"))))
+: core (_core),
+ runtime (*(dynamic_cast<Ekiga::Runtime *> (_core.get ("runtime"))))
{
current_state[Ekiga::primary].opened = false;
current_state[Ekiga::secondary].opened = false;
@@ -94,9 +95,6 @@
bool GMAudioOutputManager_ptlib::open (Ekiga::AudioOutputPrimarySecondary primarySecondary, unsigned channels, unsigned samplerate, unsigned bits_per_sample)
{
- unsigned volume;
- Ekiga::AudioOutputConfig audiooutput_config;
-
PTRACE(4, "GMAudioOutputManager_ptlib\tOpening Device " << current_state[primarySecondary].device);
PTRACE(4, "GMAudioOutputManager_ptlib\tOpening Device with " << channels << "-" << samplerate << "/" << bits_per_sample);
@@ -105,12 +103,12 @@
current_state[primarySecondary].bits_per_sample = bits_per_sample;
output_device[primarySecondary] = PSoundChannel::CreateOpenedChannel (current_state[primarySecondary].device.source,
- current_state[primarySecondary].device.name,
- PSoundChannel::Player,
- channels,
- samplerate,
- bits_per_sample);
-
+ current_state[primarySecondary].device.name,
+ PSoundChannel::Player,
+ channels,
+ samplerate,
+ bits_per_sample);
+
Ekiga::AudioOutputErrorCodes error_code = Ekiga::AO_ERROR_NONE;
if (!output_device[primarySecondary])
error_code = Ekiga::AO_ERROR_DEVICE;
@@ -121,13 +119,14 @@
return false;
}
+ unsigned volume;
output_device[primarySecondary]->GetVolume (volume);
current_state[primarySecondary].opened = true;
- audiooutput_config.volume = volume;
- audiooutput_config.modifyable = true;
-
- runtime.run_in_main (sigc::bind (device_opened.make_slot (), primarySecondary, current_state[primarySecondary].device, audiooutput_config));
+ Ekiga::AudioOutputConfig config;
+ config.volume = volume;
+ config.modifyable = true;
+ runtime.run_in_main (sigc::bind (device_opened.make_slot (), primarySecondary, current_state[primarySecondary].device, config));
return true;
}
Modified: trunk/lib/engine/audiooutput/ptlib/audiooutput-manager-ptlib.h
==============================================================================
--- trunk/lib/engine/audiooutput/ptlib/audiooutput-manager-ptlib.h (original)
+++ trunk/lib/engine/audiooutput/ptlib/audiooutput-manager-ptlib.h Tue May 20 19:18:11 2008
@@ -43,6 +43,7 @@
#include "ptbuildopts.h"
#include <ptlib/sound.h>
+
/**
* @addtogroup audioinput
* @{
@@ -53,22 +54,10 @@
{
public:
- /* The constructor
- */
GMAudioOutputManager_ptlib (Ekiga::ServiceCore & core);
- /* The destructor
- */
- ~GMAudioOutputManager_ptlib () {}
+ ~GMAudioOutputManager_ptlib () {}
- /*
- * DISPLAY MANAGEMENT
- */
-
- /** Create a call based on the remote uri given as parameter
- * @param uri an uri
- * @return true if a Ekiga::Call could be created
- */
virtual void get_devices (std::vector <Ekiga::AudioOutputDevice> & devices);
@@ -83,7 +72,7 @@
virtual bool set_frame_data (Ekiga::AudioOutputPrimarySecondary primarySecondary,
const char *data,
unsigned size,
- unsigned & bytes_written);
+ unsigned & bytes_written);
virtual void set_volume (Ekiga::AudioOutputPrimarySecondary primarySecondary, unsigned volume );
@@ -95,9 +84,9 @@
PSoundChannel *output_device[2];
};
+
/**
* @}
*/
-
#endif
Modified: trunk/lib/engine/audiooutput/skel/audiooutput-gmconf-bridge.cpp
==============================================================================
--- trunk/lib/engine/audiooutput/skel/audiooutput-gmconf-bridge.cpp (original)
+++ trunk/lib/engine/audiooutput/skel/audiooutput-gmconf-bridge.cpp Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * audiooutput-core.cpp - description
+ * audiooutput-gmconf-bridge.h - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : declaration of the interface of a audiooutput core.
- * A audiooutput core manages AudioOutputManagers.
+ * description : Declaration of the bridge between the gmconf
+ * and the audiooutput-core..
*
*/
Modified: trunk/lib/engine/audiooutput/skel/audiooutput-gmconf-bridge.h
==============================================================================
--- trunk/lib/engine/audiooutput/skel/audiooutput-gmconf-bridge.h (original)
+++ trunk/lib/engine/audiooutput/skel/audiooutput-gmconf-bridge.h Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * audiooutput-core.h - description
+ * audiooutput-gmconf-bridge.h - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : Declaration of the interface of a audiooutput core.
- * A audiooutput core manages AudioOutputManagers.
+ * description : Declaration of the bridge between the gmconf
+ * and the audiooutput-core..
*
*/
Modified: trunk/lib/engine/audiooutput/skel/audiooutput-info.h
==============================================================================
--- trunk/lib/engine/audiooutput/skel/audiooutput-info.h (original)
+++ trunk/lib/engine/audiooutput/skel/audiooutput-info.h Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * audioinput-core.h - description
+ * audioutput-info.h - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : Declaration of the interface of a vidinput core.
- * A vidinput core manages VidInputManagers.
+ * description : Declaration of structs and classes used for communication
+ * with the AudioInputManagers
*
*/
Modified: trunk/lib/engine/audiooutput/skel/audiooutput-manager.h
==============================================================================
--- trunk/lib/engine/audiooutput/skel/audiooutput-manager.h (original)
+++ trunk/lib/engine/audiooutput/skel/audiooutput-manager.h Tue May 20 19:18:11 2008
@@ -25,11 +25,11 @@
/*
- * audioinput-manager.h - description
+ * audiooutput-manager.h - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : Declaration of the interface of an audioinput manager
+ * description : Declaration of the interface of an audiooutput manager
* implementation backend.
*
*/
Modified: trunk/lib/engine/videoinput/mlogo/videoinput-main-mlogo.cpp
==============================================================================
--- trunk/lib/engine/videoinput/mlogo/videoinput-main-mlogo.cpp (original)
+++ trunk/lib/engine/videoinput/mlogo/videoinput-main-mlogo.cpp Tue May 20 19:18:11 2008
@@ -27,11 +27,11 @@
/*
- * vidinput-main-mlogo.cpp - description
+ * videoinput-main-mlogo.cpp - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : code to hook the Moving Logo vidinput manager
+ * description : code to hook the Moving Logo videoinput manager
* into the main program
*
*/
Modified: trunk/lib/engine/videoinput/mlogo/videoinput-main-mlogo.h
==============================================================================
--- trunk/lib/engine/videoinput/mlogo/videoinput-main-mlogo.h (original)
+++ trunk/lib/engine/videoinput/mlogo/videoinput-main-mlogo.h Tue May 20 19:18:11 2008
@@ -27,7 +27,7 @@
/*
- * videoinput-main-mlogo.h - description
+ * videoeoinput-main-mlogo.h - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
Modified: trunk/lib/engine/videoinput/mlogo/videoinput-manager-mlogo.cpp
==============================================================================
--- trunk/lib/engine/videoinput/mlogo/videoinput-manager-mlogo.cpp (original)
+++ trunk/lib/engine/videoinput/mlogo/videoinput-manager-mlogo.cpp Tue May 20 19:18:11 2008
@@ -25,11 +25,11 @@
/*
- * vidinput-manager-mlogo.cpp - description
+ * videoinput-manager-mlogo.cpp - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : Declaration of the interface of a vidinput core.
+ * description : Declaration of the interface of a videoinput core.
* A vidinput core manages VideoInputManagers.
*
*/
@@ -42,7 +42,8 @@
#define DEVICE_NAME "Moving Logo"
GMVideoInputManager_mlogo::GMVideoInputManager_mlogo (Ekiga::ServiceCore & _core)
-: core (_core), runtime (*(dynamic_cast<Ekiga::Runtime *> (_core.get ("runtime"))))
+: core (_core),
+ runtime (*(dynamic_cast<Ekiga::Runtime *> (_core.get ("runtime"))))
{
current_state.opened = false;
}
@@ -73,8 +74,6 @@
bool GMVideoInputManager_mlogo::open (unsigned width, unsigned height, unsigned fps)
{
- Ekiga::VidInputConfig vidinput_config;
-
PTRACE(4, "GMVideoInputManager_mlogo\tOpening Moving Logo with " << width << "x" << height << "/" << fps);
current_state.width = width;
current_state.height = height;
@@ -85,19 +84,26 @@
background_frame = (char*) malloc ((current_state.width * current_state.height * 3) >> 1);
memset (background_frame, 0xd3, current_state.width*current_state.height); //ff
- memset (background_frame + (current_state.width * current_state.height), 0x7f, (current_state.width*current_state.height) >> 2);
- memset (background_frame + (current_state.width * current_state.height) + ((current_state.width*current_state.height) >> 2), 0x7f, (current_state.width*current_state.height) >> 2);
+ memset (background_frame + (current_state.width * current_state.height),
+ 0x7f,
+ (current_state.width*current_state.height) >> 2);
+ memset (background_frame + (current_state.width * current_state.height) +
+ ((current_state.width * current_state.height) >> 2),
+ 0x7f,
+ (current_state.width*current_state.height) >> 2);
adaptive_delay.Restart();
adaptive_delay.SetMaximumSlip((unsigned )( 500.0 / fps));
current_state.opened = true;
- vidinput_config.whiteness = 127;
- vidinput_config.brightness = 127;
- vidinput_config.colour = 127;
- vidinput_config.contrast = 127;
- vidinput_config.modifyable = false;
- runtime.run_in_main (sigc::bind (device_opened.make_slot (), current_state.device, vidinput_config));
+
+ Ekiga::VidInputConfig config;
+ config.whiteness = 127;
+ config.brightness = 127;
+ config.colour = 127;
+ config.contrast = 127;
+ config.modifyable = false;
+ runtime.run_in_main (sigc::bind (device_opened.make_slot (), current_state.device, config));
return true;
}
Modified: trunk/lib/engine/videoinput/mlogo/videoinput-manager-mlogo.h
==============================================================================
--- trunk/lib/engine/videoinput/mlogo/videoinput-manager-mlogo.h (original)
+++ trunk/lib/engine/videoinput/mlogo/videoinput-manager-mlogo.h Tue May 20 19:18:11 2008
@@ -55,24 +55,13 @@
{
public:
- /* The constructor
- */
GMVideoInputManager_mlogo (Ekiga::ServiceCore & core);
- /* The destructor
- */
+
~GMVideoInputManager_mlogo () {}
- /*
- * DISPLAY MANAGEMENT
- */
-
- /** Create a call based on the remote uri given as parameter
- * @param uri an uri
- * @return true if a Ekiga::Call could be created
- */
virtual void get_devices(std::vector <Ekiga::VideoInputDevice> & devices);
-
+
virtual bool set_device (const Ekiga::VideoInputDevice & device, int channel, Ekiga::VideoInputFormat format);
virtual bool open (unsigned width, unsigned height, unsigned fps);
@@ -85,7 +74,7 @@
virtual bool has_device (const std::string & source, const std::string & device_name, unsigned capabilities, Ekiga::VideoInputDevice & device);
- protected:
+ protected:
void CopyYUVArea (const char* srcFrame,
unsigned srcWidth,
unsigned srcHeight,
Modified: trunk/lib/engine/videoinput/ptlib/videoinput-main-ptlib.cpp
==============================================================================
--- trunk/lib/engine/videoinput/ptlib/videoinput-main-ptlib.cpp (original)
+++ trunk/lib/engine/videoinput/ptlib/videoinput-main-ptlib.cpp Tue May 20 19:18:11 2008
@@ -27,11 +27,11 @@
/*
- * vidinput-main-ptlib.cpp - description
+ * videoinput-main-ptlib.cpp - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : code to hook the PTLIB vidinput manager
+ * description : code to hook the PTLIB videoinput manager
* into the main program
*
*/
Modified: trunk/lib/engine/videoinput/ptlib/videoinput-manager-ptlib.cpp
==============================================================================
--- trunk/lib/engine/videoinput/ptlib/videoinput-manager-ptlib.cpp (original)
+++ trunk/lib/engine/videoinput/ptlib/videoinput-manager-ptlib.cpp Tue May 20 19:18:11 2008
@@ -25,7 +25,7 @@
/*
- * vidinput-manager-ptlib.cpp - description
+ * videoinput-manager-ptlib.cpp - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
@@ -41,7 +41,8 @@
#define DEVICE_TYPE "PTLIB"
GMVideoInputManager_ptlib::GMVideoInputManager_ptlib (Ekiga::ServiceCore & _core)
-: core (_core), runtime (*(dynamic_cast<Ekiga::Runtime *> (_core.get ("runtime"))))
+: core (_core),
+ runtime (*(dynamic_cast<Ekiga::Runtime *> (_core.get ("runtime"))))
{
current_state.opened = false;
input_device = NULL;
@@ -97,8 +98,6 @@
bool GMVideoInputManager_ptlib::open (unsigned width, unsigned height, unsigned fps)
{
PVideoDevice::VideoFormat pvideo_format;
- int whiteness, brightness, colour, contrast, hue;
- Ekiga::VidInputConfig vidinput_config;
PTRACE(4, "GMVideoInputManager_ptlib\tOpening Device " << current_state.device);
PTRACE(4, "GMVideoInputManager_ptlib\tOpening Device with " << width << "x" << height << "/" << fps);
@@ -132,16 +131,18 @@
return false;
}
+ int whiteness, brightness, colour, contrast, hue;
input_device->GetParameters (&whiteness, &brightness, &colour, &contrast, &hue);
current_state.opened = true;
- vidinput_config.whiteness = whiteness >> 8;
- vidinput_config.brightness = brightness >> 8;
- vidinput_config.colour = colour >> 8;
- vidinput_config.contrast = contrast >> 8;
- vidinput_config.modifyable = true;
+ Ekiga::VidInputConfig config;
+ config.whiteness = whiteness >> 8;
+ config.brightness = brightness >> 8;
+ config.colour = colour >> 8;
+ config.contrast = contrast >> 8;
+ config.modifyable = true;
- runtime.run_in_main (sigc::bind (device_opened.make_slot (), current_state.device, vidinput_config));
+ runtime.run_in_main (sigc::bind (device_opened.make_slot (), current_state.device, config));
return true;
}
Modified: trunk/lib/engine/videoinput/ptlib/videoinput-manager-ptlib.h
==============================================================================
--- trunk/lib/engine/videoinput/ptlib/videoinput-manager-ptlib.h (original)
+++ trunk/lib/engine/videoinput/ptlib/videoinput-manager-ptlib.h Tue May 20 19:18:11 2008
@@ -43,6 +43,7 @@
#include "ptbuildopts.h"
#include <ptlib/videoio.h>
+
/**
* @addtogroup videoinput
* @{
@@ -53,22 +54,11 @@
{
public:
- /* The constructor
- */
GMVideoInputManager_ptlib (Ekiga::ServiceCore & core);
- /* The destructor
- */
+
~GMVideoInputManager_ptlib () {}
- /*
- * DISPLAY MANAGEMENT
- */
-
- /** Create a call based on the remote uri given as parameter
- * @param uri an uri
- * @return true if a Ekiga::Call could be created
- */
virtual void get_devices(std::vector <Ekiga::VideoInputDevice> & devices);
virtual bool set_device (const Ekiga::VideoInputDevice & device, int channel, Ekiga::VideoInputFormat format);
Modified: trunk/lib/engine/videoinput/skel/videoinput-core.cpp
==============================================================================
--- trunk/lib/engine/videoinput/skel/videoinput-core.cpp (original)
+++ trunk/lib/engine/videoinput/skel/videoinput-core.cpp Tue May 20 19:18:11 2008
@@ -29,8 +29,8 @@
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : declaration of the interface of a vidinput core.
- * A vidinput core manages VideoInputManagers.
+ * description : declaration of the interface of a videoinput core.
+ * A videoinput core manages VideoInputManagers.
*
*/
Modified: trunk/lib/engine/videoinput/skel/videoinput-gmconf-bridge.cpp
==============================================================================
--- trunk/lib/engine/videoinput/skel/videoinput-gmconf-bridge.cpp (original)
+++ trunk/lib/engine/videoinput/skel/videoinput-gmconf-bridge.cpp Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * vidinput-core.cpp - description
- * ------------------------------------------
+ * videoinput-gmconf-bridge.cpp - description
+ * -------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : declaration of the interface of a vidinput core.
- * A vidinput core manages VidInputManagers.
+ * description : Declaration of the bridge between the gmconf
+ * and the videoinput-core..
*
*/
Modified: trunk/lib/engine/videoinput/skel/videoinput-gmconf-bridge.h
==============================================================================
--- trunk/lib/engine/videoinput/skel/videoinput-gmconf-bridge.h (original)
+++ trunk/lib/engine/videoinput/skel/videoinput-gmconf-bridge.h Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * videoinput-core.h - description
+ * videoinput-gmconf-bridge.h - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : Declaration of the interface of a videoinput core.
- * A videoinput core manages VidInputManagers.
+ * description : Declaration of the bridge between the gmconf
+ * and the videoinput-core..
*
*/
Modified: trunk/lib/engine/videoinput/skel/videoinput-info.h
==============================================================================
--- trunk/lib/engine/videoinput/skel/videoinput-info.h (original)
+++ trunk/lib/engine/videoinput/skel/videoinput-info.h Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * videoinput-core.h - description
+ * videoinput-info.h - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : Declaration of the interface of a videoinput core.
- * A vidinput core manages VideoInputManagers.
+ * description : Declaration of structs and classes used for communication
+ * with the VideoInputManagers
*
*/
Modified: trunk/lib/engine/videooutput/common/videooutput-manager-common.cpp
==============================================================================
--- trunk/lib/engine/videooutput/common/videooutput-manager-common.cpp (original)
+++ trunk/lib/engine/videooutput/common/videooutput-manager-common.cpp Tue May 20 19:18:11 2008
@@ -266,7 +266,7 @@
return false;
}
-UpdateRequired
+GMVideoOutputManager::UpdateRequired
GMVideoOutputManager::redraw ()
{
UpdateRequired sync_required;
Modified: trunk/lib/engine/videooutput/common/videooutput-manager-common.h
==============================================================================
--- trunk/lib/engine/videooutput/common/videooutput-manager-common.h (original)
+++ trunk/lib/engine/videooutput/common/videooutput-manager-common.h Tue May 20 19:18:11 2008
@@ -27,19 +27,19 @@
/*
- * display-manager-common.h - description
+ * videooutput-manager-common.h - description
* ------------------------------
* begin : Sat Feb 17 2001
* copyright : (C) 2000-2008 by Damien Sandras
* : (C) 2007-2008 by Matthias Schneider
- * description : GMVideoManager: Generic class that represents
- * a thread that can display a video image and defines.
- * generic functions for local/remote/pip/pip external
- * window/fullscreen video display. Provides interface
- * to the GUI for an embedded window, display mode
- * control and feedback of information like the status
- * of the video acceleration. Also provides the
- * copying and local storage of the video frame.
+ * description : Generic class that represents
+ * a thread that can display a video image and defines.
+ * generic functions for local/remote/pip/pip external
+ * window/fullscreen video display. Provides interface
+ * to the GUI for an embedded window, display mode
+ * control and feedback of information like the status
+ * of the video acceleration. Also provides the
+ * copying and local storage of the video frame.
*/
@@ -48,190 +48,166 @@
#include "videooutput-manager.h"
#include "runtime.h"
-//FIXME
+
#include "ptbuildopts.h"
#include "ptlib.h"
+/**
+ * @addtogroup videooutput
+ * @{
+ */
+
+ class GMVideoOutputManager
+ : public PThread,
+ public Ekiga::VideoOutputManager
+ {
+ PCLASSINFO(GMVideoOutputManager, PThread);
+ public:
+
+ GMVideoOutputManager (Ekiga::ServiceCore & core);
+
+ virtual ~GMVideoOutputManager (void);
+
+ virtual void open ();
+
+ virtual void close ();
-typedef struct {
- VideoOutputMode mode;
- unsigned int remote_width;
- unsigned int remote_height;
-
- unsigned int local_width;
- unsigned int local_height;
-
- unsigned int zoom;
-
- int embedded_x;
- int embedded_y;
-} FrameInfo;
-
-typedef struct {
- bool local;
- bool remote;
-} UpdateRequired;
-
-
-class GMVideoOutputManager
- : public PThread,
- public Ekiga::VideoOutputManager
-{
- PCLASSINFO(GMVideoOutputManager, PThread);
-public:
-
- /* DESCRIPTION : The constructor.
- * BEHAVIOR : Initialises the VideoDisplay_embedded.
- * PRE : /
- */
- GMVideoOutputManager (Ekiga::ServiceCore & core);
-
-
- /* DESCRIPTION : The destructor.
- * BEHAVIOR : /
- * PRE : /
- */
- virtual ~GMVideoOutputManager (void);
-
- virtual void open ();
-
- virtual void close ();
-
- /* DESCRIPTION : /
- * BEHAVIOR : Copy the frame data to a local structur and signal
- * the thread to display it.
- * PRE : width and height (>=0),
- * the data
- * a boolean whether frame is a local or remote one
- * and the number of opened devices .
- */
- virtual void set_frame_data (const char* data,
+ virtual void set_frame_data (const char* data,
unsigned width,
unsigned height,
bool local,
int devices_nbr);
-
- virtual void set_display_info (const DisplayInfo & _display_info)
- {
+ virtual void set_display_info (const DisplayInfo & _display_info)
+ {
PWaitAndSignal m(display_info_mutex);
display_info = _display_info;
- };
+ };
+ protected:
+ typedef struct {
+ bool local;
+ bool remote;
+ } UpdateRequired;
+
+ /** The main video thread loop
+ * The video output thread loop that waits for a frame and
+ * then displays it
+ */
+ virtual void Main ();
+
+ /** Check if the display needs to be reinitialized
+ * Returns true if the given settings require a
+ * reinitialization of the display, false
+ * otherwise.
+ */
+ virtual bool frame_display_change_needed ();
+
+ /** Set up the display
+ * Setup the display following the display type,
+ * picture dimensions and zoom value.
+ * Returns false in case of failure.
+ */
+ virtual void setup_frame_display () = 0;
+
+ /** Close the display
+ * Closes the frame display and returns false
+ * in case of failure.
+ */
+ virtual void close_frame_display () = 0;
+
+ /** Display one frame
+ * Display the given frame on the correct display.
+ * The display needs to be initialized first by using
+ * setup_frame_display().
+ */
+ virtual void display_frame (const char *frame,
+ unsigned width,
+ unsigned height) = 0;
- protected:
+ /** Display two frames as picture-in-pictu
+ * Display the given frames as Picture in Picture.
+ * The display needs to be initialized first by using
+ * setup_frame_display().
+ */
+ virtual void display_pip_frames (const char *local_frame,
+ unsigned lf_width,
+ unsigned lf_height,
+ const char *remote_frame,
+ unsigned rf_width,
+ unsigned rf_height) = 0;
+
+ /** Draw the frame
+ * Draw the frame to a backbuffer, do not show it yet.
+ */
+ virtual UpdateRequired redraw ();
+
+
+ /** Sync the output of the frame
+ * Bring the frame to the screen. May block for
+ * a while if sync-to-vblank is active
+ */
+ virtual void sync(UpdateRequired sync_required) = 0;
+
+ /** Initialises the display
+ */
+ virtual void init ();
+
+ /** Uninitialises the display
+ */
+ virtual void uninit ();
+
+ virtual void get_display_info (DisplayInfo & _display_info) {
+ PWaitAndSignal m(display_info_mutex);
+ _display_info = display_info;
+ }
+
+ /* This variable has to be protected by display_info_mutex */
+ DisplayInfo display_info;
+ PMutex display_info_mutex; /* To protect the DisplayInfo object */
+
+ PBYTEArray lframeStore;
+ PBYTEArray rframeStore;
+
+ typedef struct {
+ VideoOutputMode mode;
+ unsigned int remote_width;
+ unsigned int remote_height;
+
+ unsigned int local_width;
+ unsigned int local_height;
+
+ unsigned int zoom;
+
+ int embedded_x;
+ int embedded_y;
+ } FrameInfo;
+ FrameInfo last_frame;
+ FrameInfo current_frame;
+
+ bool first_frame_received;
+ bool video_disabled;
+ UpdateRequired update_required;
+
+ PSyncPoint run_thread; /* To signal the thread shall execute its tasks */
+ bool end_thread;
+ bool init_thread;
+ bool uninit_thread;
+
+ PSyncPoint thread_created; /* To signal that the thread has been created */
+ PSyncPoint thread_initialised; /* To signal that the thread has been initialised */
+ PSyncPoint thread_uninitialised; /* To signal that the thread has been uninitialised */
+ PMutex thread_ended; /* To exit */
+
+ PMutex var_mutex; /* To protect variables that are read and written
+ from various threads */
+
+ Ekiga::ServiceCore & core;
+ Ekiga::Runtime & runtime;
+ };
- /* DESCRIPTION : The video thread loop that waits for a frame and
- * then displays it
- * BEHAVIOR : Loops and displays
- * PRE : /
- */
- virtual void Main (void);
-
- /* DESCRIPTION : /
- * BEHAVIOR : Returns TRUE if the given settings require a
- * reinitialization of the display, FALSE
- * otherwise.
- * PRE : /
- */
- virtual bool frame_display_change_needed ();
-
- /* DESCRIPTION : /
- * BEHAVIOR : Setup the display following the display type,
- * picture dimensions and zoom value.
- * Returns FALSE in case of failure.
- * PRE : /
- */
- virtual void setup_frame_display () = 0;
-
- /* DESCRIPTION : /
- * BEHAVIOR : Closes the frame display and returns FALSE
- * in case of failure.
- * PRE : /
- */
- virtual void close_frame_display () = 0;
-
- /* DESCRIPTION : /
- * BEHAVIOR : Display the given frame on the correct display.
- * PRE : The display needs to be initialized using
- * SetupFrameDisplay.
- */
- virtual void display_frame (const char *frame,
- unsigned width,
- unsigned height) = 0;
-
-
- /* DESCRIPTION : /
- * BEHAVIOR : Display the given frames as Picture in Picture.
- * PRE : The display needs to be initialized using
- * SetupFrameDisplay.
- */
- virtual void display_pip_frames (const char *local_frame,
- unsigned lf_width,
- unsigned lf_height,
- const char *remote_frame,
- unsigned rf_width,
- unsigned rf_height) = 0;
-
- /* DESCRIPTION : /
- * BEHAVIOR : Draw the frame via the Display* functions
- * PRE : /
- */
- virtual UpdateRequired redraw ();
-
-
- /* DESCRIPTION : /
- * BEHAVIOR : Sync the output of the frame to the display
- * PRE : /
- */
- virtual void sync(UpdateRequired sync_required) = 0;
-
- /* DESCRIPTION : /
- * BEHAVIOR : Initialises the display
- * PRE : /
- */
- virtual void init ();
-
- /* DESCRIPTION : /
- * BEHAVIOR : Uninitialises the frame containers
- * PRE : /
- */
- virtual void uninit ();
-
- virtual void get_display_info (DisplayInfo & _display_info) {
- PWaitAndSignal m(display_info_mutex);
- _display_info = display_info;
- }
-
- /* This variable has to be protected by display_info_mutex */
- DisplayInfo display_info;
- PMutex display_info_mutex; /* To protect the DisplayInfo object */
-
- PBYTEArray lframeStore;
- PBYTEArray rframeStore;
-
- FrameInfo last_frame;
- FrameInfo current_frame;
-
- bool first_frame_received;
- bool video_disabled;
- UpdateRequired update_required;
-
- PSyncPoint run_thread; /* To signal the thread shall execute its tasks */
- bool end_thread;
- bool init_thread;
- bool uninit_thread;
-
- PSyncPoint thread_created; /* To signal that the thread has been created */
- PSyncPoint thread_initialised; /* To signal that the thread has been initialised */
- PSyncPoint thread_uninitialised; /* To signal that the thread has been uninitialised */
- PMutex thread_ended; /* To exit */
-
- PMutex var_mutex; /* To protect variables that are read and written
- from various threads */
-
- Ekiga::ServiceCore & core;
- Ekiga::Runtime & runtime;
-};
+/**
+ * @}
+ */
#endif /* VIDEODISPLAY */
Modified: trunk/lib/engine/videooutput/dx/videooutput-main-dx.h
==============================================================================
--- trunk/lib/engine/videooutput/dx/videooutput-main-dx.h (original)
+++ trunk/lib/engine/videooutput/dx/videooutput-main-dx.h Tue May 20 19:18:11 2008
@@ -27,11 +27,11 @@
/*
- * display-main-dx.h - description
+ * videooutput-main-dx.h - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : code to hook the DX display manager into the main program
+ * description : code to hook the DX videooutput manager into the main program
*
*/
Modified: trunk/lib/engine/videooutput/dx/videooutput-manager-dx.cpp
==============================================================================
--- trunk/lib/engine/videooutput/dx/videooutput-manager-dx.cpp (original)
+++ trunk/lib/engine/videooutput/dx/videooutput-manager-dx.cpp Tue May 20 19:18:11 2008
@@ -26,7 +26,7 @@
/*
- * display-manager-dx.cpp - description
+ * videooutput-manager-dx.cpp - description
* ----------------------------------
* begin : Sun Nov 19 2006
* copyright : (C) 2006-2008 by Matthias Schneider
Modified: trunk/lib/engine/videooutput/dx/videooutput-manager-dx.h
==============================================================================
--- trunk/lib/engine/videooutput/dx/videooutput-manager-dx.h (original)
+++ trunk/lib/engine/videooutput/dx/videooutput-manager-dx.h Tue May 20 19:18:11 2008
@@ -27,7 +27,7 @@
/*
-* display-manager-dx.h - description
+* videooutput-manager-dx.h - description
* ----------------------------------
* begin : Sun Nov 19 2006
* copyright : (C) 2006-2008 by Matthias Schneider
@@ -44,66 +44,45 @@
#include "videooutput-manager-common.h"
#include "dxwindow.h"
-class GMVideoOutputManager_dx
- : public GMVideoOutputManager
-{
-public:
- GMVideoOutputManager_dx (Ekiga::ServiceCore & _core);
-
- ~GMVideoOutputManager_dx ();
-
- /* DESCRIPTION : /
- * BEHAVIOR : Returns TRUE if the given settings require a
- * reinitialization of the display, FALSE
- * otherwise.
- * PRE : /
- */
- virtual bool frame_display_change_needed ();
-
- /* DESCRIPTION : /
- * BEHAVIOR : Setup the display following the display type,
- * picture dimensions and zoom value.
- * Returns FALSE in case of failure.
- * PRE : /
- */
- virtual void setup_frame_display ();
-
- /* DESCRIPTION : /
- * BEHAVIOR : Closes the frame display and returns FALSE
- * in case of failure.
- * PRE : /
- */
- virtual void close_frame_display ();
-
- /* DESCRIPTION : /
- * BEHAVIOR : Display the given frame on the correct display.
- * PRE : The display needs to be initialized using
- * SetupFrameDisplay.
- */
- virtual void display_frame (const char *frame,
- unsigned width,
- unsigned height);
-
- /* DESCRIPTION : /
- * BEHAVIOR : Display the given frames as Picture in Picture.
- * PRE : The display needs to be initialized using
- * SetupFrameDisplay.
- */
- virtual void display_pip_frames (const char *local_frame,
- unsigned lf_width,
- unsigned lf_height,
- const char *remote_frame,
- unsigned rf_width,
- unsigned rf_height);
-
-protected:
-
- /* DESCRIPTION : /
- * BEHAVIOR : Sync the output of the frame to the display
- * PRE : /
- */
- virtual void sync(UpdateRequired sync_required);
+/**
+ * @addtogroup videooutput
+ * @{
+ */
+
+ class GMVideoOutputManager_dx
+ : public GMVideoOutputManager
+ {
+ public:
+ GMVideoOutputManager_dx (Ekiga::ServiceCore & _core);
+
+ ~GMVideoOutputManager_dx ();
+
+ virtual bool frame_display_change_needed ();
+
+ virtual void setup_frame_display ();
+
+ virtual void close_frame_display ();
+
+ virtual void display_frame (const char *frame,
+ unsigned width,
+ unsigned height);
+
+ virtual void display_pip_frames (const char *local_frame,
+ unsigned lf_width,
+ unsigned lf_height,
+ const char *remote_frame,
+ unsigned rf_width,
+ unsigned rf_height);
+
+ protected:
+
+ virtual void sync(UpdateRequired sync_required);
+
+ DXWindow *dxWindow;
+ };
+
+/**
+ * @}
+ */
- DXWindow *dxWindow;
-};
#endif /* _VIDEOOUTPUT_MANAGER_DX_H_ */
Modified: trunk/lib/engine/videooutput/skel/videooutput-core.cpp
==============================================================================
--- trunk/lib/engine/videooutput/skel/videooutput-core.cpp (original)
+++ trunk/lib/engine/videooutput/skel/videooutput-core.cpp Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * display-core.cpp - description
+ * videooutput-core.cpp - description
* ------------------------------------------
* begin : written in 2007 by Matthias Schneider
* copyright : (c) 2007 by Matthias Schneider
- * description : declaration of the interface of a display core.
- * A display core manages VideoOutputManagers.
+ * description : declaration of the interface of a videooutput core.
+ * A videooutput core manages VideoOutputManagers.
*
*/
Modified: trunk/lib/engine/videooutput/skel/videooutput-core.h
==============================================================================
--- trunk/lib/engine/videooutput/skel/videooutput-core.h (original)
+++ trunk/lib/engine/videooutput/skel/videooutput-core.h Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * display-core.h - description
+ * videooutput-core.h - description
* ------------------------------------------
* begin : written in 2007 by Matthias Schneider
* copyright : (c) 2007 by Matthias Schneider
- * description : declaration of the interface of a display core.
- * A display core manages DisplayManagers.
+ * description : declaration of the interface of a videooutput core.
+ * A videooutput core manages VideoOutputManagers.
*
*/
@@ -48,7 +48,6 @@
#include <glib.h>
-//FIXME
#include "ptbuildopts.h"
#include "ptlib.h"
Modified: trunk/lib/engine/videooutput/skel/videooutput-gmconf-bridge.cpp
==============================================================================
--- trunk/lib/engine/videooutput/skel/videooutput-gmconf-bridge.cpp (original)
+++ trunk/lib/engine/videooutput/skel/videooutput-gmconf-bridge.cpp Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * vidinput-core.cpp - description
+ * videooutput-gmconf-bridge.cpp - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : declaration of the interface of a vidinput core.
- * A vidinput core manages VidInputManagers.
+ * description : Declaration of the bridge between the gmconf
+ * and the videooutput-core.
*
*/
Modified: trunk/lib/engine/videooutput/skel/videooutput-gmconf-bridge.h
==============================================================================
--- trunk/lib/engine/videooutput/skel/videooutput-gmconf-bridge.h (original)
+++ trunk/lib/engine/videooutput/skel/videooutput-gmconf-bridge.h Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * videoinput-core.h - description
+ * videooutput-gmconf-bridge.h - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
- * description : Declaration of the interface of a display core.
- * A display core manages DisplayManagers.
+ * description : Declaration of the bridge between the gmconf
+ * and the videooutput-core.
*
*/
Modified: trunk/lib/engine/videooutput/skel/videooutput-info.h
==============================================================================
--- trunk/lib/engine/videooutput/skel/videooutput-info.h (original)
+++ trunk/lib/engine/videooutput/skel/videooutput-info.h Tue May 20 19:18:11 2008
@@ -25,12 +25,12 @@
/*
- * display-info.h - description
+ * videooutput-info.h - description
* ------------------------------------------
* begin : written in 2007 by Matthias Schneider
* copyright : (c) 2007 by Matthias Schneider
- * description : declaration of structs and classes used for communication
- * with the DisplayManagers
+ * description : Declaration of structs and classes used for communication
+ * with the VideoOutputManagers
*
*/
Modified: trunk/lib/engine/videooutput/skel/videooutput-manager.h
==============================================================================
--- trunk/lib/engine/videooutput/skel/videooutput-manager.h (original)
+++ trunk/lib/engine/videooutput/skel/videooutput-manager.h Tue May 20 19:18:11 2008
@@ -25,11 +25,11 @@
/*
- * display-manager.h - description
+ * videooutput-manager.h - description
* ------------------------------------------
* begin : written in 2007 by Matthias Schneider
* copyright : (c) 2007 by Matthias Schneider
- * description : Declaration of the interface of a display manager
+ * description : Declaration of the interface of a videooutput manager
* implementation backend.
*
*/
Modified: trunk/lib/engine/videooutput/x/videooutput-main-x.cpp
==============================================================================
--- trunk/lib/engine/videooutput/x/videooutput-main-x.cpp (original)
+++ trunk/lib/engine/videooutput/x/videooutput-main-x.cpp Tue May 20 19:18:11 2008
@@ -27,7 +27,7 @@
/*
- * display-main-x.cpp - description
+ * videooutput-main-x.cpp - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
Modified: trunk/lib/engine/videooutput/x/videooutput-main-x.h
==============================================================================
--- trunk/lib/engine/videooutput/x/videooutput-main-x.h (original)
+++ trunk/lib/engine/videooutput/x/videooutput-main-x.h Tue May 20 19:18:11 2008
@@ -27,7 +27,7 @@
/*
- * display-main-x.h - description
+ * videooutput-main-x.h - description
* ------------------------------------------
* begin : written in 2008 by Matthias Schneider
* copyright : (c) 2008 by Matthias Schneider
Modified: trunk/lib/engine/videooutput/x/videooutput-manager-x.cpp
==============================================================================
--- trunk/lib/engine/videooutput/x/videooutput-manager-x.cpp (original)
+++ trunk/lib/engine/videooutput/x/videooutput-manager-x.cpp Tue May 20 19:18:11 2008
@@ -26,7 +26,7 @@
/*
- * display-manager-x.cpp - description
+ * videooutput-manager-x.cpp - description
* ----------------------------------
* begin : Sun Nov 19 2006
* copyright : (C) 2006-2008 by Matthias Schneider
Modified: trunk/lib/engine/videooutput/x/videooutput-manager-x.h
==============================================================================
--- trunk/lib/engine/videooutput/x/videooutput-manager-x.h (original)
+++ trunk/lib/engine/videooutput/x/videooutput-manager-x.h Tue May 20 19:18:11 2008
@@ -27,7 +27,7 @@
/*
-* display-manager-x.h - description
+* videooutput-manager-x.h - description
* ----------------------------------
* begin : Sun Nov 19 2006
* copyright : (C) 2006-2008 by Matthias Schneider
@@ -44,6 +44,11 @@
#include "videooutput-manager-common.h"
#include "xwindow.h"
+/**
+ * @addtogroup videooutput
+ * @{
+ */
+
class GMVideoOutputManager_x
: public GMVideoOutputManager
{
@@ -52,56 +57,25 @@
~GMVideoOutputManager_x ();
- /* DESCRIPTION : /
- * BEHAVIOR : Returns TRUE if the given settings require a
- * reinitialization of the display, FALSE
- * otherwise.
- * PRE : /
- */
virtual bool frame_display_change_needed ();
- /* DESCRIPTION : /
- * BEHAVIOR : Setup the display following the display type,
- * picture dimensions and zoom value.
- * Returns FALSE in case of failure.
- * PRE : /
- */
virtual void setup_frame_display ();
- /* DESCRIPTION : /
- * BEHAVIOR : Closes the frame display and returns FALSE
- * in case of failure.
- * PRE : /
- */
virtual void close_frame_display ();
- /* DESCRIPTION : /
- * BEHAVIOR : Display the given frame on the correct display.
- * PRE : The display needs to be initialized using
- * SetupFrameDisplay.
- */
virtual void display_frame (const char *frame,
unsigned width,
unsigned height);
- /* DESCRIPTION : /
- * BEHAVIOR : Display the given frames as Picture in Picture.
- * PRE : The display needs to be initialized using
- * SetupFrameDisplay.
- */
virtual void display_pip_frames (const char *local_frame,
unsigned lf_width,
unsigned lf_height,
const char *remote_frame,
unsigned rf_width,
unsigned rf_height);
-
+
protected:
- /* DESCRIPTION : /
- * BEHAVIOR : Sync the output of the frame to the display
- * PRE : /
- */
virtual void sync(UpdateRequired sync_required);
XWindow *lxWindow;
@@ -111,6 +85,10 @@
Display *rDisplay;
bool pip_window_available;
-
};
+
+/**
+ * @}
+ */
+
#endif /* _VIDEOOUTPUT_MANAGER_X_H_ */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]