#include <autos.h>
Inherits List< Auto >.
Inherited by FloatAutos, IntAutos, KeyFrames, MaskAutos, PanAutos, and PluginAutos.

Public Member Functions | |
| Autos (EDL *edl, Track *track) | |
| virtual | ~Autos () |
| void | resample (double old_rate, double new_rate) |
| virtual void | create_objects () |
| void | equivalent_output (Autos *autos, int64_t startproject, int64_t *result) |
| void | copy_from (Autos *autos) |
| virtual Auto * | new_auto () |
| Auto * | get_prev_auto (int64_t position, int direction, Auto *¤t, int use_default=1) |
| Auto * | get_prev_auto (int direction, Auto *¤t) |
| Auto * | get_next_auto (int64_t position, int direction, Auto *¤t, int use_default=1) |
| int | auto_exists_for_editing (double position) |
| Auto * | get_auto_at_position (double position=-1) |
| Auto * | get_auto_for_editing (double position=-1) |
| Auto * | insert_auto (int64_t position) |
| Auto * | insert_auto_for_editing (int64_t position) |
| void | insert_track (Autos *automation, int64_t start_unit, int64_t length_units, int replace_default) |
| virtual int | load (FileXML *xml) |
| void | paste (int64_t start, int64_t length, double scale, FileXML *file, int default_only) |
| void | remove_nonsequential (Auto *keyframe) |
| void | optimize () |
| int | get_type () |
| int64_t | get_length () |
| virtual void | get_extents (float *min, float *max, int *coords_undefined, int64_t unit_start, int64_t unit_end) |
| virtual void | dump () |
| int | clear_all () |
| int | insert (int64_t start, int64_t end) |
| int | paste_silence (int64_t start, int64_t end) |
| int | copy (int64_t start, int64_t end, FileXML *xml, int default_only, int autos_only) |
| void | clear (int64_t start, int64_t end, int shift_autos) |
| virtual void | straighten (int64_t start, int64_t end) |
| int | clear_auto (int64_t position) |
| int | save (FileXML *xml) |
| virtual int | slope_adjustment (int64_t ax, double slope) |
| int | release_auto () |
| virtual int | release_auto_derived () |
| Auto * | append_auto () |
| int | scale_time (float rate_scale, int scale_edits, int scale_autos, int64_t start, int64_t end) |
| int | get_neighbors (int64_t start, int64_t end, Auto **before, Auto **after) |
| virtual int | automation_is_constant (int64_t start, int64_t end) |
| virtual double | get_automation_constant (int64_t start, int64_t end) |
| int | init_automation (int64_t &buffer_position, int64_t &input_start, int64_t &input_end, int &automate, double &constant, int64_t input_position, int64_t buffer_len, Auto **before, Auto **after, int reverse) |
| int | init_slope (Auto **current_auto, double &slope_start, double &slope_value, double &slope_position, int64_t &input_start, int64_t &input_end, Auto **before, Auto **after, int reverse) |
| int | get_slope (Auto **current_auto, double &slope_start, double &slope_end, double &slope_value, double &slope, int64_t buffer_len, int64_t buffer_position, int reverse) |
| int | advance_slope (Auto **current_auto, double &slope_start, double &slope_value, double &slope_position, int reverse) |
| Auto * | autoof (int64_t position) |
| Auto * | nearest_before (int64_t position) |
| Auto * | nearest_after (int64_t position) |
Data Fields | |
| EDL * | edl |
| Track * | track |
| Auto * | default_auto |
| int | autoidx |
| int | autogrouptype |
| int | type |
| Auto * | selected |
| int | skip_selected |
| int64_t | selected_position |
| int64_t | selected_position_ |
| double | selected_value |
| double | selected_value_ |
| float | virtual_h |
| int | virtual_center |
| int | stack_number |
| int | stack_total |
Definition at line 15 of file autos.h.
| Autos::~Autos | ( | ) | [virtual] |
| void Autos::resample | ( | double | old_rate, | |
| double | new_rate | |||
| ) |
Definition at line 54 of file autos.C.
References List< Auto >::first, and NEXT.
Referenced by Plugin::resample(), and Automation::resample().
| void Autos::create_objects | ( | ) | [virtual] |
Definition at line 31 of file autos.C.
References default_auto, Auto::is_default, and new_auto().
Referenced by VAutomation::create_objects(), Automation::create_objects(), AAutomation::create_objects(), and Plugin::Plugin().

