X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.0%2Fcinelerra%2Fmodule.h;fp=cinelerra-5.0%2Fcinelerra%2Fmodule.h;h=0000000000000000000000000000000000000000;hb=30bdb85eb33a8ee7ba675038a86c6be59c43d7bd;hp=b82973ebc3f37b5b98e911471ab02c3d112e10b7;hpb=52fcc46226f9df46f9ce9d0566dc568455a7db0b;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.0/cinelerra/module.h b/cinelerra-5.0/cinelerra/module.h deleted file mode 100644 index b82973eb..00000000 --- a/cinelerra-5.0/cinelerra/module.h +++ /dev/null @@ -1,126 +0,0 @@ - -/* - * CINELERRA - * Copyright (C) 2009 Adam Williams - * - * 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 MODULE_H -#define MODULE_H - -#include "attachmentpoint.inc" -#include "cache.inc" -#include "commonrender.inc" -#include "datatype.h" -#include "edl.inc" -#include "filexml.inc" -#include "guicast.h" -#include "maxchannels.h" -#include "module.inc" -#include "patch.inc" -#include "plugin.inc" -#include "pluginarray.inc" -#include "pluginserver.inc" -#include "pluginset.inc" -#include "preferences.inc" -#include "renderengine.inc" -#include "sharedlocation.inc" -#include "track.inc" -#include "transportque.inc" -#include "virtualconsole.inc" - -class Module -{ -public: - Module(RenderEngine *renderengine, - CommonRender *commonrender, - PluginArray *plugin_array, - Track *track); - Module() {}; - virtual ~Module(); - - virtual void create_objects(); - void create_new_attachments(); -// Swaps in changed plugin servers for old plugins servers during playback. -// Allows data in unchanged plugins to continue. Prepares pointers in -// plugin server to be added in expansion. - void swap_attachments(); -// Reset processing status of attachments before every buffer is processed. - void reset_attachments(); - virtual AttachmentPoint* new_attachment(Plugin *plugin) { return 0; }; - virtual int get_buffer_size() { return 0; }; - int test_plugins(); - AttachmentPoint* attachment_of(Plugin *plugin); - -// Get attachment number or return 0 if out of range. - AttachmentPoint* get_attachment(int number); - - void dump(); -// Start plugin rendering - int render_init(); -// Stop plugin rendering in case any resources have to be freed. - void render_stop(); -// Current_position is relative to the EDL rate. -// If direction is REVERSE, the object before current_position is tested. - void update_transition(int64_t current_position, int direction); - EDL* get_edl(); - Preferences* get_preferences(); - -// CICache used during effect & nested EDL - CICache *cache; -// If the cache was allocated by the module - int private_cache; -// Parent EDL of this module when used for effect rendering. -// Used by APluginArray. - EDL *edl; -// Not available in menu effects - CommonRender *commonrender; -// Top level render engine for this module -// Not available in menu effects - RenderEngine *renderengine; -// Not available in realtime playback - PluginArray *plugin_array; -// Track related to this module - Track *track; -// TRACK_AUDIO or TRACK_VIDEO - int data_type; - -// Pointer to transition in EDL - Plugin *transition; -// PluginServer for transition - PluginServer *transition_server; - -// RenderEngine for nested EDL - RenderEngine *nested_renderengine; -// Pointer to nested EDL currently being rendered in the parent EDL. - EDL *nested_edl; -// Command for nested renderengine - TransportCommand *nested_command; - -// Currently active plugins. -// Use one AttachmentPoint for every pluginset to allow shared plugins to create -// extra plugin servers. -// AttachmentPoints are 0 if there is no plugin on the pluginset. - AttachmentPoint **attachments; - int total_attachments; -// AttachmentPoints are swapped in at render start to keep unchanged modules -// from resetting - AttachmentPoint **new_attachments; - int new_total_attachments; -}; - -#endif