plugin limit removed by Joel Faber

This commit is contained in:
zueuk 2008-02-28 15:46:59 +00:00
parent 04189f461b
commit 922d06e278
14 changed files with 87 additions and 59 deletions

View File

@ -19,8 +19,8 @@ type
class function GetName: string; virtual; abstract; class function GetName: string; virtual; abstract;
class function GetInstance: TBaseVariation; virtual; abstract; class function GetInstance: TBaseVariation; virtual; abstract;
class function GetNrVariables: integer; virtual; function GetNrVariables: integer; virtual;
class function GetVariableNameAt(const Index: integer): string; virtual; function GetVariableNameAt(const Index: integer): string; virtual;
function GetVariable(const Name: string; var Value: double): boolean; virtual; function GetVariable(const Name: string; var Value: double): boolean; virtual;
function SetVariable(const Name: string; var Value: double): boolean; virtual; function SetVariable(const Name: string; var Value: double): boolean; virtual;
@ -65,7 +65,7 @@ uses SysUtils;
{ TBaseVariation } { TBaseVariation }
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TBaseVariation.GetNrVariables: integer; function TBaseVariation.GetNrVariables: integer;
begin begin
Result := 0; Result := 0;
end; end;
@ -118,7 +118,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TBaseVariation.GetVariableNameAt(const Index: integer): string; function TBaseVariation.GetVariableNameAt(const Index: integer): string;
begin begin
Result := '' Result := ''
end; end;
@ -153,13 +153,21 @@ begin
end; end;
function TVariationClassLoader.GetNrVariables: integer; function TVariationClassLoader.GetNrVariables: integer;
var
hack : TBaseVariation;
begin begin
Result := VariationClass.GetNrVariables(); hack := GetInstance();
Result := hack.GetNrVariables();
hack.Free();
end; end;
function TVariationClassLoader.GetVariableNameAt(const Index: integer): string; function TVariationClassLoader.GetVariableNameAt(const Index: integer): string;
var
hack : TBaseVariation;
begin begin
Result := VariationClass.GetVariableNameAt(Index); hack := GetInstance();
Result := hack.GetVariableNameAt(Index);
hack.Free();
end; end;
end. end.

View File

@ -48,7 +48,7 @@ type
private private
FNrFunctions: Integer; FNrFunctions: Integer;
FFunctionList: array of TCalcFunction; FFunctionList: array of TCalcFunction;
FCalcFunctionList: array[0..64] of TCalcFunction; FCalcFunctionList: array{[0..64]} of TCalcFunction;
FTx, FTy: double; FTx, FTy: double;
FPx, FPy: double; FPx, FPy: double;
@ -227,6 +227,8 @@ begin
FRegVariations[i].GetCalcFunction(FFunctionList[NRLOCVAR + i]); FRegVariations[i].GetCalcFunction(FFunctionList[NRLOCVAR + i]);
end; end;
SetLength(FCalcFunctionList, NrVar + 2);
CalculateAngle := (vars[5] <> 0.0) or (vars[6] <> 0.0) or (vars[7] <> 0.0) or CalculateAngle := (vars[5] <> 0.0) or (vars[6] <> 0.0) or (vars[7] <> 0.0) or
(vars[8] <> 0.0) or (vars[12] <> 0.0) or (vars[13] <> 0.0) or (vars[8] <> 0.0) or (vars[12] <> 0.0) or (vars[13] <> 0.0) or
(vars[21] <> 0.0) or (vars[22] <> 0.0) or (vars[27] <> 0.0); (vars[21] <> 0.0) or (vars[22] <> 0.0) or (vars[27] <> 0.0);

View File

@ -34,8 +34,8 @@ type
class function GetName: string; override; class function GetName: string; override;
class function GetInstance: TBaseVariation; override; class function GetInstance: TBaseVariation; override;
class function GetNrVariables: integer; override; function GetNrVariables: integer; override;
class function GetVariableNameAt(const Index: integer): string; override; function GetVariableNameAt(const Index: integer): string; override;
function SetVariable(const Name: string; var value: double): boolean; override; function SetVariable(const Name: string; var value: double): boolean; override;
function GetVariable(const Name: string; var value: double): boolean; override; function GetVariable(const Name: string; var value: double): boolean; override;
@ -295,7 +295,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationCurl.GetVariableNameAt(const Index: integer): string; function TVariationCurl.GetVariableNameAt(const Index: integer): string;
begin begin
case Index of case Index of
0: Result := var_c1_name; 0: Result := var_c1_name;
@ -333,7 +333,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationCurl.GetNrVariables: integer; function TVariationCurl.GetNrVariables: integer;
begin begin
Result := num_vars; Result := num_vars;
end; end;

