Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

ARender Class Reference

#include <arender.h>

Inheritance diagram for ARender:

CommonRender List of all members.

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)

Public Attributes

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  ) 
 

Definition at line 25 of file arender.C.

References audio_out, CommonRender::data_type, level_history, level_samples, MAXCHANNELS, total_peaks, and TRACK_AUDIO.

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().

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
 

Definition at line 343 of file arender.C.

References RenderEngine::command, RenderEngine::edl, RenderEngine::end_position, init_meters(), EDLSession::real_time_playback, TransportCommand::realtime, CommonRender::renderengine, EDL::session, session_position, source_length, and RenderEngine::start_position.

Referenced by RenderEngine::arm_playback_audio().

int ARender::calculate_history_size  ) 
 

Definition at line 70 of file arender.C.

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

Referenced by arm_command(), and init_meters().

double ARender::fromunits int64_t  position  )  [virtual]
 

Reimplemented from CommonRender.

Definition at line 149 of file arender.C.

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

int ARender::get_datatype  )  [virtual]
 

Reimplemented from CommonRender.

Definition at line 338 of file arender.C.

References TRACK_AUDIO.

int ARender::get_history_number int64_t *  table,
int64_t  position
 

Definition at line 221 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().

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::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.

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().

void ARender::init_output_buffers  )  [virtual]
 

Reimplemented from CommonRender.

Definition at line 114 of file arender.C.

References PlaybackConfig::aconfig, RenderEngine::adjusted_fragment_len, audio_out, RenderEngine::command, RenderEngine::config, AudioOutConfig::do_channel, MAXCHANNELS, TransportCommand::realtime, and CommonRender::renderengine.

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

Reimplemented from CommonRender.

Definition at line 65 of file arender.C.

References CommonRender::renderengine.

VirtualConsole * ARender::new_vconsole_object  )  [virtual]
 

Reimplemented from CommonRender.

Definition at line 136 of file arender.C.

References CommonRender::renderengine.

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

Reimplemented from CommonRender.

Definition at line 207 of file arender.C.

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

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

Definition at line 155 of file arender.C.

References audio_out, CommonRender::current_position, CommonRender::last_playback, MAXCHANNELS, CommonRender::restart_playback(), VirtualConsole::test_reconfigure(), and CommonRender::vconsole.

Referenced by PackageRenderer::do_audio(), and run().

int ARender::reverse_buffer double *  buffer,
int64_t  len
 

Definition at line 390 of file arender.C.

void ARender::run  )  [virtual]
 

Reimplemented from CommonRender.

Definition at line 253 of file arender.C.

References CommonRender::advance_position(), RenderEngine::audio, RenderEngine::command, AudioDevice::current_position(), CommonRender::current_position, RenderEngine::do_video, CommonRender::done, RenderEngine::edl, first_buffer, RenderEngine::fragment_len, CommonRender::get_boundaries(), TransportCommand::get_direction(), get_render_length(), TransportCommand::get_speed(), VirtualConsole::interrupt, CommonRender::interrupt, CommonRender::last_playback, RenderEngine::playback_engine, TransportCommand::playbackstart, process_buffer(), TransportCommand::realtime, CommonRender::renderengine, CommonRender::restart_playback(), EDLSession::sample_rate, send_last_buffer(), EDL::session, CommonRender::start_lock, VirtualConsole::stop_rendering(), VirtualConsole::test_reconfigure(), PlaybackEngine::update_tracking(), CommonRender::vconsole, and wait_device_completion().

void ARender::send_last_buffer  ) 
 

Definition at line 241 of file arender.C.

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

Referenced by run().

int ARender::swap_current_buffer  ) 
 

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

Reimplemented from CommonRender.

Definition at line 141 of file arender.C.

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

int ARender::wait_device_completion  )  [virtual]
 

Reimplemented from CommonRender.

Definition at line 246 of file arender.C.

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

Referenced by run().

int ARender::wait_for_startup  ) 
 


Member Data Documentation

double* ARender::audio_out[MAXCHANNELS]
 

Definition at line 38 of file arender.h.

Referenced by ARender(), RenderEngine::get_output_levels(), init_meters(), init_output_buffers(), VirtualAConsole::process_buffer(), process_buffer(), VirtualANode::render(), and ~ARender().

int ARender::current_level[MAXCHANNELS]
 

Definition at line 50 of file arender.h.

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

int ARender::first_buffer
 

Definition at line 52 of file arender.h.

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

double* ARender::level_history[MAXCHANNELS]
 

Definition at line 44 of file arender.h.

Referenced by ARender(), RenderEngine::get_output_levels(), init_meters(), VirtualAConsole::process_buffer(), and ~ARender().

int64_t* ARender::level_samples
 

Definition at line 46 of file arender.h.

Referenced by ARender(), RenderEngine::get_output_levels(), init_meters(), VirtualAConsole::process_buffer(), and ~ARender().

int64_t ARender::meter_render_fragment
 

Definition at line 42 of file arender.h.

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

int64_t ARender::session_position [private]
 

Definition at line 94 of file arender.h.

Referenced by arm_playback(), and process_buffer().

int64_t ARender::source_length
 

Definition at line 87 of file arender.h.

Referenced by arm_playback().

int ARender::total_peaks
 

Definition at line 48 of file arender.h.

Referenced by ARender(), calculate_history_size(), get_history_number(), get_next_peak(), and init_meters().


The documentation for this class was generated from the following files:
Generated on Sun Jan 8 13:39:08 2006 for Cinelerra-svn by  doxygen 1.4.4