| void Autos::equivalent_output | ( | Autos * | autos, | |
| int64_t | startproject, | |||
| int64_t * | result | |||
| ) |
Definition at line 65 of file autos.C.
References default_auto, List< TYPE >::first, List< Auto >::first, List< Auto >::last, List< TYPE >::last, MIN, NEXT, Auto::position, and List< Auto >::total().
Referenced by Plugin::equivalent_output(), and Automation::equivalent_output().

| void Autos::copy_from | ( | Autos * | autos | ) |
Definition at line 117 of file autos.C.
References List< Auto >::append(), Auto::copy_from(), default_auto, List< Auto >::first, List< TYPE >::first, List< TYPE >::last, new_auto(), and NEXT.
Referenced by Automation::copy_from(), and Plugin::copy_keyframes().

| Auto * Autos::new_auto | ( | ) | [virtual] |
Reimplemented in FloatAutos, IntAutos, KeyFrames, MaskAutos, and PanAutos.
Definition at line 49 of file autos.C.
References edl.
Referenced by append_auto(), copy_from(), create_objects(), insert_auto(), insert_auto_for_editing(), insert_track(), and load().
| Auto * Autos::get_prev_auto | ( | int64_t | position, | |
| int | direction, | |||
| Auto *& | current, | |||
| int | use_default = 1 | |||
| ) |
Definition at line 172 of file autos.C.
References default_auto, List< Auto >::first, List< Auto >::last, NEXT, Auto::position, and PREVIOUS.
Referenced by CWindow::calculate_affected_auto(), PatchBay::cursor_motion_event(), MaskEngine::do_mask(), get_auto_for_editing(), FloatAutos::get_fade_automation(), PanAutos::get_handle(), VModePatch::get_keyframe(), VFadePatch::get_keyframe(), MutePatch::get_keyframe(), APanPatch::get_keyframe(), AFadePatch::get_keyframe(), VirtualNode::get_mute_fragment(), VirtualANode::get_pan_automation(), get_prev_auto(), FloatAutos::get_value(), MaskAutos::mask_exists(), VirtualVNode::render_mask(), VirtualVNode::render_projector(), and Tracks::total_of().
Definition at line 218 of file autos.C.
References EDL::align_to_frame(), edl, get_prev_auto(), LocalSession::get_selectionstart(), EDL::local_session, Track::to_units(), and track.

| Auto * Autos::get_next_auto | ( | int64_t | position, | |
| int | direction, | |||
| Auto *& | current, | |||
| int | use_default = 1 | |||
| ) |
Definition at line 294 of file autos.C.
References default_auto, List< Auto >::first, List< Auto >::last, NEXT, Auto::position, and PREVIOUS.
Referenced by FloatAutos::get_fade_automation(), PanAutos::get_handle(), VirtualNode::get_mute_fragment(), VirtualANode::get_pan_automation(), and FloatAutos::get_value().
| int Autos::auto_exists_for_editing | ( | double | position | ) |
Definition at line 229 of file autos.C.
References EDL::align_to_frame(), EDLSession::auto_keyframes, edl, get_auto_at_position(), and EDL::session.
Referenced by VModePatch::handle_event(), APanPatch::handle_event(), VFadePatch::update_edl(), and AFadePatch::update_edl().

| Auto * Autos::get_auto_at_position | ( | double | position = -1 |
) |
Definition at line 248 of file autos.C.
References edl, EDL::equivalent(), List< Auto >::first, NEXT, Track::to_units(), and track.
Referenced by auto_exists_for_editing(), and TrackCanvas::synchronize_autos().

