Ardour  9.0-pre0-582-g084a23a80d
ARDOUR::RegionExportChannelFactory Class Reference

Handles RegionExportChannels and does actual reading from region. More...

#include <export_channel.h>

Public Types

enum  Type { None , Raw , Fades }
 

Public Member Functions

 RegionExportChannelFactory (Session *session, AudioRegion const &region, AudioTrack &track, Type type)
 
 ~RegionExportChannelFactory ()
 
ExportChannelPtr create (uint32_t channel)
 
void read (uint32_t channel, Buffer const *&, samplecnt_t samples_to_read)
 

Private Member Functions

int new_cycle_started (samplecnt_t)
 
void update_buffers (samplecnt_t samples)
 

Private Attributes

AudioRegion const & region
 
Type type
 
samplecnt_t samples_per_cycle
 
size_t n_channels
 
BufferSet buffers
 
bool buffers_up_to_date
 
samplepos_t region_start
 
samplepos_t position
 
std::unique_ptr< Sample[]> mixdown_buffer
 
std::unique_ptr< Sample[]> gain_buffer
 
PBD::ScopedConnection export_connection
 

Detailed Description

Handles RegionExportChannels and does actual reading from region.

Definition at line 148 of file export_channel.h.

Member Enumeration Documentation

◆ Type

Enumerator
None 
Raw 
Fades 

Definition at line 151 of file export_channel.h.

Constructor & Destructor Documentation

◆ RegionExportChannelFactory()

ARDOUR::RegionExportChannelFactory::RegionExportChannelFactory ( Session session,
AudioRegion const &  region,
AudioTrack track,
Type  type 
)

◆ ~RegionExportChannelFactory()

ARDOUR::RegionExportChannelFactory::~RegionExportChannelFactory ( )

Member Function Documentation

◆ create()

ExportChannelPtr ARDOUR::RegionExportChannelFactory::create ( uint32_t  channel)

◆ new_cycle_started()

int ARDOUR::RegionExportChannelFactory::new_cycle_started ( samplecnt_t  )
inlineprivate

Definition at line 165 of file export_channel.h.

◆ read()

void ARDOUR::RegionExportChannelFactory::read ( uint32_t  channel,
Buffer const *&  ,
samplecnt_t  samples_to_read 
)

◆ update_buffers()

void ARDOUR::RegionExportChannelFactory::update_buffers ( samplecnt_t  samples)
private

Member Data Documentation

◆ buffers

BufferSet ARDOUR::RegionExportChannelFactory::buffers
private

Definition at line 178 of file export_channel.h.

◆ buffers_up_to_date

bool ARDOUR::RegionExportChannelFactory::buffers_up_to_date
private

Definition at line 179 of file export_channel.h.

◆ export_connection

PBD::ScopedConnection ARDOUR::RegionExportChannelFactory::export_connection
private

Definition at line 186 of file export_channel.h.

◆ gain_buffer

std::unique_ptr<Sample[]> ARDOUR::RegionExportChannelFactory::gain_buffer
private

Definition at line 184 of file export_channel.h.

◆ mixdown_buffer

std::unique_ptr<Sample[]> ARDOUR::RegionExportChannelFactory::mixdown_buffer
private

Definition at line 183 of file export_channel.h.

◆ n_channels

size_t ARDOUR::RegionExportChannelFactory::n_channels
private

Definition at line 177 of file export_channel.h.

◆ position

samplepos_t ARDOUR::RegionExportChannelFactory::position
private

Definition at line 181 of file export_channel.h.

◆ region

AudioRegion const& ARDOUR::RegionExportChannelFactory::region
private

Definition at line 173 of file export_channel.h.

◆ region_start

samplepos_t ARDOUR::RegionExportChannelFactory::region_start
private

Definition at line 180 of file export_channel.h.

◆ samples_per_cycle

samplecnt_t ARDOUR::RegionExportChannelFactory::samples_per_cycle
private

Definition at line 176 of file export_channel.h.

◆ type

Type ARDOUR::RegionExportChannelFactory::type
private

Definition at line 175 of file export_channel.h.


The documentation for this class was generated from the following file: