ARender Class Reference

#include <arender.h>

Inherits CommonRender.

Collaboration diagram for ARender:

Collaboration graph
[legend]

Public Member Functions

 ARender (RenderEngine *renderengine)
 ~ARender ()
void arm_command ()
void init_output_buffers ()
VirtualConsolenew_vconsole_object ()
int get_total_tracks ()
Modulenew_module (Track *track)
int arm_playback (int64_t current_position, int64_t input_length, int64_t module_render_fragment, int64_t playback_buffer, int64_t output_length)
int wait_for_startup ()
int64_t tounits (double position, int round)
double fromunits (int64_t position)
void run ()
int calculate_history_size ()
int get_history_number (int64_t *table, int64_t position)
int get_next_peak (int current_peak)
int get_datatype ()
int process_buffer (double **buffer_out, int64_t input_len, int64_t input_position, int last_buffer)
int process_buffer (int64_t input_len, int64_t input_position)
void send_last_buffer ()
int wait_device_completion ()
int reverse_buffer (double *buffer, int64_t len)
int swap_current_buffer ()
int64_t get_render_length (int64_t current_render_length)

Data Fields

double * audio_out [MAXCHANNELS]
int64_t meter_render_fragment
double * level_history [MAXCHANNELS]
int64_t * level_samples
int total_peaks
int current_level [MAXCHANNELS]
int first_buffer
int64_t source_length

Private Member Functions

int init_meters ()

Private Attributes

int64_t session_position

Detailed Description

Definition at line 8 of file arender.h.


Constructor & Destructor Documentation

ARender::ARender ( RenderEngine renderengine  ) 

ARender::~ARender (  ) 

Definition at line 40 of file arender.C.

References audio_out, level_history, level_samples, and MAXCHANNELS.


Member Function Documentation

void ARender::arm_command (  )  [virtual]

Reimplemented from CommonRender.

Definition at line 50 of file arender.C.

References CommonRender::arm_command(), CommonRender::asynchronous, calculate_history_size(), and init_meters().

Referenced by RenderEngine::arm_render_threads().

Here is the call graph for this function:

void ARender::init_output_buffers (  )  [virtual]

VirtualConsole * ARender::new_vconsole_object (  )  [virtual]

Reimplemented from CommonRender.

Definition at line 135 of file arender.C.

References CommonRender::renderengine.

int ARender::get_total_tracks (  )  [virtual]

Reimplemented from CommonRender.

Definition at line 60 of file arender.C.

References RenderEngine::edl, CommonRender::renderengine, Tracks::total_audio_tracks(), and EDL::tracks.

Here is the call graph for this function:

Module * ARender::new_module ( Track track  )  [virtual]

Reimplemented from CommonRender.

Definition at line 65 of file arender.C.

References CommonRender::renderengine.

int ARender::arm_playback ( int64_t  current_position,
int64_t  input_length,
int64_t  module_render_fragment,
int64_t  playback_buffer,
int64_t  output_length 
)

int ARender::wait_for_startup (  ) 

int64_t ARender::tounits ( double  position,
int  round 
) [virtual]

Reimplemented from CommonRender.

Definition at line 140 of file arender.C.

References RenderEngine::edl, CommonRender::renderengine, Units::round(), EDLSession::sample_rate, and EDL::session.

Here is the call graph for this function:

double ARender::fromunits ( int64_t  position  )  [virtual]

Reimplemented from CommonRender.

Definition at line 148 of file arender.C.

References RenderEngine::edl, CommonRender::renderengine, EDLSession::sample_rate, and EDL::session.

void ARender::run (  )  [virtual]

int ARender::calculate_history_size (  ) 

int ARender::get_history_number ( int64_t *  table,
int64_t  position 
)

Definition at line 220 of file arender.C.

References total_peaks.

Referenced by RenderEngine::get_module_levels(), and RenderEngine::get_output_levels().

int ARender::get_next_peak ( int  current_peak  ) 

Definition at line 403 of file arender.C.

References total_peaks.

Referenced by VirtualAConsole::process_buffer(), and VirtualANode::render_as_module().

int ARender::get_datatype (  )  [virtual]

Reimplemented from CommonRender.

Definition at line 338 of file arender.C.

References TRACK_AUDIO.

int ARender::process_buffer ( double **  buffer_out,
int64_t  input_len,
int64_t  input_position,
int  last_buffer 
)

int ARender::process_buffer ( int64_t  input_len,
int64_t  input_position 
) [virtual]

Reimplemented from CommonRender.

Definition at line 206 of file arender.C.

References CommonRender::last_playback, session_position, and CommonRender::vconsole.

void ARender::send_last_buffer (  ) 

Definition at line 240 of file arender.C.

References RenderEngine::audio, CommonRender::renderengine, and AudioDevice::set_last_buffer().

Referenced by run().

Here is the call graph for this function:

int ARender::wait_device_completion (  )  [virtual]

Reimplemented from CommonRender.

Definition at line 245 of file arender.C.

References RenderEngine::audio, CommonRender::renderengine, and AudioDevice::wait_for_completion().

Referenced by run().

Here is the call graph for this function:

int ARender::reverse_buffer ( double *  buffer,
int64_t  len 
)

Definition at line 390 of file arender.C.

References Thread::end(), and Thread::start().

Here is the call graph for this function:

int ARender::swap_current_buffer (  ) 

int64_t ARender::get_render_length ( int64_t  current_render_length  )  [virtual]

Reimplemented from CommonRender.

Definition at line 410 of file arender.C.

Referenced by run().

int ARender::init_meters (  )  [private]

Definition at line 88 of file arender.C.

References audio_out, calculate_history_size(), current_level, level_history, level_samples, MAXCHANNELS, and total_peaks.

Referenced by arm_command(), and arm_playback().

Here is the call graph for this function:


Field Documentation

double* ARender::audio_out[MAXCHANNELS]

double* ARender::level_history[MAXCHANNELS]

int ARender::current_level[MAXCHANNELS]

Definition at line 50 of file arender.h.

Referenced by init_meters(), and VirtualAConsole::process_buffer().

Definition at line 52 of file arender.h.

Referenced by VirtualAConsole::process_buffer(), and run().

Definition at line 87 of file arender.h.

Referenced by arm_playback().

int64_t ARender::session_position [private]

Definition at line 94 of file arender.h.

Referenced by arm_playback(), and process_buffer().


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

Generated on Mon Apr 28 14:10:19 2008 for Cinelerra by  doxygen 1.5.5