mirror of
https://github.com/cookiengineer/audacity
synced 2025-10-22 14:32:58 +02:00
... Should have no effect on generated code, except perhaps some slight faster virtual function calls. Mostly useful as documentation of design intent. Tried to mark every one of our classes that inherits from another, or is a base for others, or has abstract virtual functions, and a few others besides.
54 lines
1.3 KiB
C++
54 lines
1.3 KiB
C++
/**********************************************************************
|
|
|
|
Audacity - A Digital Audio Editor
|
|
Copyright 1999-2009 Audacity Team
|
|
License: wxwidgets
|
|
|
|
Dan Horgan
|
|
|
|
******************************************************************//**
|
|
|
|
\file CompareAudioCommand.h
|
|
\brief Contains declaration of CompareAudioCommand and CompareAudioCommandType
|
|
classes
|
|
|
|
*//*******************************************************************/
|
|
|
|
#ifndef __COMPAREAUDIOCOMMAND__
|
|
#define __COMPAREAUDIOCOMMAND__
|
|
|
|
#include "Command.h"
|
|
#include "CommandType.h"
|
|
|
|
class WaveTrack;
|
|
|
|
class CompareAudioCommandType final : public CommandType
|
|
{
|
|
public:
|
|
virtual wxString BuildName();
|
|
virtual void BuildSignature(CommandSignature &signature);
|
|
virtual Command *Create(CommandOutputTarget *target);
|
|
};
|
|
|
|
class CompareAudioCommand final : public CommandImplementation
|
|
{
|
|
private:
|
|
double mT0, mT1;
|
|
WaveTrack *mTrack0;
|
|
WaveTrack *mTrack1;
|
|
|
|
// Update member variables with project selection data (and validate)
|
|
bool GetSelection(AudacityProject &proj);
|
|
|
|
protected:
|
|
virtual double CompareSample(double value1, double value2);
|
|
|
|
public:
|
|
CompareAudioCommand(CommandType &type, CommandOutputTarget *target)
|
|
: CommandImplementation(type, target)
|
|
{ }
|
|
virtual bool Apply(CommandExecutionContext context);
|
|
};
|
|
|
|
#endif /* End of include guard: __COMPAREAUDIOCOMMAND__ */
|