| Auto * Autos::get_auto_for_editing | ( | double | position = -1 |
) |
Definition at line 265 of file autos.C.
References EDL::align_to_frame(), EDLSession::auto_keyframes, edl, get_prev_auto(), LocalSession::get_selectionstart(), insert_auto_for_editing(), EDL::local_session, EDL::session, Track::to_units(), and track.
Referenced by MutePatch::button_press_event(), CWindow::calculate_affected_auto(), PatchBay::cursor_motion_event(), VModePatch::handle_event(), APanPatch::handle_event(), MWindow::map_audio(), PatchBay::synchronize_faders(), VFadePatch::update_edl(), and AFadePatch::update_edl().

| Auto * Autos::insert_auto | ( | int64_t | position | ) |
Definition at line 337 of file autos.C.
References Auto::copy_from(), default_auto, edl, EDL::equivalent(), List< Auto >::first, List< Auto >::insert_after(), List< Auto >::insert_before(), List< Auto >::last, new_auto(), NEXT, Auto::position, and PREVIOUS.
Referenced by Plugin::get_keyframe(), insert_track(), paste(), PluginSet::paste_keyframes(), TrackCanvas::synchronize_autos(), TrackCanvas::test_floatline(), and TrackCanvas::test_toggleline().

| Auto * Autos::insert_auto_for_editing | ( | int64_t | position | ) |
Definition at line 384 of file autos.C.
References Auto::copy_from(), default_auto, edl, EDL::equivalent(), List< Auto >::first, List< Auto >::insert_after(), List< Auto >::insert_before(), Auto::interpolate_from(), List< Auto >::last, new_auto(), NEXT, Auto::position, and PREVIOUS.
Referenced by get_auto_for_editing().

| void Autos::insert_track | ( | Autos * | automation, | |
| int64_t | start_unit, | |||
| int64_t | length_units, | |||
| int | replace_default | |||
| ) |
Definition at line 154 of file autos.C.
References Auto::copy_from(), default_auto, List< TYPE >::first, insert(), insert_auto(), new_auto(), NEXT, and Auto::position.
Referenced by Automation::insert_track().

| int Autos::load | ( | FileXML * | xml | ) | [virtual] |
Definition at line 665 of file autos.C.
References List< Auto >::append(), default_auto, XMLTag::get_property(), XMLTag::get_title(), List< Auto >::last, Auto::load(), new_auto(), Auto::position, FileXML::read_tag(), FileXML::tag, and XMLTag::title_is().
Referenced by Automation::load().

| void Autos::paste | ( | int64_t | start, | |
| int64_t | length, | |||
| double | scale, | |||
| FileXML * | file, | |||
| int | default_only | |||
| ) |
Definition at line 463 of file autos.C.
References default_auto, XMLTag::get_property(), XMLTag::get_title(), insert_auto(), Auto::load(), FileXML::read_tag(), FileXML::tag, XMLTag::title_is(), Units::to_int64(), and List< Auto >::total().
Referenced by Automation::paste().

| void Autos::remove_nonsequential | ( | Auto * | keyframe | ) |
Definition at line 612 of file autos.C.
References ListItem< TYPE >::next, Auto::position, and ListItem< TYPE >::previous.
Referenced by TrackCanvas::button_release_event(), and TrackCanvas::synchronize_autos().
| void Autos::optimize | ( | ) |
Definition at line 571 of file autos.C.
References default_auto, List< Auto >::first, NEXT, Auto::position, and PREVIOUS.
| int Autos::get_type | ( | ) |
| int64_t Autos::get_length | ( | ) |
Definition at line 900 of file autos.C.
References List< Auto >::last, and Auto::position.
Referenced by Automation::get_length().
| void Autos::get_extents | ( | float * | min, | |
| float * | max, | |||
| int * | coords_undefined, | |||
| int64_t | unit_start, | |||
| int64_t | unit_end | |||
| ) | [virtual] |
Reimplemented in FloatAutos, and IntAutos.
Definition at line 908 of file autos.C.
Referenced by Automation::get_extents().
| void Autos::dump | ( | ) | [virtual] |
Reimplemented in FloatAutos, IntAutos, KeyFrames, MaskAutos, and PanAutos.
Definition at line 918 of file autos.C.
Referenced by Automation::dump().
| int Autos::clear_all | ( | ) |
Definition at line 433 of file autos.C.
References append_auto(), List< Auto >::first, and NEXT.

