mirror of
https://github.com/cookiengineer/audacity
synced 2025-05-06 14:52:34 +02:00
It combines the old IdentInterface with the ParamsInterface, providing an identifier and parameters (if needed). The main purpose of the change is to make the class hierarchy (as viewed via doxygen) much easier to follow.
50 lines
1.3 KiB
C++
50 lines
1.3 KiB
C++
/**********************************************************************
|
|
|
|
Audacity: A Digital Audio Editor
|
|
|
|
Registrar.h
|
|
|
|
James Crook
|
|
|
|
*******************************************************************//**
|
|
|
|
\class Registrar
|
|
\brief Base class for registration callback.
|
|
Audcaity will call providers RegisterNameOfThing() functions with
|
|
an &Registrar as the argument. RegisterNameOfThing() is then
|
|
responsible for calling the appropriate callback functions.
|
|
|
|
**********************************************************************/
|
|
|
|
|
|
#ifndef __AUDACITY_REGISTRAR__
|
|
#define __AUDACITY_REGISTRAR__
|
|
|
|
#include "Audacity.h"
|
|
#include "MemoryX.h"
|
|
|
|
class LoadableModule;
|
|
class ComponentInterface;
|
|
class Effect;
|
|
|
|
class AUDACITY_DLL_API Registrar
|
|
{
|
|
public:
|
|
Registrar(){
|
|
bWantsModules = false;
|
|
bWantsCommands= false;
|
|
bWantsCommandTypes= false;
|
|
bWantsEffects= false;
|
|
}
|
|
bool bWantsModules;
|
|
bool bWantsCommands;
|
|
bool bWantsCommandTypes;
|
|
bool bWantsEffects;
|
|
virtual void AddCommandType(std::unique_ptr<ComponentInterface> && WXUNUSED(comDef) ){;};
|
|
virtual void AddCommand(std::unique_ptr<AudacityCommand> && WXUNUSED(command) ){;};
|
|
virtual void AddModule(std::unique_ptr<LoadableModule> && WXUNUSED(module) ){;};
|
|
virtual void AddEffect(std::unique_ptr<Effect> && WXUNUSED(effect) ){;};
|
|
};
|
|
|
|
#endif
|