r105: This commit was manufactured by cvs2svn to create tag
[cinelerra_cv/mob.git] / hvirtual / cinelerra / vmodule.h
blobec276e030fe359662f4ea9b01160c3549ce72d80
1 #ifndef VMODULE_H
2 #define VMODULE_H
4 class VModuleGUI;
5 class VModuleTitle;
6 class VModuleFade;
7 class VModuleMute;
8 class VModuleMode;
10 #define VMODULEHEIGHT 91
11 #define VMODULEWIDTH 106
14 #include "guicast.h"
15 #include "datatype.h"
16 #include "edl.inc"
17 #include "filexml.inc"
18 #include "floatautos.inc"
19 #include "maxchannels.h"
20 #include "module.h"
21 #include "overlayframe.inc"
22 #include "sharedlocation.inc"
23 #include "track.inc"
24 #include "vedit.inc"
25 #include "vframe.inc"
27 class VModule : public Module
29 public:
30 VModule() {};
31 VModule(RenderEngine *renderengine,
32 CommonRender *commonrender,
33 PluginArray *plugin_array,
34 Track *track);
35 virtual ~VModule();
37 void create_objects();
38 AttachmentPoint* new_attachment(Plugin *plugin);
39 int get_buffer_size();
41 CICache* get_cache();
42 int import_frame(VFrame *output,
43 VEdit *current_edit,
44 int64_t input_position,
45 int direction);
46 int render(VFrame *output,
47 int64_t input_position,
48 int direction);
50 // synchronization with tracks
51 FloatAutos* get_fade_automation(); // get the fade automation for this module
53 // Temp frames for loading from file handlers
54 VFrame *input_temp;
55 // Temp frame for transition
56 VFrame *transition_temp;
57 // Engine for transferring from file to buffer_in
58 OverlayFrame *overlayer;
61 #endif