1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-10-19 17:11:12 +02:00

checking in cleanup of on-demand files following james' review. also speeds up od cursor updating when user clicks for on-demand

This commit is contained in:
mchinen
2010-03-08 01:52:38 +00:00
parent 016c6ce796
commit 5ccce1ed4b
9 changed files with 123 additions and 181 deletions

View File

@@ -41,9 +41,7 @@ number of threads.
DECLARE_EXPORTED_EVENT_TYPE(AUDACITY_DLL_API, EVT_ODTASK_UPDATE, -1)
///wxstring compare function for sorting filenames with od
int CompareODFileName(const wxString& first, const wxString& second);
int CompareODFirstFileName(const wxString& first, const wxString& second);
///wxstring compare function for sorting case, which is needed to load correctly.
int CompareNoCaseFileName(const wxString& first, const wxString& second);
/// A singleton that manages currently running Tasks on an arbitrary
/// number of threads.
@@ -52,8 +50,13 @@ class ODWaveTrackTaskQueue;
class ODManager
{
public:
///Gets the singleton instance - this is a function pointer that points to one of the below two instance calls.
///Note that it is not a member function pointer since it is a static function.
static ODManager* (*Instance)();
///Gets the singleton instance
static ODManager* Instance();
static ODManager* InstanceFirstTime();
///Gets the singleton instance
static ODManager* InstanceNormal();
///Kills the ODMananger Thread.
static void Quit();
@@ -132,6 +135,8 @@ class ODManager
///Remove references in our array to Tasks that have been completed/Schedule new ones
void UpdateQueues();
//instance
static ODManager* pMan;
//List of tracks and their active and inactive tasks.
std::vector<ODWaveTrackTaskQueue*> mQueues;