desubmodulize portaudio - PLEASE READ
this is necessary in order to get Furnace to build using CMake 4.0. you should do: git submodule deinit extern/portaudio
This commit is contained in:
parent
c58a7cba20
commit
165b814f5d
328 changed files with 190256 additions and 6 deletions
62
extern/portaudio-modified/bindings/cpp/include/portaudiocpp/AutoSystem.hxx
vendored
Normal file
62
extern/portaudio-modified/bindings/cpp/include/portaudiocpp/AutoSystem.hxx
vendored
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
#ifndef INCLUDED_PORTAUDIO_AUTOSYSTEM_HXX
|
||||
#define INCLUDED_PORTAUDIO_AUTOSYSTEM_HXX
|
||||
|
||||
// ---------------------------------------------------------------------------------------
|
||||
|
||||
#include "portaudiocpp/System.hxx"
|
||||
|
||||
// ---------------------------------------------------------------------------------------
|
||||
|
||||
namespace portaudio
|
||||
{
|
||||
|
||||
|
||||
//////
|
||||
/// @brief A RAII idiom class to ensure automatic clean-up when an exception is
|
||||
/// raised.
|
||||
///
|
||||
/// A simple helper class which uses the 'Resource Acquisition is Initialization'
|
||||
/// idiom (RAII). Use this class to initialize/terminate the System rather than
|
||||
/// using System directly. AutoSystem must be created on stack and must be valid
|
||||
/// throughout the time you wish to use PortAudioCpp. Your 'main' function might be
|
||||
/// a good place for it.
|
||||
///
|
||||
/// To avoid having to type portaudio::System::instance().xyz() all the time, it's usually
|
||||
/// a good idea to make a reference to the System which can be accessed directly.
|
||||
/// @verbatim
|
||||
/// portaudio::AutoSys autoSys;
|
||||
/// portaudio::System &sys = portaudio::System::instance();
|
||||
/// @endverbatim
|
||||
//////
|
||||
class AutoSystem
|
||||
{
|
||||
public:
|
||||
AutoSystem(bool initialize = true)
|
||||
{
|
||||
if (initialize)
|
||||
System::initialize();
|
||||
}
|
||||
|
||||
~AutoSystem()
|
||||
{
|
||||
if (System::exists())
|
||||
System::terminate();
|
||||
}
|
||||
|
||||
void initialize()
|
||||
{
|
||||
System::initialize();
|
||||
}
|
||||
|
||||
void terminate()
|
||||
{
|
||||
System::terminate();
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
} // namespace portaudio
|
||||
|
||||
// ---------------------------------------------------------------------------------------
|
||||
|
||||
#endif // INCLUDED_PORTAUDIO_AUTOSYSTEM_HXX
|
||||
Loading…
Add table
Add a link
Reference in a new issue