#ifndef COMPILERFACTORY_H
#define COMPILERFACTORY_H
#include "settings.h"
#include "compiler.h"
// Well, not really a factory ;)
WX_DEFINE_ARRAY(Compiler*, CompilersArray);
class DLLIMPORT CompilerFactory
{
public:
static void RegisterCompiler(Compiler* compiler);
static void RegisterUserCompilers();
static int CreateCompilerCopy(Compiler* compiler);
static void RemoveCompiler(Compiler* compiler);
static void UnregisterCompilers();
static void SaveSettings();
static void LoadSettings();
static bool CompilerIndexOK(int compilerIdx);
static int GetDefaultCompilerIndex();
static void SetDefaultCompilerIndex(int compilerIdx);
static Compiler* GetDefaultCompiler();
static void SetDefaultCompiler(Compiler* compiler);
static CompilersArray Compilers;
private:
static int s_DefaultCompilerIdx;
};
#endif // COMPILERFACTORY_H
syntax highlighted by Code2HTML, v. 0.9.1