00001 #ifndef RESAMPLEEFFECT_H 00002 #define RESAMPLEEFFECT_H 00003 00004 00005 #include "bchash.inc" 00006 #include "guicast.h" 00007 #include "mainprogress.inc" 00008 #include "pluginaclient.h" 00009 #include "resample.inc" 00010 #include "vframe.inc" 00011 00012 class ResampleEffect; 00013 00014 00015 class ResampleFraction : public BC_TextBox 00016 { 00017 public: 00018 ResampleFraction(ResampleEffect *plugin, int x, int y); 00019 int handle_event(); 00020 ResampleEffect *plugin; 00021 }; 00022 00023 00024 00025 class ResampleWindow : public BC_Window 00026 { 00027 public: 00028 ResampleWindow(ResampleEffect *plugin, int x, int y); 00029 void create_objects(); 00030 ResampleEffect *plugin; 00031 }; 00032 00033 00034 00035 class ResampleEffect : public PluginAClient 00036 { 00037 public: 00038 ResampleEffect(PluginServer *server); 00039 ~ResampleEffect(); 00040 00041 char* plugin_title(); 00042 int get_parameters(); 00043 VFrame* new_picon(); 00044 int start_loop(); 00045 int process_loop(double *buffer, int64_t &write_length); 00046 int stop_loop(); 00047 int load_defaults(); 00048 int save_defaults(); 00049 void reset(); 00050 00051 00052 Resample *resample; 00053 double scale; 00054 BC_Hash *defaults; 00055 MainProgressBar *progress; 00056 int64_t total_written; 00057 int64_t current_position; 00058 }; 00059 00060 00061 00062 00063 00064 #endif
1.5.5