#ifdef __cplusplus
-
+#include <atomic>
#include <stdio.h>
#include <dlog.h>
#include "CAudioError.h"
#include "CAudioInfo.h"
-#include "IAudioSessionEventListener.h"
-#include "CAudioSessionHandler.h"
#include "IPulseStreamListener.h"
-#include "CPulseAudioVolume.h"
-#include "CPulseAudioPolicy.h"
#include "CPulseStreamSpec.h"
#include "CPulseAudioClient.h"
#include "CAudioIO.h"
#include "CAudioInput.h"
#include "CAudioOutput.h"
+#include "CAudioLocker.h"
//#define _AUDIO_IO_DEBUG_TIMING_
#define COLOR_END
#endif
-
-#define RET_ERROR(_x_) do {return CAudioError((_x_), __FILE__, __func__, __LINE__);} while(0)
-#define RET_ERROR_MSG(_x_, _msg_) do {return CAudioError((_x_), (_msg_), __FILE__, __func__, __LINE__);} while(0)
-
-#define RET_ERROR_MSG_FORMAT(_x_, _format_, ...) do { \
- char _msg_[CAudioError::MSG_LENGTH] = {0, }; \
- snprintf(_msg_, CAudioError::MSG_LENGTH, _format_, ##__VA_ARGS__); \
- return CAudioError((_x_), (_msg_), __FILE__, __func__, __LINE__); \
-} while (0)
-
-
-#define THROW_ERROR(_x_) do {throw CAudioError((_x_), __FILE__, __func__, __LINE__);} while (0)
-#define THROW_ERROR_MSG(_x_, _msg_) do {throw CAudioError((_x_), (_msg_), __FILE__, __func__, __LINE__);} while (0)
+#define THROW_ERROR_MSG(_x_, _msg_) do {throw CAudioError((_x_), (_msg_), __FILENAME__, __func__, __LINE__);} while (0)
#define THROW_ERROR_MSG_FORMAT(_x_, _format_, ...) do { \
char _msg_[CAudioError::MSG_LENGTH] = {0, }; \
snprintf(_msg_, CAudioError::MSG_LENGTH, _format_, ##__VA_ARGS__); \
- throw CAudioError((_x_), (_msg_), __FILE__, __func__, __LINE__); \
+ throw CAudioError((_x_), (_msg_), __FILENAME__, __func__, __LINE__); \
} while (0)
#define VALID_POINTER_START(_x_) { \
#define SAFE_DELETE(_x_) do {if ((_x_)) {delete (_x_); (_x_) = NULL;}} while (0)
#define SAFE_FINALIZE(_x_) do {if ((_x_)) {(_x_)->finalize();}} while (0)
-#define SAFE_REMOVE(_x_) do {if ((_x_)) {(_x_)->finalize(); delete (_x_); (_x_) = NULL;}} while (0)
#define DEFAULT_PERIOD_SIZE 50