JUCE-7.0.12-0-g4f43011b96 JUCE-7.0.12-0-g4f43011b96
JUCE — C++ application framework with suport for VST, VST3, LV2 audio plug-ins

« « « Anklang Documentation
Loading...
Searching...
No Matches
juce_AudioCDBurner.h
Go to the documentation of this file.
1 /*
2 ==============================================================================
3
4 This file is part of the JUCE library.
5 Copyright (c) 2022 - Raw Material Software Limited
6
7 JUCE is an open source library subject to commercial or open-source
8 licensing.
9
10 By using JUCE, you agree to the terms of both the JUCE 7 End-User License
11 Agreement and JUCE Privacy Policy.
12
13 End User License Agreement: www.juce.com/juce-7-licence
14 Privacy Policy: www.juce.com/juce-privacy-policy
15
16 Or: You may also use this code under the terms of the GPL v3 (see
17 www.gnu.org/licenses).
18
19 JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
20 EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
21 DISCLAIMED.
22
23 ==============================================================================
24*/
25
26namespace juce
27{
28
29#if JUCE_USE_CDBURNER || DOXYGEN
30
31
32//==============================================================================
38{
39public:
40 //==============================================================================
46
52
55
56 //==============================================================================
66
73
75 bool isDiskPresent() const;
76
81 bool openTray();
82
87
88 //==============================================================================
95
96 //==============================================================================
102
103 //==============================================================================
109
118 bool addAudioTrack (AudioSource* source, int numSamples);
119
120 //==============================================================================
125 {
126 public:
127 BurnProgressListener() noexcept {}
128 virtual ~BurnProgressListener() {}
129
134 virtual bool audioCDBurnProgress (float proportionComplete) = 0;
135 };
136
149 int writeSpeed);
150
157 void abortBurn();
158
159private:
160 //==============================================================================
162
163 class Pimpl;
165
167};
168
169
170#endif
171
172} // namespace juce
Holds a resizable array of primitive or copy-by-value objects.
Definition juce_Array.h:56
Receives progress callbacks during a cd-burn operation.
virtual bool audioCDBurnProgress(float proportionComplete)=0
Called at intervals to report on the progress of the AudioCDBurner.
String burn(BurnProgressListener *listener, bool ejectDiscAfterwards, bool performFakeBurnForTesting, int writeSpeed)
Runs the burn process.
DiskState waitUntilStateChange(int timeOutMilliseconds)
Blocks the current thread until the drive's state changes, or until the timeout expires.
Array< int > getAvailableWriteSpeeds() const
Returns the set of possible write speeds that the device can handle.
@ readOnlyDiskPresent
The drive contains a read-only disk.
@ noDisc
The drive has no disk in it.
@ trayOpen
The drive is currently open.
@ unknown
An error condition, if the device isn't responding.
@ writableDiskPresent
The drive contains a writeable disk.
bool openTray()
Sends an eject signal to the drive.
bool isDiskPresent() const
Returns true if there's a writable disk in the drive.
void abortBurn()
If a burn operation is currently in progress, this tells it to stop as soon as possible.
bool setBufferUnderrunProtection(bool shouldBeEnabled)
Tries to enable or disable buffer underrun safety on devices that support it.
int getNumAvailableAudioBlocks() const
Returns the number of free blocks on the disk.
~AudioCDBurner()
Destructor.
bool addAudioTrack(AudioSource *source, int numSamples)
Adds a track to be written.
static StringArray findAvailableDevices()
Returns a list of available optical drives.
static AudioCDBurner * openDevice(int deviceIndex)
Tries to open one of the optical drives.
DiskState getDiskState() const
Returns the current status of the device.
Base class for objects that can produce a continuous stream of audio.
Holds a list of ChangeListeners, and sends messages to them when instructed.
A special array for holding a list of strings.
The JUCE String class!
Definition juce_String.h:53
#define JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(className)
This is a shorthand way of writing both a JUCE_DECLARE_NON_COPYABLE and JUCE_LEAK_DETECTOR macro for ...
JUCE Namespace.
Type unalignedPointerCast(void *ptr) noexcept
Casts a pointer to another type via void*, which suppresses the cast-align warning which sometimes ar...
Definition juce_Memory.h:88