| int Autos::insert | ( | int64_t | start, | |
| int64_t | end | |||
| ) |
Definition at line 446 of file autos.C.
References List< Auto >::first, NEXT, and Auto::position.
Referenced by insert_track(), and paste_silence().
| int Autos::paste_silence | ( | int64_t | start, | |
| int64_t | end | |||
| ) |
Definition at line 523 of file autos.C.
References insert().
Referenced by Automation::paste_silence().

| int Autos::copy | ( | int64_t | start, | |
| int64_t | end, | |||
| FileXML * | xml, | |||
| int | default_only, | |||
| int | autos_only | |||
| ) |
Definition at line 529 of file autos.C.
References autoof(), Auto::copy(), default_auto, NEXT, and Auto::position.
Referenced by Plugin::copy(), Automation::copy(), Plugin::copy_keyframes(), and Transition::save_xml().

| void Autos::clear | ( | int64_t | start, | |
| int64_t | end, | |||
| int | shift_autos | |||
| ) |
Definition at line 626 of file autos.C.
References autoof(), NEXT, and Auto::position.
Referenced by Automation::clear(), and Plugin::clear_keyframes().

| void Autos::straighten | ( | int64_t | start, | |
| int64_t | end | |||
| ) | [virtual] |
Reimplemented in FloatAutos.
Definition at line 622 of file autos.C.
Referenced by Automation::straighten().
| int Autos::clear_auto | ( | int64_t | position | ) |
Definition at line 657 of file autos.C.
References autoof(), and Auto::position.

| int Autos::save | ( | FileXML * | xml | ) |
| int Autos::slope_adjustment | ( | int64_t | ax, | |
| double | slope | |||
| ) | [virtual] |
| int Autos::release_auto | ( | ) |
| virtual int Autos::release_auto_derived | ( | ) | [inline, virtual] |
| Auto * Autos::append_auto | ( | ) |
Reimplemented in FloatAutos.
Definition at line 43 of file autos.C.
References List< Auto >::append(), and new_auto().
Referenced by clear_all().

| int Autos::scale_time | ( | float | rate_scale, | |
| int | scale_edits, | |||
| int | scale_autos, | |||
| int64_t | start, | |||
| int64_t | end | |||
| ) |
Definition at line 766 of file autos.C.
References List< Auto >::first, List< Auto >::last, ListItem< TYPE >::next, Auto::position, and ListItem< TYPE >::previous.
Referenced by IntAutos::automation_is_constant(), IntAutos::get_automation_constant(), and FloatAutos::get_automation_constant().
| int Autos::automation_is_constant | ( | int64_t | start, | |
| int64_t | end | |||
| ) | [virtual] |
| double Autos::get_automation_constant | ( | int64_t | start, | |
| int64_t | end | |||
| ) | [virtual] |
Reimplemented in FloatAutos, and IntAutos.
Definition at line 788 of file autos.C.
Referenced by init_automation().
| int Autos::init_automation | ( | int64_t & | buffer_position, | |
| int64_t & | input_start, | |||
| int64_t & | input_end, | |||
| int & | automate, | |||
| double & | constant, | |||
| int64_t | input_position, | |||
| int64_t | buffer_len, | |||
| Auto ** | before, | |||
| Auto ** | after, | |||
| int | reverse | |||
| ) |
Definition at line 794 of file autos.C.
References automation_is_constant(), and get_automation_constant().

