/*
* CINELERRA
* Copyright (C) 2008 Adam Williams <broadcast at earthling dot net>
- *
+ *
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
- *
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
- *
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
+ *
*/
#ifndef VIRTUALNODE_H
class VirtualNode
{
public:
- VirtualNode(RenderEngine *renderengine,
- VirtualConsole *vconsole,
- Module *real_module,
- Plugin *real_plugin,
- Track *track,
+ VirtualNode(RenderEngine *renderengine,
+ VirtualConsole *vconsole,
+ Module *real_module,
+ Plugin *real_plugin,
+ Track *track,
VirtualNode *parent_node);
friend class VirtualConsole;
// create convenience pointers to shared memory depending on the data type
virtual int create_buffer_ptrs() { return 0; }
// create a node for a module and expand it
- int attach_virtual_module(Plugin *plugin,
- int plugin_number,
- int duplicate,
+ int attach_virtual_module(Plugin *plugin,
+ int plugin_number,
+ int duplicate,
int64_t current_position);
// create a node for a plugin and expand it
- int attach_virtual_plugin(Plugin *plugin,
- int plugin_number,
- int duplicate,
+ int attach_virtual_plugin(Plugin *plugin,
+ int plugin_number,
+ int duplicate,
int64_t current_position);
- virtual VirtualNode* create_module(Plugin *real_plugin,
- Module *real_module,
+ virtual VirtualNode* create_module(Plugin *real_plugin,
+ Module *real_module,
Track *track) { return 0; };
virtual VirtualNode* create_plugin(Plugin *real_plugin) { return 0; };
int plugin_type; // type of plugin in case user changes it
int render_count; // times this plugin has been added to the render list
int waiting_real_plugin; // real plugin tests this to see if virtual plugin is waiting on it when sorting
-// attachment point needs to know what buffer to put data into from
+// attachment point needs to know what buffer to put data into from
// a multichannel plugin
int plugin_buffer_number;
// Return whether the next samples are muted and store the duration
// of the next status in fragment_len
void get_mute_fragment(int64_t input_position,
- int &mute_constant,
- int &fragment_len,
+ int &mute_constant,
+ int &fragment_len,
Autos *autos,
int direction,
int use_nudge);
* int64_t input_position,
* int64_t &slope_len,
* Autos *autos);
- *
- * int init_automation(int &automate,
- * double &constant,
+ *
+ * int init_automation(int &automate,
+ * double &constant,
* int64_t input_position,
* int64_t buffer_len,
* Autos *autos,
- * Auto **before,
+ * Auto **before,
* Auto **after);
- *
+ *
* int init_slope(Autos *autos, Auto **before, Auto **after);
* int get_slope(Autos *autos, int64_t buffer_len, int64_t buffer_position);
* int advance_slope(Autos *autos);