|
- %%include_corresponding_header%%
-
- //==============================================================================
- %%content_component_class%%::%%content_component_class%%()
- {
- // Make sure you set the size of the component after
- // you add any child components.
- setSize (800, 600);
-
- // Some platforms require permissions to open input channels so request that here
- if (juce::RuntimePermissions::isRequired (juce::RuntimePermissions::recordAudio)
- && ! juce::RuntimePermissions::isGranted (juce::RuntimePermissions::recordAudio))
- {
- juce::RuntimePermissions::request (juce::RuntimePermissions::recordAudio,
- [&] (bool granted) { setAudioChannels (granted ? 2 : 0, 2); });
- }
- else
- {
- // Specify the number of input and output channels that we want to open
- setAudioChannels (2, 2);
- }
- }
-
- %%content_component_class%%::~%%content_component_class%%()
- {
- // This shuts down the audio device and clears the audio source.
- shutdownAudio();
- }
-
- //==============================================================================
- void %%content_component_class%%::prepareToPlay (int samplesPerBlockExpected, double sampleRate)
- {
- // This function will be called when the audio device is started, or when
- // its settings (i.e. sample rate, block size, etc) are changed.
-
- // You can use this function to initialise any resources you might need,
- // but be careful - it will be called on the audio thread, not the GUI thread.
-
- // For more details, see the help for AudioProcessor::prepareToPlay()
- }
-
- void %%content_component_class%%::getNextAudioBlock (const juce::AudioSourceChannelInfo& bufferToFill)
- {
- // Your audio-processing code goes here!
-
- // For more details, see the help for AudioProcessor::getNextAudioBlock()
-
- // Right now we are not producing any data, in which case we need to clear the buffer
- // (to prevent the output of random noise)
- bufferToFill.clearActiveBufferRegion();
- }
-
- void %%content_component_class%%::releaseResources()
- {
- // This will be called when the audio device stops, or when it is being
- // restarted due to a setting change.
-
- // For more details, see the help for AudioProcessor::releaseResources()
- }
-
- //==============================================================================
- void %%content_component_class%%::paint (juce::Graphics& g)
- {
- // (Our component is opaque, so we must completely fill the background with a solid colour)
- g.fillAll (getLookAndFeel().findColour (juce::ResizableWindow::backgroundColourId));
-
- // You can add your drawing code here!
- }
-
- void %%content_component_class%%::resized()
- {
- // This is called when the MainContentComponent is resized.
- // If you add any child components, this is where you should
- // update their positions.
- }
|