| int Autos::init_slope | ( | Auto ** | current_auto, | |
| double & | slope_start, | |||
| double & | slope_value, | |||
| double & | slope_position, | |||
| int64_t & | input_start, | |||
| int64_t & | input_end, | |||
| Auto ** | before, | |||
| Auto ** | after, | |||
| int | reverse | |||
| ) |
Definition at line 825 of file autos.C.
References List< Auto >::first, List< Auto >::last, and Auto::position.
| int Autos::get_slope | ( | Auto ** | current_auto, | |
| double & | slope_start, | |||
| double & | slope_end, | |||
| double & | slope_value, | |||
| double & | slope, | |||
| int64_t | buffer_len, | |||
| int64_t | buffer_position, | |||
| int | reverse | |||
| ) |
| int Autos::advance_slope | ( | Auto ** | current_auto, | |
| double & | slope_start, | |||
| double & | slope_value, | |||
| double & | slope_position, | |||
| int | reverse | |||
| ) |
| Auto * Autos::autoof | ( | int64_t | position | ) |
Definition at line 731 of file autos.C.
References List< Auto >::first, NEXT, and Auto::position.
Referenced by FloatAutos::add_auto(), clear(), clear_auto(), and copy().
| Auto * Autos::nearest_before | ( | int64_t | position | ) |
Definition at line 744 of file autos.C.
References List< Auto >::last, Auto::position, and PREVIOUS.
| Auto * Autos::nearest_after | ( | int64_t | position | ) |
Definition at line 72 of file autos.h.
Referenced by auto_exists_for_editing(), get_auto_at_position(), get_auto_for_editing(), FloatAutos::get_extents(), get_prev_auto(), insert_auto(), insert_auto_for_editing(), PanAutos::new_auto(), MaskAutos::new_auto(), KeyFrames::new_auto(), IntAutos::new_auto(), FloatAutos::new_auto(), and new_auto().
Definition at line 73 of file autos.h.
Referenced by TrackCanvas::do_autos(), get_auto_at_position(), get_auto_for_editing(), FloatAutos::get_extents(), get_prev_auto(), FloatAutos::straighten(), TrackCanvas::test_toggleline(), TrackCanvas::update_drag_auto(), TrackCanvas::update_drag_floatauto(), TrackCanvas::update_drag_pluginauto(), and TrackCanvas::update_drag_toggleauto().
Definition at line 79 of file autos.h.
Referenced by Tracks::add_audio_track(), FloatAutos::automation_is_constant(), copy(), copy_from(), create_objects(), TrackCanvas::do_float_autos(), MaskEngine::do_mask(), CWindowCanvas::do_mask(), TrackCanvas::do_toggle_autos(), PanAutos::dump(), MaskAutos::dump(), KeyFrames::dump(), IntAutos::dump(), FloatAutos::dump(), equivalent_output(), IntAutos::get_automation_constant(), FloatAutos::get_automation_constant(), IntAutos::get_extents(), FloatAutos::get_extents(), Transition::get_keyframe(), Plugin::get_keyframe(), get_next_auto(), Plugin::get_next_keyframe(), MaskAutos::get_points(), get_prev_auto(), Plugin::get_prev_keyframe(), FloatAutos::get_value(), CWindowMaskDelete::handle_event(), CWindowMaskMode::handle_event(), Plugin::identical(), insert_auto(), insert_auto_for_editing(), PluginSet::insert_plugin(), insert_track(), Plugin::load(), load(), Transition::load_xml(), PluginSet::optimize(), optimize(), paste(), PluginSet::paste_keyframes(), EDL::rechannel(), VirtualVNode::render_mask(), MaskAutos::total_submasks(), VTrack::translate(), MaskAutos::translate_masks(), CWindowMaskGUI::update(), and ~Autos().
| int Autos::autoidx |
Definition at line 81 of file autos.h.
Referenced by Autos(), VAutomation::create_objects(), Automation::create_objects(), and AAutomation::create_objects().
Definition at line 82 of file autos.h.
Referenced by Autos(), VAutomation::create_objects(), Automation::create_objects(), AAutomation::create_objects(), FloatAuto::invalue_to_percentage(), FloatAuto::outvalue_to_percentage(), TrackCanvas::synchronize_autos(), TrackCanvas::update_drag_floatauto(), and FloatAuto::value_to_percentage().
| int Autos::type |
Definition at line 83 of file autos.h.
Referenced by Autos(), FloatAutos::FloatAutos(), get_type(), IntAutos::IntAutos(), MaskAutos::MaskAutos(), and PanAutos::PanAutos().
Definition at line 161 of