View File

@ -16,8 +16,8 @@ type
class function GetName: string; override; class function GetName: string; override;
class function GetInstance: TBaseVariation; override; class function GetInstance: TBaseVariation; override;
class function GetNrVariables: integer; override; function GetNrVariables: integer; override;
class function GetVariableNameAt(const Index: integer): string; override; function GetVariableNameAt(const Index: integer): string; override;
function SetVariable(const Name: string; var value: double): boolean; override; function SetVariable(const Name: string; var value: double): boolean; override;
function GetVariable(const Name: string; var value: double): boolean; override; function GetVariable(const Name: string; var value: double): boolean; override;
@ -106,7 +106,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationFan2.GetVariableNameAt(const Index: integer): string; function TVariationFan2.GetVariableNameAt(const Index: integer): string;
begin begin
case Index Of case Index Of
0: Result := 'fan2_x'; 0: Result := 'fan2_x';
@ -130,7 +130,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationFan2.GetNrVariables: integer; function TVariationFan2.GetNrVariables: integer;
begin begin
Result := 2 Result := 2
end; end;

View File

@ -79,6 +79,9 @@ type
class function GetName: string; override; class function GetName: string; override;
class function GetInstance: TBaseVariation; override; class function GetInstance: TBaseVariation; override;
function GetNrVariables: integer; override;
function GetVariableNameAt(const Index: integer): string; override;
function SetVariable(const Name: string; var value: double): boolean; override; function SetVariable(const Name: string; var value: double): boolean; override;
function GetVariable(const Name: string; var value: double): boolean; override; function GetVariable(const Name: string; var value: double): boolean; override;
function ResetVariable(const Name: string): boolean; override; function ResetVariable(const Name: string): boolean; override;
@ -183,6 +186,18 @@ begin
Result := ''; Result := '';
end; end;
///////////////////////////////////////////////////////////////////////////////
function TPluginVariation.GetNrVariables: integer;
begin
Result := PluginData.PluginVarGetNrVariables;
end;
///////////////////////////////////////////////////////////////////////////////
function TPluginVariation.GetVariableNameAt(const Index: integer): string;
begin
Result := PluginData.PluginVarGetVariableNameAt(Index);
end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
function TPluginVariation.SetVariable(const Name: string; var value: double): boolean; function TPluginVariation.SetVariable(const Name: string; var value: double): boolean;
begin begin
@ -248,7 +263,10 @@ begin
until (FindNext(searchResult) <> 0); until (FindNext(searchResult) <> 0);
SysUtils.FindClose(searchResult); //Since we use Windows unit (LoadLibrary) SysUtils.FindClose(searchResult); //Since we use Windows unit (LoadLibrary)
if msg <> '' then Application.MessageBox(PChar('There were problems with some of the plugins:' + #13#10#13#10 + msg), 'Warning', MB_OK); if msg <> '' then
Application.MessageBox(
PChar('There were problems with some of the plugins:' + #13#10#13#10 + msg),
'Warning', MB_ICONWARNING or MB_OK);
end; end;
end; end;

View File

@ -32,8 +32,8 @@ type
class function GetName: string; override; class function GetName: string; override;
class function GetInstance: TBaseVariation; override; class function GetInstance: TBaseVariation; override;
class function GetNrVariables: integer; override; function GetNrVariables: integer; override;
class function GetVariableNameAt(const Index: integer): string; override; function GetVariableNameAt(const Index: integer): string; override;
function SetVariable(const Name: string; var value: double): boolean; override; function SetVariable(const Name: string; var value: double): boolean; override;
function GetVariable(const Name: string; var value: double): boolean; override; function GetVariable(const Name: string; var value: double): boolean; override;
@ -324,7 +324,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationJulian.GetVariableNameAt(const Index: integer): string; function TVariationJulian.GetVariableNameAt(const Index: integer): string;
begin begin
case Index of case Index of
0: Result := var_n_name; 0: Result := var_n_name;
@ -365,7 +365,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationJulian.GetNrVariables: integer; function TVariationJulian.GetNrVariables: integer;
begin begin
Result := 2; Result := 2;
end; end;

View File

@ -32,8 +32,8 @@ type
class function GetName: string; override; class function GetName: string; override;
class function GetInstance: TBaseVariation; override; class function GetInstance: TBaseVariation; override;
class function GetNrVariables: integer; override; function GetNrVariables: integer; override;
class function GetVariableNameAt(const Index: integer): string; override; function GetVariableNameAt(const Index: integer): string; override;
function SetVariable(const Name: string; var value: double): boolean; override; function SetVariable(const Name: string; var value: double): boolean; override;
function GetVariable(const Name: string; var value: double): boolean; override; function GetVariable(const Name: string; var value: double): boolean; override;
@ -369,7 +369,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationJuliaScope.GetVariableNameAt(const Index: integer): string; function TVariationJuliaScope.GetVariableNameAt(const Index: integer): string;
begin begin
case Index of case Index of
0: Result := var_n_name; 0: Result := var_n_name;
@ -410,7 +410,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationJuliaScope.GetNrVariables: integer; function TVariationJuliaScope.GetNrVariables: integer;
begin begin
Result := 2; Result := 2;
end; end;

View File

@ -25,8 +25,8 @@ type
class function GetName: string; override; class function GetName: string; override;
class function GetInstance: TBaseVariation; override; class function GetInstance: TBaseVariation; override;
class function GetNrVariables: integer; override; function GetNrVariables: integer; override;
class function GetVariableNameAt(const Index: integer): string; override; function GetVariableNameAt(const Index: integer): string; override;
function SetVariable(const Name: string; var value: double): boolean; override; function SetVariable(const Name: string; var value: double): boolean; override;
function GetVariable(const Name: string; var value: double): boolean; override; function GetVariable(const Name: string; var value: double): boolean; override;
@ -131,7 +131,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationPerspective.GetVariableNameAt(const Index: integer): string; function TVariationPerspective.GetVariableNameAt(const Index: integer): string;
begin begin
case Index of case Index of
0: Result := var_a_name; 0: Result := var_a_name;
@ -168,7 +168,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationPerspective.GetNrVariables: integer; function TVariationPerspective.GetNrVariables: integer;
begin begin
Result := 2; Result := 2;
end; end;

View File

@ -29,8 +29,8 @@ type
class function GetName: string; override; class function GetName: string; override;
class function GetInstance: TBaseVariation; override; class function GetInstance: TBaseVariation; override;
class function GetNrVariables: integer; override; function GetNrVariables: integer; override;
class function GetVariableNameAt(const Index: integer): string; override; function GetVariableNameAt(const Index: integer): string; override;
function GetVariable(const Name: string; var value: double): boolean; override; function GetVariable(const Name: string; var value: double): boolean; override;
function SetVariable(const Name: string; var value: double): boolean; override; function SetVariable(const Name: string; var value: double): boolean; override;
@ -275,7 +275,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationRadialBlur.GetVariableNameAt(const Index: integer): string; function TVariationRadialBlur.GetVariableNameAt(const Index: integer): string;
begin begin
case Index of case Index of
0: Result := var_a_name; 0: Result := var_a_name;
@ -314,7 +314,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationRadialBlur.GetNrVariables: integer; function TVariationRadialBlur.GetNrVariables: integer;
begin begin
Result := 1; Result := 1;
end; end;

View File

@ -38,8 +38,8 @@ type
class function GetName: string; override; class function GetName: string; override;
class function GetInstance: TBaseVariation; override; class function GetInstance: TBaseVariation; override;
class function GetNrVariables: integer; override; function GetNrVariables: integer; override;
class function GetVariableNameAt(const Index: integer): string; override; function GetVariableNameAt(const Index: integer): string; override;
function SetVariable(const Name: string; var value: double): boolean; override; function SetVariable(const Name: string; var value: double): boolean; override;
function GetVariable(const Name: string; var value: double): boolean; override; function GetVariable(const Name: string; var value: double): boolean; override;
@ -105,7 +105,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationRectangles.GetVariableNameAt(const Index: integer): string; function TVariationRectangles.GetVariableNameAt(const Index: integer): string;
begin begin
case Index Of case Index Of
0: Result := 'rectangles_x'; 0: Result := 'rectangles_x';
@ -116,7 +116,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationRectangles.GetNrVariables: integer; function TVariationRectangles.GetNrVariables: integer;
begin begin
Result := 2; Result := 2;
end; end;

View File

@ -15,8 +15,8 @@ type
class function GetName: string; override; class function GetName: string; override;
class function GetInstance: TBaseVariation; override; class function GetInstance: TBaseVariation; override;
class function GetNrVariables: integer; override; function GetNrVariables: integer; override;
class function GetVariableNameAt(const Index: integer): string; override; function GetVariableNameAt(const Index: integer): string; override;
function SetVariable(const Name: string; var value: double): boolean; override; function SetVariable(const Name: string; var value: double): boolean; override;
function GetVariable(const Name: string; var value: double): boolean; override; function GetVariable(const Name: string; var value: double): boolean; override;
@ -82,7 +82,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationRings2.GetVariableNameAt(const Index: integer): string; function TVariationRings2.GetVariableNameAt(const Index: integer): string;
begin begin
case Index Of case Index Of
0: Result := 'rings2_val'; 0: Result := 'rings2_val';
@ -102,7 +102,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationRings2.GetNrVariables: integer; function TVariationRings2.GetNrVariables: integer;
begin begin
Result := 1 Result := 1
end; end;

View File

@ -35,8 +35,8 @@ type
class function GetName: string; override; class function GetName: string; override;
class function GetInstance: TBaseVariation; override; class function GetInstance: TBaseVariation; override;
class function GetNrVariables: integer; override; function GetNrVariables: integer; override;
class function GetVariableNameAt(const Index: integer): string; override; function GetVariableNameAt(const Index: integer): string; override;
function SetVariable(const Name: string; var value: double): boolean; override; function SetVariable(const Name: string; var value: double): boolean; override;
function GetVariable(const Name: string; var value: double): boolean; override; function GetVariable(const Name: string; var value: double): boolean; override;
@ -117,7 +117,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationSuperShape.GetVariableNameAt(const Index: integer): string; function TVariationSuperShape.GetVariableNameAt(const Index: integer): string;
begin begin
case Index Of case Index Of
0: Result := 'super_shape_m'; 0: Result := 'super_shape_m';
@ -132,7 +132,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationSuperShape.GetNrVariables: integer; function TVariationSuperShape.GetNrVariables: integer;
begin begin
Result := 6; Result := 6;
end; end;

View File

@ -16,8 +16,8 @@ type
class function GetName: string; override; class function GetName: string; override;
class function GetInstance: TBaseVariation; override; class function GetInstance: TBaseVariation; override;
class function GetNrVariables: integer; override; function GetNrVariables: integer; override;
class function GetVariableNameAt(const Index: integer): string; override; function GetVariableNameAt(const Index: integer): string; override;
function SetVariable(const Name: string; var value: double): boolean; override; function SetVariable(const Name: string; var value: double): boolean; override;
function GetVariable(const Name: string; var value: double): boolean; override; function GetVariable(const Name: string; var value: double): boolean; override;
@ -79,7 +79,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationBlob.GetVariableNameAt(const Index: integer): string; function TVariationBlob.GetVariableNameAt(const Index: integer): string;
begin begin
case Index Of case Index Of
0: Result := 'blob_low'; 0: Result := 'blob_low';
@ -91,7 +91,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationBlob.GetNrVariables: integer; function TVariationBlob.GetNrVariables: integer;
begin begin
Result := 3; Result := 3;
end; end;

View File

@ -17,8 +17,8 @@ type
class function GetName: string; override; class function GetName: string; override;
class function GetInstance: TBaseVariation; override; class function GetInstance: TBaseVariation; override;
class function GetNrVariables: integer; override; function GetNrVariables: integer; override;
class function GetVariableNameAt(const Index: integer): string; override; function GetVariableNameAt(const Index: integer): string; override;
function SetVariable(const Name: string; var value: double): boolean; override; function SetVariable(const Name: string; var value: double): boolean; override;
function GetVariable(const Name: string; var value: double): boolean; override; function GetVariable(const Name: string; var value: double): boolean; override;
@ -92,7 +92,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationPDJ.GetVariableNameAt(const Index: integer): string; function TVariationPDJ.GetVariableNameAt(const Index: integer): string;
begin begin
case Index Of case Index Of
0: Result := 'pdj_a'; 0: Result := 'pdj_a';
@ -124,7 +124,7 @@ begin
end; end;
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class function TVariationPDJ.GetNrVariables: integer; function TVariationPDJ.GetNrVariables: integer;
begin begin
Result := 4 Result := 4
end; end;