#include <spectrogram.h>
Inherits PluginAClient.

Public Member Functions | |
| Spectrogram (PluginServer *server) | |
| ~Spectrogram () | |
| VFrame * | new_picon () |
| char * | plugin_title () |
| int | is_realtime () |
| int | process_buffer (int64_t size, double *buffer, int64_t start_position, int sample_rate) |
| int | show_gui () |
| void | raise_window () |
| int | set_string () |
| void | load_configuration () |
| int | load_defaults () |
| int | save_defaults () |
| void | read_data (KeyFrame *keyframe) |
| void | save_data (KeyFrame *keyframe) |
| void | update_gui () |
| void | render_gui (void *data, int size) |
| void | reset () |
Data Fields | |
| int | done |
| int | need_reconfigure |
| BC_Hash * | defaults |
| SpectrogramConfig | config |
| SpectrogramThread * | thread |
| SpectrogramFFT * | fft |
| float * | data |
| int | total_windows |
Definition at line 77 of file spectrogram.h.
| Spectrogram::Spectrogram | ( | PluginServer * | server | ) |
Definition at line 177 of file spectrogram.C.
References PLUGIN_CONSTRUCTOR_MACRO, and reset().

| Spectrogram::~Spectrogram | ( | ) |
| VFrame* Spectrogram::new_picon | ( | ) | [virtual] |
Reimplemented from PluginClient.
| char * Spectrogram::plugin_title | ( | ) | [virtual] |
| int Spectrogram::is_realtime | ( | ) | [virtual] |
| int Spectrogram::process_buffer | ( | int64_t | size, | |
| double * | buffer, | |||
| int64_t | start_position, | |||
| int | sample_rate | |||
| ) | [virtual] |
Reimplemented from PluginAClient.
Definition at line 205 of file spectrogram.C.
References data, fft, PluginClient::get_direction(), HALF_WINDOW, CrossfadeFFT::initialize(), load_configuration(), CrossfadeFFT::process_buffer(), PluginAClient::send_render_gui(), total_windows, and WINDOW_SIZE.

| int Spectrogram::show_gui | ( | ) | [virtual] |
Reimplemented from PluginClient.
| void Spectrogram::raise_window | ( | ) | [virtual] |
Reimplemented from PluginClient.
| int Spectrogram::set_string | ( | ) | [virtual] |
Reimplemented from PluginClient.
| void Spectrogram::load_configuration | ( | ) |
Definition at line 318 of file spectrogram.C.
References PluginClient::get_prev_keyframe(), PluginClient::get_source_position(), and read_data().
Referenced by process_buffer(), and update_gui().

| int Spectrogram::load_defaults | ( | ) | [virtual] |
Reimplemented from PluginClient.
Definition at line 360 of file spectrogram.C.
References BCASTDIR, BCTEXTLEN, config, defaults, BC_Hash::get(), SpectrogramConfig::level, and BC_Hash::load().

| int Spectrogram::save_defaults | ( | ) | [virtual] |
Reimplemented from PluginClient.
Definition at line 371 of file spectrogram.C.
References config, defaults, SpectrogramConfig::level, BC_Hash::save(), and BC_Hash::update().

| void Spectrogram::read_data | ( | KeyFrame * | keyframe | ) | [virtual] |
Reimplemented from PluginClient.
Definition at line 326 of file spectrogram.C.
References config, KeyFrame::data, XMLTag::get_property(), input, SpectrogramConfig::level, FileXML::read_tag(), FileXML::set_shared_string(), FileXML::tag, and XMLTag::title_is().
Referenced by load_configuration().

| void Spectrogram::save_data | ( | KeyFrame * | keyframe | ) | [virtual] |
Reimplemented from PluginClient.
Definition at line 346 of file spectrogram.C.
References FileXML::append_newline(), FileXML::append_tag(), config, KeyFrame::data, SpectrogramConfig::level, output, XMLTag::set_property(), FileXML::set_shared_string(), XMLTag::set_title(), FileXML::tag, and FileXML::terminate_string().

| void Spectrogram::update_gui | ( | ) | [virtual] |
Reimplemented from PluginClient.
Definition at line 242 of file spectrogram.C.
References load_configuration(), and thread.

| void Spectrogram::render_gui | ( | void * | data, | |
| int | size | |||
| ) | [virtual] |
Reimplemented from PluginAClient.
Definition at line 253 of file spectrogram.C.
References BC_WindowBase::copy_area(), BC_WindowBase::draw_pixel(), BC_WindowBase::flash(), BC_WindowBase::flush(), BC_WindowBase::get_h(), PluginAClient::get_project_samplerate(), BC_WindowBase::get_w(), HALF_WINDOW, MIN, BC_WindowBase::set_color(), thread, Freq::tofreq(), and TOTALFREQS.

| void Spectrogram::reset | ( | ) |
Reimplemented from PluginClient.
Definition at line 193 of file spectrogram.C.
References data, done, fft, and thread.
Referenced by Spectrogram().
Definition at line 105 of file spectrogram.h.
Definition at line 107 of file spectrogram.h.
Referenced by SpectrogramLevel::handle_event(), load_defaults(), read_data(), save_data(), save_defaults(), SpectrogramFFT::signal_process(), and SpectrogramWindow::update_gui().
| SpectrogramThread* Spectrogram::thread |
Definition at line 108 of file spectrogram.h.
Referenced by render_gui(), reset(), and update_gui().
Definition at line 109 of file spectrogram.h.
Referenced by process_buffer(), reset(), and ~Spectrogram().
| float* Spectrogram::data |
Definition at line 110 of file spectrogram.h.
Referenced by process_buffer(), reset(), SpectrogramFFT::signal_process(), and ~Spectrogram().
Definition at line 111 of file spectrogram.h.
Referenced by process_buffer(), and SpectrogramFFT::signal_process().
1.5.5