#include <mainindexes.h>
Inherits Thread.

Public Member Functions | |
| MainIndexes (MWindow *mwindow) | |
| ~MainIndexes () | |
| void | add_next_asset (File *file, Asset *asset) |
| void | start_loop () |
| void | stop_loop () |
| void | start_build () |
| void | run () |
| void | interrupt_build () |
| void | load_next_assets () |
| void | delete_current_assets () |
Data Fields | |
| ArrayList< Asset * > | current_assets |
| ArrayList< Asset * > | next_assets |
| int | interrupt_flag |
| int | done |
| MWindow * | mwindow |
| Condition * | input_lock |
| Mutex * | next_lock |
| Condition * | interrupt_lock |
| IndexFile * | indexfile |
Definition at line 14 of file mainindexes.h.
| MainIndexes::MainIndexes | ( | MWindow * | mwindow | ) |
Definition at line 22 of file mainindexes.C.
References done, indexfile, input_lock, interrupt_flag, interrupt_lock, next_lock, and Thread::set_synchronous().

| MainIndexes::~MainIndexes | ( | ) |
Definition at line 35 of file mainindexes.C.
References MainProgress::cancelled, indexfile, input_lock, interrupt_lock, MWindow::mainprogress, mwindow, next_lock, and stop_loop().

Definition at line 45 of file mainindexes.C.
References ArrayList< TYPE >::append(), BCTEXTLEN, IndexFile::close_index(), File::get_index(), IndexFile::get_index_filename(), Preferences::index_directory, Asset::index_status, indexfile, Mutex::lock(), mwindow, next_assets, next_lock, File::open_file(), IndexFile::open_index(), Asset::path, MWindow::preferences, and Mutex::unlock().
Referenced by MWindow::load_filenames(), MainUndoStackItem::load_from_undo(), MWindow::paste_edls(), MWindow::rebuild_indices(), and AssetEdit::run().

| void MainIndexes::start_loop | ( | ) |
Definition at line 116 of file mainindexes.C.
References interrupt_flag, and Thread::start().
Referenced by MWindow::init_indexes().

| void MainIndexes::stop_loop | ( | ) |
Definition at line 122 of file mainindexes.C.
References done, input_lock, interrupt_flag, interrupt_lock, Thread::join(), and Condition::unlock().
Referenced by ~MainIndexes().

| void MainIndexes::start_build | ( | ) |
Definition at line 132 of file mainindexes.C.
References input_lock, interrupt_flag, and Condition::unlock().
Referenced by MWindow::load_filenames(), MainUndoStackItem::load_from_undo(), MWindow::paste_edls(), MWindow::rebuild_indices(), and AssetEdit::run().

| void MainIndexes::run | ( | ) | [virtual] |
Implements Thread.
Definition at line 169 of file mainindexes.C.
References _, Asset::audio_data, IndexFile::close_index(), IndexFile::create_index(), current_assets, done, MWindow::edl, MWindow::gui, Asset::index_status, indexfile, input_lock, interrupt_flag, interrupt_lock, MainProgressBar::is_cancelled(), load_next_assets(), Condition::lock(), BC_WindowBase::lock_window(), MWindow::mainprogress, mwindow, IndexFile::open_index(), EDL::set_index_file(), MainProgress::start_progress(), MainProgressBar::stop_progress(), ArrayList< TYPE >::total, Condition::unlock(), BC_WindowBase::unlock_window(), and ArrayList< TYPE >::values.

| void MainIndexes::interrupt_build | ( | ) |
Definition at line 142 of file mainindexes.C.
References indexfile, interrupt_flag, IndexFile::interrupt_index(), interrupt_lock, Condition::lock(), and Condition::unlock().
Referenced by MWindow::interrupt_indexes().

| void MainIndexes::load_next_assets | ( | ) |
Definition at line 154 of file mainindexes.C.
References ArrayList< TYPE >::append(), current_assets, delete_current_assets(), Mutex::lock(), next_assets, next_lock, ArrayList< TYPE >::remove_all(), ArrayList< TYPE >::total, Mutex::unlock(), and ArrayList< TYPE >::values.
Referenced by run().

| void MainIndexes::delete_current_assets | ( | ) |
Definition at line 109 of file mainindexes.C.
References current_assets, Garbage::delete_object(), ArrayList< TYPE >::remove_all(), ArrayList< TYPE >::total, and ArrayList< TYPE >::values.
Referenced by load_next_assets().

Definition at line 30 of file mainindexes.h.
Referenced by delete_current_assets(), load_next_assets(), and run().
Definition at line 31 of file mainindexes.h.
Referenced by add_next_asset(), and load_next_assets().
Definition at line 33 of file mainindexes.h.
Referenced by interrupt_build(), MainIndexes(), run(), start_build(), start_loop(), and stop_loop().
Definition at line 35 of file mainindexes.h.
Referenced by add_next_asset(), run(), and ~MainIndexes().
Definition at line 36 of file mainindexes.h.
Referenced by MainIndexes(), run(), start_build(), stop_loop(), and ~MainIndexes().
Definition at line 37 of file mainindexes.h.
Referenced by add_next_asset(), load_next_assets(), MainIndexes(), and ~MainIndexes().
Definition at line 38 of file mainindexes.h.
Referenced by interrupt_build(), MainIndexes(), run(), stop_loop(), and ~MainIndexes().
Definition at line 39 of file mainindexes.h.
Referenced by add_next_asset(), interrupt_build(), MainIndexes(), run(), and ~MainIndexes().
1.5.5