summaryrefslogtreecommitdiff
path: root/orkaudio/audiocaptureplugins
diff options
context:
space:
mode:
authorHenri Herscher <henri@oreka.org>2005-11-15 04:19:31 +0000
committerHenri Herscher <henri@oreka.org>2005-11-15 04:19:31 +0000
commit7653151cb08cfa40eec22e7aac3068b009207bc8 (patch)
treec41e2f1bbf73001791248fb18d842a01978ad0e8 /orkaudio/audiocaptureplugins
parent61cb474c09cce3a667774c4f4eef093c2025f324 (diff)
Improvements in the shutdown procedure (NT service does not crash on exit anymore, give two seconds to threads to exit properly).
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@44 09dcff7a-b715-0410-9601-b79a96267cd0
Diffstat (limited to 'orkaudio/audiocaptureplugins')
-rw-r--r--orkaudio/audiocaptureplugins/common/AudioCapturePluginCommon.cpp4
-rw-r--r--orkaudio/audiocaptureplugins/common/AudioCapturePluginCommon.h3
-rw-r--r--orkaudio/audiocaptureplugins/generator/Generator.cpp2
-rw-r--r--orkaudio/audiocaptureplugins/sounddevice/SoundDevice.cpp2
-rw-r--r--orkaudio/audiocaptureplugins/voip/VoIp.cpp14
5 files changed, 19 insertions, 6 deletions
diff --git a/orkaudio/audiocaptureplugins/common/AudioCapturePluginCommon.cpp b/orkaudio/audiocaptureplugins/common/AudioCapturePluginCommon.cpp
index 31c8503..ca35e51 100644
--- a/orkaudio/audiocaptureplugins/common/AudioCapturePluginCommon.cpp
+++ b/orkaudio/audiocaptureplugins/common/AudioCapturePluginCommon.cpp
@@ -19,9 +19,9 @@
AudioChunkCallBackFunction g_audioChunkCallBack;
CaptureEventCallBackFunction g_captureEventCallBack;
-LogManager* g_logManager;
+OrkLogManager* g_logManager;
-void __CDECL__ RegisterCallBacks(AudioChunkCallBackFunction audioCallBack, CaptureEventCallBackFunction captureEventCallBack, LogManager* logManager)
+void __CDECL__ RegisterCallBacks(AudioChunkCallBackFunction audioCallBack, CaptureEventCallBackFunction captureEventCallBack, OrkLogManager* logManager)
{
g_audioChunkCallBack = audioCallBack;
g_captureEventCallBack = captureEventCallBack;
diff --git a/orkaudio/audiocaptureplugins/common/AudioCapturePluginCommon.h b/orkaudio/audiocaptureplugins/common/AudioCapturePluginCommon.h
index b7940ef..951e097 100644
--- a/orkaudio/audiocaptureplugins/common/AudioCapturePluginCommon.h
+++ b/orkaudio/audiocaptureplugins/common/AudioCapturePluginCommon.h
@@ -25,9 +25,10 @@
// Shared library exports
extern "C" // to avoid function name decoration, makes them easier to lookup
{
-DLL_EXPORT void __CDECL__ RegisterCallBacks(AudioChunkCallBackFunction, CaptureEventCallBackFunction, LogManager*);
+DLL_EXPORT void __CDECL__ RegisterCallBacks(AudioChunkCallBackFunction, CaptureEventCallBackFunction, OrkLogManager*);
DLL_EXPORT void __CDECL__ Run();
DLL_EXPORT void __CDECL__ Initialize();
+DLL_EXPORT void __CDECL__ Shutdown();
DLL_EXPORT void __CDECL__ Configure(DOMNode*);
DLL_EXPORT void __CDECL__ StartCapture(CStdString& capturePort);
DLL_EXPORT void __CDECL__ StopCapture(CStdString& capturePort);
diff --git a/orkaudio/audiocaptureplugins/generator/Generator.cpp b/orkaudio/audiocaptureplugins/generator/Generator.cpp
index 77bfdf9..8deb07a 100644
--- a/orkaudio/audiocaptureplugins/generator/Generator.cpp
+++ b/orkaudio/audiocaptureplugins/generator/Generator.cpp
@@ -21,7 +21,7 @@
extern AudioChunkCallBackFunction g_audioChunkCallBack;
extern CaptureEventCallBackFunction g_captureEventCallBack;
-extern LogManager* g_logManager;
+extern OrkLogManager* g_logManager;
GeneratorConfigTopObjectRef g_generatorConfigTopObjectRef;
#define GCONFIG g_generatorConfigTopObjectRef.get()->m_config
diff --git a/orkaudio/audiocaptureplugins/sounddevice/SoundDevice.cpp b/orkaudio/audiocaptureplugins/sounddevice/SoundDevice.cpp
index 2a6bef4..4252f0d 100644
--- a/orkaudio/audiocaptureplugins/sounddevice/SoundDevice.cpp
+++ b/orkaudio/audiocaptureplugins/sounddevice/SoundDevice.cpp
@@ -24,7 +24,7 @@
extern AudioChunkCallBackFunction g_audioChunkCallBack;
extern CaptureEventCallBackFunction g_captureEventCallBack;
-extern LogManager* g_logManager;
+extern OrkLogManager* g_logManager;
SoundDeviceConfigTopObjectRef g_soundDeviceConfigTopObjectRef;
#define DLLCONFIG g_soundDeviceConfigTopObjectRef.get()->m_config
diff --git a/orkaudio/audiocaptureplugins/voip/VoIp.cpp b/orkaudio/audiocaptureplugins/voip/VoIp.cpp
index adc21da..ea23fb1 100644
--- a/orkaudio/audiocaptureplugins/voip/VoIp.cpp
+++ b/orkaudio/audiocaptureplugins/voip/VoIp.cpp
@@ -30,7 +30,7 @@
extern AudioChunkCallBackFunction g_audioChunkCallBack;
extern CaptureEventCallBackFunction g_captureEventCallBack;
-extern LogManager* g_logManager;
+extern OrkLogManager* g_logManager;
#include "LogManager.h"
@@ -384,6 +384,7 @@ public:
VoIp();
void Initialize();
void Run();
+ void Shutdown();
void StartCapture(CStdString& port);
void StopCapture(CStdString& port);
private:
@@ -523,6 +524,12 @@ void VoIp::Run()
}
}
+void VoIp::Shutdown()
+{
+ LOG4CXX_INFO(s_log, "Shutting down VoIp.dll");
+ pcap_breakloop(m_pcapHandle);
+}
+
void VoIp::StartCapture(CStdString& port)
{
;
@@ -543,6 +550,11 @@ void __CDECL__ Run()
VoIpSingleton::instance()->Run();
}
+void __CDECL__ Shutdown()
+{
+ VoIpSingleton::instance()->Shutdown();
+}
+
void __CDECL__ StartCapture(CStdString& capturePort)
{
;