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

VirtualANode Class Reference

#include <virtualanode.h>

Inheritance diagram for VirtualANode:

VirtualNode List of all members.

Public Member Functions

 VirtualANode (RenderEngine *renderengine, VirtualConsole *vconsole, Module *real_module, Plugin *real_plugin, Track *track, VirtualNode *parent_module)
 ~VirtualANode ()
VirtualNodecreate_module (Plugin *real_plugin, Module *real_module, Track *track)
VirtualNodecreate_plugin (Plugin *real_plugin)
int render (double *output_temp, int64_t start_position, int64_t len, int64_t sample_rate)
int read_data (double *output_temp, int64_t start_position, int64_t len, int64_t sample_rate)

Private Member Functions

int render_as_module (double **audio_out, double *output_temp, int64_t start_position, int64_t len, int64_t sample_rate)
void render_as_plugin (double *output_temp, int64_t start_position, int64_t len, int64_t sample_rate)
int render_fade (double *buffer, int64_t len, int64_t input_position, int64_t sample_rate, Autos *autos, int direction, int use_nudge)
int render_pan (double *input, double *output, int64_t fragment_len, int64_t input_position, int64_t sample_rate, Autos *autos, int channel, int direction, int use_nudge)
void get_pan_automation (double &slope, double &intercept, int64_t input_position, int64_t &slope_len, Autos *autos, int channel, int direction)

Private Attributes

DB db
Autopan_before [MAXCHANNELS]
Autopan_after [MAXCHANNELS]

Detailed Description

Definition at line 12 of file virtualanode.h.


Constructor & Destructor Documentation

VirtualANode::VirtualANode RenderEngine renderengine,
VirtualConsole vconsole,
Module real_module,
Plugin real_plugin,
Track track,
VirtualNode parent_module
 

Definition at line 24 of file virtualanode.C.

References MAXCHANNELS, pan_after, and pan_before.

Referenced by create_module(), and create_plugin().

VirtualANode::~VirtualANode  ) 
 

Definition at line 43 of file virtualanode.C.


Member Function Documentation

VirtualNode * VirtualANode::create_module Plugin real_plugin,
Module real_module,
Track track
[virtual]
 

Reimplemented from VirtualNode.

Definition at line 51 of file virtualanode.C.

References VirtualNode::renderengine, VirtualNode::vconsole, and VirtualANode().

VirtualNode * VirtualANode::create_plugin Plugin real_plugin  )  [virtual]
 

Reimplemented from VirtualNode.

Definition at line 64 of file virtualanode.C.

References VirtualNode::renderengine, VirtualNode::track, VirtualNode::vconsole, and VirtualANode().

void VirtualANode::get_pan_automation double &  slope,
double &  intercept,
int64_t  input_position,
int64_t &  slope_len,
Autos autos,
int  channel,
int  direction
[private]
 

Definition at line 449 of file virtualanode.C.

References Autos::get_next_auto(), Autos::get_prev_auto(), and Auto::position.

Referenced by render_pan().

int VirtualANode::read_data double *  output_temp,
int64_t  start_position,
int64_t  len,
int64_t  sample_rate
 

Definition at line 76 of file virtualanode.C.

References RenderEngine::command, TransportCommand::get_direction(), VirtualNode::get_previous_plugin(), VirtualNode::parent_node, VirtualNode::real_module, and VirtualNode::renderengine.

Referenced by render_as_module().

int VirtualANode::render double *  output_temp,
int64_t  start_position,
int64_t  len,
int64_t  sample_rate
 

Definition at line 116 of file virtualanode.C.

References VirtualAConsole::arender, ARender::audio_out, VirtualNode::real_module, VirtualNode::real_plugin, render_as_module(), render_as_plugin(), and VirtualNode::vconsole.

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

int VirtualANode::render_as_module double **  audio_out,
double *  output_temp,
int64_t  start_position,
int64_t  len,
int64_t  sample_rate
[private]
 

Definition at line 161 of file virtualanode.C.

References VirtualAConsole::arender, Track::automation, Automation::autos, RenderEngine::command, RenderEngine::edl, TransportCommand::get_direction(), VirtualNode::get_mute_fragment(), ARender::get_next_peak(), MAX_CHANNELS, ARender::meter_render_fragment, read_data(), VirtualNode::real_module, TransportCommand::realtime, render(), render_fade(), render_pan(), VirtualConsole::renderengine, VirtualNode::renderengine, EDLSession::sample_rate, EDL::session, VirtualNode::subnodes, VirtualNode::track, and VirtualNode::vconsole.

Referenced by render().

void VirtualANode::render_as_plugin double *  output_temp,
int64_t  start_position,
int64_t  len,
int64_t  sample_rate
[private]
 

Definition at line 141 of file virtualanode.C.

References VirtualNode::attachment, Plugin::on, VirtualNode::plugin_buffer_number, and VirtualNode::real_plugin.

Referenced by render().

int VirtualANode::render_fade double *  buffer,
int64_t  len,
int64_t  input_position,
int64_t  sample_rate,
Autos autos,
int  direction,
int  use_nudge
[private]
 

Definition at line 308 of file virtualanode.C.

References RenderEngine::edl, Track::nudge, VirtualConsole::renderengine, EDLSession::sample_rate, EDL::session, VirtualNode::track, VirtualNode::value, and VirtualNode::vconsole.

Referenced by render_as_module().

int VirtualANode::render_pan double *  input,
double *  output,
int64_t  fragment_len,
int64_t  input_position,
int64_t  sample_rate,
Autos autos,
int  channel,
int  direction,
int  use_nudge
[private]
 

Definition at line 380 of file virtualanode.C.

References RenderEngine::edl, get_pan_automation(), MIN, Track::nudge, VirtualConsole::renderengine, EDLSession::sample_rate, EDL::session, VirtualNode::slope, VirtualNode::track, VirtualNode::value, and VirtualNode::vconsole.

Referenced by render_as_module().


Member Data Documentation

DB VirtualANode::db [private]
 

Definition at line 84 of file virtualanode.h.

Auto * VirtualANode::pan_after[MAXCHANNELS] [private]
 

Definition at line 86 of file virtualanode.h.

Referenced by VirtualANode().

Auto* VirtualANode::pan_before[MAXCHANNELS] [private]
 

Definition at line 86 of file virtualanode.h.

Referenced by VirtualANode().


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