mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-10 23:44:24 +00:00
Added Logger::getCurrentLogger method.
This commit is contained in:
parent
828d6f8e18
commit
fdb31aff5c
6 changed files with 57 additions and 64 deletions
|
|
@ -470,13 +470,13 @@ private:
|
|||
resourceFile.setClassName ("BinaryData");
|
||||
|
||||
Array<File> binaryDataFiles;
|
||||
|
||||
|
||||
if (resourceFile.write (binaryDataCpp, binaryDataFiles))
|
||||
{
|
||||
for (int i = 0; i < binaryDataFiles.size(); ++i)
|
||||
{
|
||||
const File& f = binaryDataFiles.getReference(i);
|
||||
|
||||
|
||||
filesCreated.add (f);
|
||||
generatedFilesGroup.addFile (f, -1, ! f.hasFileExtension (".h"));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -124,7 +124,7 @@ static String getComment()
|
|||
<< newLine
|
||||
<< "*/" << newLine
|
||||
<< newLine;
|
||||
|
||||
|
||||
return comment;
|
||||
}
|
||||
|
||||
|
|
@ -170,7 +170,7 @@ bool ResourceFile::writeCpp (MemoryOutputStream& cpp, const File& headerFile, in
|
|||
{
|
||||
const int maxFileSize = 10 * 1024 * 1024;
|
||||
const bool isFirstFile = (i == 0);
|
||||
|
||||
|
||||
cpp << "/* ==================================== " << resourceFileIdentifierString << " ===================================="
|
||||
<< getComment()
|
||||
<< "namespace " << className << newLine
|
||||
|
|
@ -204,13 +204,13 @@ bool ResourceFile::writeCpp (MemoryOutputStream& cpp, const File& headerFile, in
|
|||
cpp << newLine << newLine
|
||||
<< "const char* " << variableName << " = (const char*) " << tempVariable << ";" << newLine;
|
||||
}
|
||||
|
||||
|
||||
++i;
|
||||
|
||||
|
||||
if (cpp.getPosition() > maxFileSize)
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
if (isFirstFile)
|
||||
{
|
||||
if (i < files.size())
|
||||
|
|
@ -223,7 +223,7 @@ bool ResourceFile::writeCpp (MemoryOutputStream& cpp, const File& headerFile, in
|
|||
<< "namespace " << className << newLine
|
||||
<< "{";
|
||||
}
|
||||
|
||||
|
||||
cpp << newLine
|
||||
<< newLine
|
||||
<< "const char* getNamedResource (const char*, int&) throw();" << newLine
|
||||
|
|
@ -244,7 +244,7 @@ bool ResourceFile::writeCpp (MemoryOutputStream& cpp, const File& headerFile, in
|
|||
<< " return 0;" << newLine
|
||||
<< "}" << newLine;
|
||||
}
|
||||
|
||||
|
||||
cpp << newLine
|
||||
<< "}" << newLine;
|
||||
|
||||
|
|
@ -259,17 +259,17 @@ bool ResourceFile::write (const File& cppFile, Array<File>& filesCreated)
|
|||
MemoryOutputStream mo;
|
||||
if (! (writeHeader (mo) && FileHelpers::overwriteFileWithNewDataIfDifferent (headerFile, mo)))
|
||||
return false;
|
||||
|
||||
|
||||
filesCreated.add (headerFile);
|
||||
}
|
||||
|
||||
|
||||
int i = 0;
|
||||
int fileIndex = 0;
|
||||
|
||||
|
||||
for (;;)
|
||||
{
|
||||
File cpp (cppFile);
|
||||
|
||||
|
||||
if (fileIndex > 0)
|
||||
cpp = cpp.getSiblingFile (cppFile.getFileNameWithoutExtension() + String (fileIndex + 1))
|
||||
.withFileExtension (cppFile.getFileExtension());
|
||||
|
|
@ -277,10 +277,10 @@ bool ResourceFile::write (const File& cppFile, Array<File>& filesCreated)
|
|||
MemoryOutputStream mo;
|
||||
if (! (writeCpp (mo, headerFile, i) && FileHelpers::overwriteFileWithNewDataIfDifferent (cpp, mo)))
|
||||
return false;
|
||||
|
||||
|
||||
filesCreated.add (cpp);
|
||||
++fileIndex;
|
||||
|
||||
|
||||
if (i >= files.size())
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -990,15 +990,11 @@ public:
|
|||
|
||||
if (isStarted)
|
||||
{
|
||||
JUCE_TRY
|
||||
{
|
||||
callback->audioDeviceIOCallback (const_cast <const float**> (inputBuffers.getArrayOfChannels()),
|
||||
inputBuffers.getNumChannels(),
|
||||
outputBuffers.getArrayOfChannels(),
|
||||
outputBuffers.getNumChannels(),
|
||||
bufferSizeSamples);
|
||||
}
|
||||
JUCE_CATCH_EXCEPTION
|
||||
callback->audioDeviceIOCallback (const_cast <const float**> (inputBuffers.getArrayOfChannels()),
|
||||
inputBuffers.getNumChannels(),
|
||||
outputBuffers.getArrayOfChannels(),
|
||||
outputBuffers.getNumChannels(),
|
||||
bufferSizeSamples);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
|
|
@ -23,8 +23,8 @@
|
|||
==============================================================================
|
||||
*/
|
||||
|
||||
#ifndef WASAPI_ENABLE_LOGGING
|
||||
#define WASAPI_ENABLE_LOGGING 0
|
||||
#ifndef JUCE_WASAPI_LOGGING
|
||||
#define JUCE_WASAPI_LOGGING 0
|
||||
#endif
|
||||
|
||||
//==============================================================================
|
||||
|
|
@ -37,45 +37,43 @@ void logFailure (HRESULT hr)
|
|||
jassert (hr != 0x800401f0); // If you hit this, it means you're trying to call from
|
||||
// a thread which hasn't been initialised with CoInitialize().
|
||||
|
||||
#if WASAPI_ENABLE_LOGGING
|
||||
#if JUCE_WASAPI_LOGGING
|
||||
if (FAILED (hr))
|
||||
{
|
||||
String e;
|
||||
e << Time::getCurrentTime().toString (true, true, true, true)
|
||||
<< " -- WASAPI error: ";
|
||||
const char* m = nullptr;
|
||||
|
||||
switch (hr)
|
||||
{
|
||||
case E_POINTER: e << "E_POINTER"; break;
|
||||
case E_INVALIDARG: e << "E_INVALIDARG"; break;
|
||||
case AUDCLNT_E_NOT_INITIALIZED: e << "AUDCLNT_E_NOT_INITIALIZED"; break;
|
||||
case AUDCLNT_E_ALREADY_INITIALIZED: e << "AUDCLNT_E_ALREADY_INITIALIZED"; break;
|
||||
case AUDCLNT_E_WRONG_ENDPOINT_TYPE: e << "AUDCLNT_E_WRONG_ENDPOINT_TYPE"; break;
|
||||
case AUDCLNT_E_DEVICE_INVALIDATED: e << "AUDCLNT_E_DEVICE_INVALIDATED"; break;
|
||||
case AUDCLNT_E_NOT_STOPPED: e << "AUDCLNT_E_NOT_STOPPED"; break;
|
||||
case AUDCLNT_E_BUFFER_TOO_LARGE: e << "AUDCLNT_E_BUFFER_TOO_LARGE"; break;
|
||||
case AUDCLNT_E_OUT_OF_ORDER: e << "AUDCLNT_E_OUT_OF_ORDER"; break;
|
||||
case AUDCLNT_E_UNSUPPORTED_FORMAT: e << "AUDCLNT_E_UNSUPPORTED_FORMAT"; break;
|
||||
case AUDCLNT_E_INVALID_SIZE: e << "AUDCLNT_E_INVALID_SIZE"; break;
|
||||
case AUDCLNT_E_DEVICE_IN_USE: e << "AUDCLNT_E_DEVICE_IN_USE"; break;
|
||||
case AUDCLNT_E_BUFFER_OPERATION_PENDING: e << "AUDCLNT_E_BUFFER_OPERATION_PENDING"; break;
|
||||
case AUDCLNT_E_THREAD_NOT_REGISTERED: e << "AUDCLNT_E_THREAD_NOT_REGISTERED"; break;
|
||||
case AUDCLNT_E_EXCLUSIVE_MODE_NOT_ALLOWED: e << "AUDCLNT_E_EXCLUSIVE_MODE_NOT_ALLOWED"; break;
|
||||
case AUDCLNT_E_ENDPOINT_CREATE_FAILED: e << "AUDCLNT_E_ENDPOINT_CREATE_FAILED"; break;
|
||||
case AUDCLNT_E_SERVICE_NOT_RUNNING: e << "AUDCLNT_E_SERVICE_NOT_RUNNING"; break;
|
||||
case AUDCLNT_E_EVENTHANDLE_NOT_EXPECTED: e << "AUDCLNT_E_EVENTHANDLE_NOT_EXPECTED"; break;
|
||||
case AUDCLNT_E_EXCLUSIVE_MODE_ONLY: e << "AUDCLNT_E_EXCLUSIVE_MODE_ONLY"; break;
|
||||
case AUDCLNT_E_BUFDURATION_PERIOD_NOT_EQUAL: e << "AUDCLNT_E_BUFDURATION_PERIOD_NOT_EQUAL"; break;
|
||||
case AUDCLNT_E_EVENTHANDLE_NOT_SET: e << "AUDCLNT_E_EVENTHANDLE_NOT_SET"; break;
|
||||
case AUDCLNT_E_INCORRECT_BUFFER_SIZE: e << "AUDCLNT_E_INCORRECT_BUFFER_SIZE"; break;
|
||||
case AUDCLNT_E_BUFFER_SIZE_ERROR: e << "AUDCLNT_E_BUFFER_SIZE_ERROR"; break;
|
||||
case AUDCLNT_S_BUFFER_EMPTY: e << "AUDCLNT_S_BUFFER_EMPTY"; break;
|
||||
case AUDCLNT_S_THREAD_ALREADY_REGISTERED: e << "AUDCLNT_S_THREAD_ALREADY_REGISTERED"; break;
|
||||
default: e << String::toHexString ((int) hr); break;
|
||||
case E_POINTER: m = "E_POINTER"; break;
|
||||
case E_INVALIDARG: m = "E_INVALIDARG"; break;
|
||||
case AUDCLNT_E_NOT_INITIALIZED: m = "AUDCLNT_E_NOT_INITIALIZED"; break;
|
||||
case AUDCLNT_E_ALREADY_INITIALIZED: m = "AUDCLNT_E_ALREADY_INITIALIZED"; break;
|
||||
case AUDCLNT_E_WRONG_ENDPOINT_TYPE: m = "AUDCLNT_E_WRONG_ENDPOINT_TYPE"; break;
|
||||
case AUDCLNT_E_DEVICE_INVALIDATED: m = "AUDCLNT_E_DEVICE_INVALIDATED"; break;
|
||||
case AUDCLNT_E_NOT_STOPPED: m = "AUDCLNT_E_NOT_STOPPED"; break;
|
||||
case AUDCLNT_E_BUFFER_TOO_LARGE: m = "AUDCLNT_E_BUFFER_TOO_LARGE"; break;
|
||||
case AUDCLNT_E_OUT_OF_ORDER: m = "AUDCLNT_E_OUT_OF_ORDER"; break;
|
||||
case AUDCLNT_E_UNSUPPORTED_FORMAT: m = "AUDCLNT_E_UNSUPPORTED_FORMAT"; break;
|
||||
case AUDCLNT_E_INVALID_SIZE: m = "AUDCLNT_E_INVALID_SIZE"; break;
|
||||
case AUDCLNT_E_DEVICE_IN_USE: m = "AUDCLNT_E_DEVICE_IN_USE"; break;
|
||||
case AUDCLNT_E_BUFFER_OPERATION_PENDING: m = "AUDCLNT_E_BUFFER_OPERATION_PENDING"; break;
|
||||
case AUDCLNT_E_THREAD_NOT_REGISTERED: m = "AUDCLNT_E_THREAD_NOT_REGISTERED"; break;
|
||||
case AUDCLNT_E_EXCLUSIVE_MODE_NOT_ALLOWED: m = "AUDCLNT_E_EXCLUSIVE_MODE_NOT_ALLOWED"; break;
|
||||
case AUDCLNT_E_ENDPOINT_CREATE_FAILED: m = "AUDCLNT_E_ENDPOINT_CREATE_FAILED"; break;
|
||||
case AUDCLNT_E_SERVICE_NOT_RUNNING: m = "AUDCLNT_E_SERVICE_NOT_RUNNING"; break;
|
||||
case AUDCLNT_E_EVENTHANDLE_NOT_EXPECTED: m = "AUDCLNT_E_EVENTHANDLE_NOT_EXPECTED"; break;
|
||||
case AUDCLNT_E_EXCLUSIVE_MODE_ONLY: m = "AUDCLNT_E_EXCLUSIVE_MODE_ONLY"; break;
|
||||
case AUDCLNT_E_BUFDURATION_PERIOD_NOT_EQUAL: m = "AUDCLNT_E_BUFDURATION_PERIOD_NOT_EQUAL"; break;
|
||||
case AUDCLNT_E_EVENTHANDLE_NOT_SET: m = "AUDCLNT_E_EVENTHANDLE_NOT_SET"; break;
|
||||
case AUDCLNT_E_INCORRECT_BUFFER_SIZE: m = "AUDCLNT_E_INCORRECT_BUFFER_SIZE"; break;
|
||||
case AUDCLNT_E_BUFFER_SIZE_ERROR: m = "AUDCLNT_E_BUFFER_SIZE_ERROR"; break;
|
||||
case AUDCLNT_S_BUFFER_EMPTY: m = "AUDCLNT_S_BUFFER_EMPTY"; break;
|
||||
case AUDCLNT_S_THREAD_ALREADY_REGISTERED: m = "AUDCLNT_S_THREAD_ALREADY_REGISTERED"; break;
|
||||
default: break;
|
||||
}
|
||||
|
||||
DBG (e);
|
||||
jassertfalse;
|
||||
Logger::writeToLog ("WASAPI error: " + (m != nullptr ? String (m)
|
||||
: String::toHexString ((int) hr)));
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
|
@ -872,7 +870,6 @@ public:
|
|||
sampleRateChanged = true;
|
||||
}
|
||||
|
||||
JUCE_TRY
|
||||
{
|
||||
const ScopedLock sl (startStopLock);
|
||||
|
||||
|
|
@ -882,7 +879,6 @@ public:
|
|||
else
|
||||
outs.clear();
|
||||
}
|
||||
JUCE_CATCH_EXCEPTION
|
||||
|
||||
if (outputDevice != nullptr)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -34,10 +34,8 @@ Logger::~Logger()
|
|||
|
||||
Logger* Logger::currentLogger = nullptr;
|
||||
|
||||
void Logger::setCurrentLogger (Logger* const newLogger) noexcept
|
||||
{
|
||||
currentLogger = newLogger;
|
||||
}
|
||||
void Logger::setCurrentLogger (Logger* const newLogger) noexcept { currentLogger = newLogger; }
|
||||
Logger* Logger::getCurrentLogger() noexcept { return currentLogger; }
|
||||
|
||||
void Logger::writeToLog (const String& message)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -57,6 +57,9 @@ public:
|
|||
*/
|
||||
static void JUCE_CALLTYPE setCurrentLogger (Logger* newLogger) noexcept;
|
||||
|
||||
/** Returns the current logger, or nullptr if none has been set. */
|
||||
static Logger* getCurrentLogger() noexcept;
|
||||
|
||||
/** Writes a string to the current logger.
|
||||
|
||||
This will pass the string to the logger's logMessage() method if a logger
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue